/* ============================================================
   OneNet Servers - override.css v12
   Phase 4: cart body/content, billing-cycle toggle, order summary,
   product configure, checkout — full journey continuity
   Primary: #4343f0  Footer bg: #0f0f1a
   ============================================================ */
:root {
  --on-primary: #4343f0;
  --on-primary-dark: #3535c8;
  --on-primary-light: #eeeeff;
  --on-primary-xs: #f5f5ff;
  --on-text: #0f0f1a;
  --on-text-2: #1e1e35;
  --on-muted: #7878a0;
  --on-subtle: #a8a8c8;
  --on-border: #e4e4f0;
  --on-border-l: #f0f0f8;
  --on-white: #ffffff;
  --on-bg-2: #f8f8fd;
  --on-footer-bg: #0f0f1a;
  --on-footer-gradient: radial-gradient(circle at top center, rgb(67 67 240 / 12%), transparent 28%), #0f0f1a;
  --on-indigo: #4343f0;
  --on-indigo-dark: #3535c8;
  --on-indigo-light: #eeeeff;
  --on-radius: 10px;
  --on-nav-h: 64px;
}

body.whmcs-user-loggedin.in-whmcs-default-pages:not(.whmcs-in-cart-pages) .button-style.hx-primary-btn,
body.whmcs-user-loggedin.in-whmcs-default-pages:not(.whmcs-in-cart-pages) button.button-style.hx-primary-btn,
body.whmcs-user-loggedin.in-whmcs-default-pages:not(.whmcs-in-cart-pages) .btn-primary,
body.whmcs-user-loggedin.in-whmcs-default-pages:not(.whmcs-in-cart-pages) .btn.btn-primary {
  border-radius: 12px !important;
  font-weight: 500 !important;
}

/* SUPPRESS HostX CHROME */
header.wgs-new-header-top-latest,
header.wgs-new-header-top-late,
.wgs-new-header-top-latest,
.top-most-header-section,
.mobile-menu-toggle-drop,
.mobile-menu-global-hostx {
  display: none !important;
}

/* ── FIX: zero out HostX sticky-header top compensation ─────────── */
body {
  padding-top: 0 !important;
  margin-top: 0 !important;
}
section.hostx-pages-sections,
section#main-body,
.hostx-pages-section,
.main-body-section {
  margin-top: 0 !important;
  padding-top: 0 !important;
}
/* HostX adds padding-top on sticky header body class */
body.header-is-sticky,
body.header-is-sticky section.hostx-pages-sections,
body.header-is-sticky section#main-body {
  padding-top: 0 !important;
  margin-top: 0 !important;
}

/* ── PAGE BANNERS + BREADCRUMB — main-site gradient across all pages ─ */
/* Cart / shopping pages — HostX uses .shoping-cart-background (sic) */
.shoping-cart-background,
.shoping-cart-background.cart-product-list,
.shoping-cart-background.cart-product-configure,
.shoping-cart-background.cart-view-cart,
.shoping-cart-background.cart-checkout-cart,
.shoping-cart-background.cart-complete-cart,
/* Core page banner used on web hosting, domain, VPS, SSL, cart, etc. */
.banner.p-vertical,
.banner.p-vertical[class*="banner-page-"],
/* Breadcrumb nav bar (inner pages) */
.master-breadcrumb,
nav.master-breadcrumb,
.hostx-bread-crumb-data,
nav.hostx-bread-crumb-data,
/* Domain page banners */
.register-domain-banner,
.register-domain-banner2,
.term-domain_banner,
/* About / contact / TOS page banners */
.cpanel_banner.about-us-banner,
.about-us-banner,
/* Store / market-connect page heroes */
.hero.sitebuilder-banner,
.hero.nordvpn-banner,
.hero.ssl-banner,
.heros.sitebuilder-banner,
/* Business / other banner variants */
.hx-business-banner,
.new_hx-banner,
.new_hx-business-banner,
/* Offers / promo banners */
.offers-banner,
.video-banner,
/* Generic fall-back for any remaining banner */
div.banner,
.page-title-area,
.inner-banner,
.hostx-breadcrumb-area,
.breadcrumb-area {
  background: linear-gradient(
    180deg,
    #9090f5 0%,
    #b8b8f8 28%,
    #d8d8fd 52%,
    #eeeeff 72%,
    #ffffff 100%
  ) !important;
  background-image: none !important;
  background-color: transparent !important;
  background-attachment: scroll !important;
  box-shadow: none !important;
}

/* Breadcrumb-specific padding — desktop */
.master-breadcrumb,
.hostx-bread-crumb-data {
  border-bottom: 1px solid rgba(104,104,243,0.1) !important;
  padding: 20px 0 16px !important;
}

/* .shoping-cart-background is an EMPTY div — needs explicit height or it collapses */
.shoping-cart-background {
  height: 140px !important;
  min-height: 140px !important;
  padding: 0 !important;
}

/* ── MOBILE — compact breadcrumb / banner ───────────────────────── */
@media (max-width: 767px) {
  /* Reapply gradient on mobile (in case hostx-responsive overwrites it) */
  .shoping-cart-background,
  .shoping-cart-background.cart-product-list,
  .shoping-cart-background.cart-product-configure,
  .shoping-cart-background.cart-view-cart,
  .shoping-cart-background.cart-checkout-cart,
  .shoping-cart-background.cart-complete-cart {
    background: linear-gradient(
      180deg,
      #9090f5 0%,
      #b8b8f8 28%,
      #d8d8fd 52%,
      #eeeeff 72%,
      #ffffff 100%
    ) !important;
    background-image: none !important;
    background-color: transparent !important;
    height: 80px !important;
    min-height: 80px !important;
  }
  /* Banner sections that have content inside — keep padding, just reduce it */
  .banner.p-vertical,
  .register-domain-banner,
  .register-domain-banner2,
  .hero.sitebuilder-banner,
  .hx-business-banner,
  .new_hx-banner,
  .cpanel_banner.about-us-banner {
    background: linear-gradient(
      180deg,
      #9090f5 0%,
      #b8b8f8 28%,
      #d8d8fd 52%,
      #eeeeff 72%,
      #ffffff 100%
    ) !important;
    background-image: none !important;
    background-color: transparent !important;
    padding-top: 36px !important;
    padding-bottom: 32px !important;
  }
  /* Mobile breadcrumb */
  .master-breadcrumb,
  .hostx-bread-crumb-data {
    padding: 12px 0 10px !important;
  }
  /* Mobile text — dark, no white contrast */
  .shoping-cart-background *,
  .banner.p-vertical *,
  .master-breadcrumb *,
  .hostx-bread-crumb-data * {
    color: var(--on-text) !important;
    text-shadow: none !important;
  }
  /* Breadcrumb font size */
  .master-breadcrumb .breadcrumb,
  .hostx-bread-crumb-data .breadcrumb {
    font-size: 13px !important;
    flex-wrap: wrap !important;
  }
  /* Banner headings — smaller on mobile */
  .banner.p-vertical h1,
  .register-domain-banner h1 {
    font-size: 22px !important;
    line-height: 1.25 !important;
    margin-bottom: 8px !important;
  }
}

/* Kill pseudo-element overlays used by HostX over banners */
.banner::before,
.banner::after,
.banner.p-vertical::before,
.banner.p-vertical::after,
.hostx-bread-crumb-data::before,
.hostx-bread-crumb-data::after,
.register-domain-banner::before,
.register-domain-banner::after,
.hero.sitebuilder-banner::before,
.hero.sitebuilder-banner::after,
.breadcrumb-area::before,
.breadcrumb-area::after {
  display: none !important;
  background: none !important;
}

/* All text inside any banner → dark ink / theme-blue, no contrasting white */
.shoping-cart-background *,
.banner.p-vertical *,
.master-breadcrumb *,
.hostx-bread-crumb-data *,
.register-domain-banner *,
.hero.sitebuilder-banner *,
.hx-business-banner *,
.new_hx-banner *,
.cpanel_banner * {
  color: var(--on-text) !important;
  text-shadow: none !important;
}

/* Links and accents inside banners → theme blue */
.banner.p-vertical a,
.master-breadcrumb a,
.hostx-bread-crumb-data a,
.register-domain-banner a,
.hero.sitebuilder-banner a {
  color: var(--on-primary) !important;
}
.banner.p-vertical a:hover,
.master-breadcrumb a:hover,
.hostx-bread-crumb-data a:hover {
  color: var(--on-primary-dark) !important;
}

/* Breadcrumb active item → muted */
.master-breadcrumb .breadcrumb-item.active,
.hostx-bread-crumb-data .breadcrumb-item.active,
.breadcrumb-item.active {
  color: var(--on-muted) !important;
}

/* Headings inside banners → ink */
.banner.p-vertical h1,
.banner.p-vertical h2,
.banner.p-vertical h3,
.banner.p-vertical h4,
.register-domain-banner h1,
.register-domain-banner h2,
.hero.sitebuilder-banner h1,
.hero.sitebuilder-banner h2 {
  color: var(--on-text) !important;
}

/* Keep CTA buttons inside banners styled properly — override text: inherit */
.banner.p-vertical .btn-primary,
.banner.p-vertical .hx-primary-btn,
.register-domain-banner .btn-primary,
.hero.sitebuilder-banner .btn-primary {
  color: #ffffff !important;
}

/* ── GLOBAL BUTTONS — pill shape matching main site ─────────────── */
/* All buttons get pill shape and proper padding */
.btn,
a.btn,
button.btn,
.btn-primary,
.btn-secondary,
.btn-default,
.btn-success,
.btn-info,
.btn-warning,
.btn-danger,
.btn-link,
.button,
input[type="submit"],
input[type="button"],
.hostx-btn,
.hx-btn,
.order-btn,
.order-button,
.add-to-cart,
.checkout-btn,
.hostx-submit-btn,
.whmcs-btn,
.register-btn,
.domain-btn {
  border-radius: 9999px !important;
  min-height: 42px !important;
  padding: 0 20px !important;
  font-weight: 500 !important;
  font-size: 14px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  line-height: 1 !important;
  transition: background 0.15s ease, border-color 0.15s ease, box-shadow 0.15s ease !important;
  cursor: pointer !important;
  text-decoration: none !important;
  white-space: nowrap !important;
  border: 1.5px solid transparent !important;
}

/* Primary button — blue gradient like main site */
.btn-primary,
a.btn-primary,
button.btn-primary,
input[type="submit"].btn-primary,
.hx-primary-btn,
.hostx-btn-primary,
.order-btn,
.order-button,
.register-btn {
  background: linear-gradient(135deg, #4343f0 0%, #6868f3 100%) !important;
  border-color: #4343f0 !important;
  color: #ffffff !important;
  box-shadow: 0 4px 16px rgba(67,67,240,0.18) !important;
}
.btn-primary:hover,
a.btn-primary:hover,
button.btn-primary:hover,
.hx-primary-btn:hover,
.hostx-btn-primary:hover,
.order-btn:hover {
  background: linear-gradient(135deg, #3535c8 0%, #4343f0 100%) !important;
  border-color: #3535c8 !important;
  color: #ffffff !important;
  box-shadow: 0 6px 20px rgba(67,67,240,0.25) !important;
}

/* Secondary / ghost button */
.btn-default,
.btn-secondary,
a.btn-default,
button.btn-default,
.btn-outline-primary,
.hostx-btn-outline {
  background: transparent !important;
  border-color: var(--on-border) !important;
  color: var(--on-text) !important;
  box-shadow: none !important;
}
.btn-default:hover,
.btn-secondary:hover,
.btn-outline-primary:hover {
  background: var(--on-primary-light) !important;
  border-color: var(--on-primary) !important;
  color: var(--on-primary) !important;
}

/* Success (used on checkout) */
.btn-success {
  background: linear-gradient(135deg, #4343f0 0%, #6868f3 100%) !important;
  border-color: #4343f0 !important;
  color: #ffffff !important;
}
.btn-success:hover {
  background: linear-gradient(135deg, #3535c8 0%, #4343f0 100%) !important;
  border-color: #3535c8 !important;
}

/* ── DOMAIN SEARCH BAR ──────────────────────────────────────────── */
.domain-search-area,
.domain-checker-wrap,
.domain-search-form,
.domainchecker-form,
#domain-search,
.domain-search,
.hostx-domain-search {
  background: #ffffff !important;
  border: 1.5px solid var(--on-border) !important;
  border-radius: 9999px !important;
  box-shadow: 0 4px 24px rgba(67,67,240,0.08) !important;
  padding: 6px 6px 6px 20px !important;
  display: flex !important;
  align-items: center !important;
  gap: 0 !important;
  max-width: 640px !important;
  margin: 0 auto !important;
}
/* Domain search input */
.domain-search-area input[type="text"],
.domain-checker-wrap input[type="text"],
.domainchecker-form input[type="text"],
#domain-search input[type="text"],
.domain-search input[type="text"],
.hostx-domain-search input[type="text"],
input#query, input.query,
input[name="sld"], input[name="domain"] {
  flex: 1 !important;
  border: none !important;
  outline: none !important;
  background: transparent !important;
  font-size: 15px !important;
  color: var(--on-text) !important;
  padding: 10px 0 !important;
  min-width: 0 !important;
  box-shadow: none !important;
  border-radius: 0 !important;
}
/* Domain search TLD select */
.domain-search-area select,
.domainchecker-form select,
.domain-search select,
select#tld {
  border: none !important;
  border-left: 1.5px solid var(--on-border) !important;
  border-radius: 0 !important;
  background: transparent !important;
  padding: 8px 12px !important;
  color: var(--on-text) !important;
  font-size: 14px !important;
  outline: none !important;
  box-shadow: none !important;
}
/* Domain search submit button */
.domain-search-area input[type="submit"],
.domain-search-area button[type="submit"],
.domainchecker-form input[type="submit"],
.domainchecker-form button[type="submit"],
.domain-search button[type="submit"],
.domain-search-btn,
.hx-domain-btn {
  border-radius: 9999px !important;
  background: linear-gradient(135deg, #4343f0 0%, #6868f3 100%) !important;
  color: #ffffff !important;
  border: none !important;
  padding: 10px 24px !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  cursor: pointer !important;
  white-space: nowrap !important;
  min-height: 40px !important;
  display: inline-flex !important;
  align-items: center !important;
  flex-shrink: 0 !important;
  box-shadow: none !important;
}

/* HEADER */
.onenet-header {
  position: sticky !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  width: 100% !important;
  height: var(--on-nav-h) !important;
  background: var(--on-white) !important;
  border-bottom: 1px solid var(--on-border) !important;
  z-index: 1000 !important;
  transition: box-shadow 0.2s ease !important;
}
.onenet-header.onenet-sticky { box-shadow: 0 2px 16px rgba(0,0,0,0.08) !important; }
.onenet-nav { height: 100% !important; }
.onenet-nav-inner {
  display: flex !important;
  align-items: center !important;
  height: 100% !important;
  max-width: 1280px !important;
  margin: 0 auto !important;
  padding: 0 24px !important;
  gap: 32px !important;
}

/* LOGO — icon only, no brand name text */
.onenet-logo { flex-shrink: 0 !important; display: inline-flex !important; align-items: center !important; text-decoration: none !important; }
.onenet-logo img { height: 32px !important; width: 32px !important; display: block !important; flex-shrink: 0 !important; }
.onenet-brand-name { display: none !important; }
.onenet-mobile-logo { display: inline-flex !important; align-items: center !important; text-decoration: none !important; }
.onenet-mobile-logo img { width: 28px !important; height: 28px !important; flex-shrink: 0 !important; display: block !important; }

/* NAV LIST */
.onenet-nav-list {
  display: flex !important;
  align-items: center !important;
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
  gap: 4px !important;
  flex: 1 !important;
}
.onenet-nav-list > li { position: relative !important; }

/* NAV TRIGGERS */
.onenet-trigger {
  display: flex !important;
  align-items: center !important;
  gap: 5px !important;
  padding: 8px 12px !important;
  background: none !important;
  border: none !important;
  border-radius: 8px !important;
  font-size: 14px !important;
  font-weight: 500 !important;
  color: var(--on-text) !important;
  cursor: pointer !important;
  white-space: nowrap !important;
  transition: background 0.15s, color 0.15s !important;
  line-height: 1 !important;
}
.onenet-trigger:hover,
.onenet-has-dropdown.onenet-open .onenet-trigger {
  background: var(--on-primary-light) !important;
  color: var(--on-primary) !important;
}
.onenet-chevron { transition: transform 0.2s ease !important; }
.onenet-has-dropdown.onenet-open .onenet-trigger .onenet-chevron { transform: rotate(180deg) !important; }

/* DROPDOWN */
.onenet-dropdown {
  display: none !important;
  position: absolute !important;
  top: calc(100% + 8px) !important;
  left: 50% !important;
  transform: translateX(-50%) !important;
  min-width: 280px !important;
  background: var(--on-white) !important;
  border: 1px solid var(--on-border) !important;
  border-radius: var(--on-radius) !important;
  box-shadow: 0 8px 32px rgba(0,0,0,0.12) !important;
  padding: 8px !important;
  z-index: 1100 !important;
}
.onenet-has-dropdown.onenet-open .onenet-dropdown { display: block !important; }

/* DROPDOWN ITEMS */
.onenet-dd-item {
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
  padding: 10px 12px !important;
  border-radius: 8px !important;
  text-decoration: none !important;
  color: var(--on-text) !important;
  transition: background 0.15s !important;
}
.onenet-dd-item:hover { background: var(--on-primary-light) !important; text-decoration: none !important; }
.onenet-dd-icon {
  flex-shrink: 0 !important;
  width: 36px !important;
  height: 36px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: var(--on-primary-light) !important;
  border-radius: 8px !important;
  color: var(--on-primary) !important;
}
.onenet-dd-text { display: flex !important; flex-direction: column !important; gap: 2px !important; }
.onenet-dd-text strong { font-size: 14px !important; font-weight: 600 !important; color: var(--on-text) !important; display: flex !important; align-items: center !important; gap: 6px !important; }
.onenet-dd-text em { font-size: 12px !important; font-style: normal !important; color: var(--on-muted) !important; }
.onenet-dd-disabled { opacity: 0.5 !important; pointer-events: none !important; cursor: not-allowed !important; }
.onenet-coming-soon { font-size: 10px !important; font-weight: 600 !important; background: #fef3c7 !important; color: #92400e !important; padding: 2px 6px !important; border-radius: 9999px !important; text-transform: uppercase !important; letter-spacing: 0.05em !important; }

/* RIGHT ACTIONS */
.right-sec,
.onenet-right-actions {
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
  margin-left: auto !important;
  max-width: none !important;
  width: auto !important;
  flex-shrink: 0 !important;
}

/* CURRENCY PILL */
.onenet-currency-wrap { position: relative !important; }
.onenet-currency-pill {
  display: flex !important;
  align-items: center !important;
  gap: 5px !important;
  padding: 7px 12px !important;
  background: transparent !important;
  border: 1.5px solid var(--on-border) !important;
  border-radius: 9999px !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  color: var(--on-text) !important;
  cursor: pointer !important;
  transition: background 0.15s, border-color 0.15s !important;
  white-space: nowrap !important;
  line-height: 1 !important;
}
.onenet-currency-pill:hover { background: var(--on-primary-light) !important; border-color: var(--on-primary) !important; color: var(--on-primary) !important; }
.onenet-currency-dropdown {
  display: none !important;
  position: absolute !important;
  top: calc(100% + 6px) !important;
  right: 0 !important;
  min-width: 180px !important;
  background: var(--on-white) !important;
  border: 1px solid var(--on-border) !important;
  border-radius: var(--on-radius) !important;
  box-shadow: 0 8px 24px rgba(0,0,0,0.12) !important;
  padding: 6px !important;
  z-index: 1200 !important;
}
.onenet-currency-dropdown.onenet-open { display: block !important; }
.onenet-currency-opt { display: block !important; padding: 8px 12px !important; border-radius: 6px !important; font-size: 13px !important; font-weight: 500 !important; color: var(--on-text) !important; text-decoration: none !important; transition: background 0.15s !important; }
.onenet-currency-opt:hover { background: var(--on-primary-light) !important; color: var(--on-primary) !important; }

/* CART */
.onenet-cart-icon-btn {
  position: relative !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 38px !important;
  height: 38px !important;
  border-radius: 9999px !important;
  border: 1.5px solid var(--on-border) !important;
  background: transparent !important;
  color: var(--on-text) !important;
  text-decoration: none !important;
  transition: background 0.15s, border-color 0.15s !important;
  flex-shrink: 0 !important;
}
.onenet-cart-icon-btn:hover { background: var(--on-primary-light) !important; border-color: var(--on-primary) !important; color: var(--on-primary) !important; }
.onenet-cart-count { position: absolute !important; top: -4px !important; right: -4px !important; min-width: 16px !important; height: 16px !important; background: var(--on-primary) !important; color: var(--on-white) !important; font-size: 9px !important; font-weight: 700 !important; border-radius: 9999px !important; display: flex !important; align-items: center !important; justify-content: center !important; padding: 0 3px !important; }

/* LOGIN PILL — vertically centred */
.onenet-login-pill {
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
  padding: 0 16px !important;
  height: 36px !important;
  border: 1.5px solid var(--on-border) !important;
  border-radius: 9999px !important;
  background: transparent !important;
  font-size: 14px !important;
  font-weight: 500 !important;
  color: var(--on-text) !important;
  text-decoration: none !important;
  white-space: nowrap !important;
  line-height: 1 !important;
  vertical-align: middle !important;
  transition: background 0.15s, border-color 0.15s, color 0.15s !important;
}
.onenet-login-pill:hover { background: var(--on-primary-light) !important; border-color: var(--on-primary) !important; color: var(--on-primary) !important; text-decoration: none !important; }

/* GET STARTED */
.onenet-getstarted-pill {
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
  padding: 0 18px !important;
  height: 36px !important;
  background: var(--on-primary) !important;
  border: 1.5px solid var(--on-primary) !important;
  border-radius: 9999px !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  color: var(--on-white) !important;
  text-decoration: none !important;
  white-space: nowrap !important;
  line-height: 1 !important;
  vertical-align: middle !important;
  transition: background 0.15s !important;
}
.onenet-getstarted-pill:hover { background: var(--on-primary-dark) !important; border-color: var(--on-primary-dark) !important; color: var(--on-white) !important; text-decoration: none !important; }

/* MOBILE HAMBURGER */
.onenet-mobile-toggle {
  display: none !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 5px !important;
  width: 38px !important;
  height: 38px !important;
  background: transparent !important;
  border: 1.5px solid var(--on-border) !important;
  border-radius: 8px !important;
  cursor: pointer !important;
  padding: 0 !important;
  flex-shrink: 0 !important;
}
.onenet-bar { display: block !important; width: 18px !important; height: 2px !important; background: var(--on-text) !important; border-radius: 2px !important; }

/* OVERLAY */
.onenet-mobile-overlay {
  display: none !important;
  position: fixed !important;
  inset: 0 !important;
  background: rgba(0,0,0,0.45) !important;
  z-index: 2000 !important;
}
body.onenet-mobile-open .onenet-mobile-overlay { display: block !important; }

/* MOBILE SHEET */
.onenet-mobile-sheet {
  position: fixed !important;
  top: 0 !important;
  right: 0 !important;
  left: auto !important;
  bottom: 0 !important;
  width: min(360px, 100vw) !important;
  background: var(--on-white) !important;
  z-index: 2100 !important;
  overflow-y: auto !important;
  overflow-x: hidden !important;
  display: flex !important;
  flex-direction: column !important;
  transform: translateX(100%) !important;
  transition: transform 0.3s cubic-bezier(0.4,0,0.2,1) !important;
  box-shadow: -8px 0 32px rgba(0,0,0,0.15) !important;
}
body.onenet-mobile-open .onenet-mobile-sheet { transform: translateX(0) !important; }

/* MOBILE HEADER */
.onenet-mobile-head { display: flex !important; align-items: center !important; justify-content: space-between !important; padding: 16px 20px !important; border-bottom: 1px solid var(--on-border) !important; flex-shrink: 0 !important; }
.onenet-mobile-logo img { height: 32px !important; width: auto !important; }
.onenet-mobile-close { display: flex !important; align-items: center !important; justify-content: center !important; width: 32px !important; height: 32px !important; background: var(--on-primary-light) !important; border: none !important; border-radius: 8px !important; cursor: pointer !important; color: var(--on-primary) !important; flex-shrink: 0 !important; }

/* MOBILE QUICK ACTIONS */
.onenet-mobile-quick { display: flex !important; gap: 8px !important; padding: 16px 20px 8px !important; flex-shrink: 0 !important; }
.onenet-mobile-cta {
  display: flex !important;
  align-items: center !important;
  gap: 6px !important;
  flex: 1 !important;
  padding: 9px 12px !important;
  border-radius: 9999px !important;
  font-size: 13px !important;
  font-weight: 500 !important;
  text-decoration: none !important;
  justify-content: center !important;
  border: 1.5px solid var(--on-border) !important;
  color: var(--on-text) !important;
  background: transparent !important;
  line-height: 1 !important;
}
.onenet-mobile-cta svg, .onenet-mobile-cta i { width: 16px !important; height: 16px !important; flex-shrink: 0 !important; }
.onenet-mobile-cta:hover { text-decoration: none !important; }
.onenet-cta-wa { background: #25d366 !important; border-color: #25d366 !important; color: var(--on-white) !important; }
.onenet-cta-wa:hover { background: #1da851 !important; border-color: #1da851 !important; color: var(--on-white) !important; }
.onenet-cta-wa svg, .onenet-cta-wa i { color: var(--on-white) !important; }

/* MOBILE PHONES */
.onenet-mobile-phones {
  display: flex !important;
  flex-direction: column !important;
  gap: 6px !important;
  padding: 10px 20px 14px !important;
  border-bottom: 1px solid var(--on-border) !important;
  flex-shrink: 0 !important;
}
.onenet-mobile-phone {
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
  font-size: 13px !important;
  font-weight: 500 !important;
  color: var(--on-text) !important;
  text-decoration: none !important;
  line-height: 1.4 !important;
}
.onenet-mobile-phone svg, .onenet-mobile-phone i { width: 14px !important; height: 14px !important; flex-shrink: 0 !important; color: var(--on-primary) !important; }
.onenet-mobile-phone:hover { color: var(--on-primary) !important; text-decoration: none !important; }

/* MOBILE ACCORDION */
.onenet-mobile-nav { flex: 1 !important; overflow-y: auto !important; padding: 8px 0 !important; }
.onenet-mob-group { border-bottom: 1px solid var(--on-border) !important; }
.onenet-mob-trigger { display: flex !important; align-items: center !important; justify-content: space-between !important; width: 100% !important; padding: 14px 20px !important; background: none !important; border: none !important; font-size: 15px !important; font-weight: 500 !important; color: var(--on-text) !important; cursor: pointer !important; text-align: left !important; }
.onenet-mob-chevron { flex-shrink: 0 !important; transition: transform 0.2s ease !important; color: var(--on-muted) !important; }
.onenet-mob-group.onenet-mob-open .onenet-mob-chevron { transform: rotate(180deg) !important; }
.onenet-mob-panel { display: none !important; padding: 0 0 8px !important; transform: none !important; visibility: visible !important; opacity: 1 !important; position: static !important; }
.onenet-mob-group.onenet-mob-open .onenet-mob-panel { display: block !important; }
.onenet-mob-link { display: block !important; padding: 9px 20px 9px 36px !important; font-size: 14px !important; color: var(--on-muted) !important; text-decoration: none !important; transition: color 0.15s, background 0.15s !important; }
.onenet-mob-link:hover { color: var(--on-primary) !important; background: var(--on-primary-light) !important; text-decoration: none !important; }
.onenet-mob-disabled { opacity: 0.5 !important; pointer-events: none !important; cursor: not-allowed !important; }

/* MOBILE AUXILIARY PICKERS */
.onenet-mob-aux {
  border-top: 1px solid var(--on-border) !important;
  flex-shrink: 0 !important;
}
.onenet-mob-aux-trigger {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  width: 100% !important;
  padding: 16px 20px !important;
  background: none !important;
  border: none !important;
  color: var(--on-text) !important;
  text-align: left !important;
}
.onenet-mob-aux-copy {
  display: flex !important;
  flex-direction: column !important;
  gap: 3px !important;
}
.onenet-mob-aux-copy strong {
  display: block !important;
  font-size: 10px !important;
  font-weight: 700 !important;
  letter-spacing: 0.1em !important;
  color: var(--on-muted) !important;
  text-transform: uppercase !important;
}
.onenet-mob-aux-copy em {
  display: block !important;
  font-style: normal !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  color: var(--on-text) !important;
}
.onenet-mob-aux-chevron {
  flex-shrink: 0 !important;
  color: var(--on-muted) !important;
  transition: transform 0.2s ease !important;
}
.onenet-mob-aux-panel {
  display: none !important;
  padding: 0 20px 16px !important;
}
.onenet-mob-aux-open .onenet-mob-aux-chevron {
  transform: rotate(180deg) !important;
}
.onenet-mob-aux-open .onenet-mob-aux-panel {
  display: block !important;
}

/* MOBILE CURRENCY PILLS */
.onenet-mob-currency { padding: 16px 20px !important; border-top: 1px solid var(--on-border) !important; flex-shrink: 0 !important; }
.onenet-mob-currency-label { display: block !important; font-size: 10px !important; font-weight: 700 !important; letter-spacing: 0.1em !important; color: var(--on-muted) !important; margin-bottom: 8px !important; text-transform: uppercase !important; }
.onenet-mob-currency-pills { display: flex !important; flex-wrap: wrap !important; gap: 6px !important; }
.onenet-mob-curr-pill { padding: 5px 12px !important; border-radius: 9999px !important; border: 1.5px solid var(--on-border) !important; font-size: 13px !important; font-weight: 500 !important; color: var(--on-text) !important; text-decoration: none !important; background: var(--on-white) !important; }
.onenet-mob-curr-pill:hover { border-color: var(--on-primary) !important; color: var(--on-primary) !important; background: var(--on-primary-light) !important; }
.onenet-mob-curr-pill.onenet-mob-curr-active { border-color: var(--on-primary) !important; background: var(--on-primary) !important; color: var(--on-white) !important; }
.onenet-mob-aux--language .onenet-mob-currency-pills {
  max-height: 184px !important;
  overflow-y: auto !important;
  padding-right: 4px !important;
}

/* MOBILE CTAs */
.onenet-mob-ctas { display: flex !important; flex-direction: column !important; gap: 8px !important; padding: 16px 20px !important; flex-shrink: 0 !important; }
.onenet-mob-login { display: flex !important; align-items: center !important; justify-content: center !important; padding: 12px !important; border: 1.5px solid var(--on-border) !important; border-radius: 9999px !important; font-size: 14px !important; font-weight: 500 !important; color: var(--on-text) !important; text-decoration: none !important; }
.onenet-mob-login:hover { border-color: var(--on-primary) !important; color: var(--on-primary) !important; }
.onenet-mob-getstarted { display: flex !important; align-items: center !important; justify-content: center !important; padding: 12px !important; background: var(--on-primary) !important; border: 1.5px solid var(--on-primary) !important; border-radius: 9999px !important; font-size: 14px !important; font-weight: 600 !important; color: var(--on-white) !important; text-decoration: none !important; }
.onenet-mob-getstarted:hover { background: var(--on-primary-dark) !important; border-color: var(--on-primary-dark) !important; }

/* RESPONSIVE */
@media (max-width: 1024px) {
  .onenet-nav-list { display: none !important; }
  .onenet-login-pill,
  .onenet-getstarted-pill,
  .onenet-currency-wrap { display: none !important; }
  .onenet-cart-icon-btn { display: flex !important; }
  .onenet-mobile-toggle { display: flex !important; }
}
@media (min-width: 1025px) {
  .onenet-mobile-toggle { display: none !important; }
  .onenet-mobile-overlay,
  .onenet-mobile-sheet { display: none !important; }
  body.onenet-mobile-open .onenet-mobile-overlay,
  body.onenet-mobile-open .onenet-mobile-sheet { display: none !important; }
}

/* Prevent HostX nav bleed into mobile sheet */
.onenet-mobile-sheet ul.nav__sub,
.onenet-mobile-sheet .drop-default-mega-menu-mobile,
.onenet-mobile-sheet .nav__sub { display: none !important; transform: none !important; visibility: hidden !important; }

html, body { overflow-x: hidden !important; }

/* HIDE CUSTOM HEADER only inside the logged-in client area shell */
body.whmcs-user-loggedin.in-whmcs-default-pages:not(.whmcs-in-cart-pages) .onenet-header,
body.whmcs-user-loggedin.in-whmcs-default-pages:not(.whmcs-in-cart-pages) .onenet-mobile-overlay,
body.whmcs-user-loggedin.in-whmcs-default-pages:not(.whmcs-in-cart-pages) .onenet-mobile-sheet { display: none !important; }

/* ============================================================
   FOOTER — match main site dark footer (#0f0f1a + blue glow)
   ============================================================ */
.wgs-footer-section,
.footer-main-section,
.hostx-footer-area,
footer.site-footer,
.footer-area {
  background: var(--on-footer-gradient) !important;
  color: #e4e4f0 !important;
}
.wgs-footer-section a,
.footer-main-section a,
.hostx-footer-area a,
footer.site-footer a,
.footer-area a { color: #a8a8c8 !important; text-decoration: none !important; }
.wgs-footer-section a:hover,
.footer-main-section a:hover,
.hostx-footer-area a:hover,
footer.site-footer a:hover,
.footer-area a:hover { color: #ffffff !important; }
.footer-title, .footer-widget-title, .footer-heading { color: #ffffff !important; }
.footer-bottom, .footer-copyright, .wgs-footer-bottom {
  background: rgba(0,0,0,0.3) !important;
  border-top: 1px solid rgba(255,255,255,0.08) !important;
  color: #7878a0 !important;
}

/* ============================================================
   BRAND COLOR — replace HostX orange with #4343f0
   ============================================================ */
.btn-primary, .button-primary, .hx-primary-btn, .hostx-btn-primary, a.btn-primary, button.btn-primary {
  background-color: var(--on-primary) !important;
  border-color: var(--on-primary) !important;
  color: var(--on-white) !important;
}
.btn-primary:hover, .button-primary:hover, .hx-primary-btn:hover, .hostx-btn-primary:hover {
  background-color: var(--on-primary-dark) !important;
  border-color: var(--on-primary-dark) !important;
}
.btn-outline-primary, .hostx-btn-outline { border-color: var(--on-primary) !important; color: var(--on-primary) !important; background: transparent !important; }
.btn-outline-primary:hover, .hostx-btn-outline:hover { background-color: var(--on-primary) !important; color: var(--on-white) !important; }
.price-color, .hostx-price, .text-primary, .color-primary { color: var(--on-primary) !important; }
.plan-popular, .plan-badge, .hostx-popular-badge { background: var(--on-primary) !important; color: var(--on-white) !important; border-color: var(--on-primary) !important; }

/* ============================================================
   DROPDOWN BRIDGE — fills 8px gap so hover doesn't snap closed
   ============================================================ */
.onenet-dd-bridge {
  position: absolute !important;
  top: 100% !important;
  left: -12px !important;
  right: -12px !important;
  height: 10px !important;
  z-index: 1099 !important;
  display: none !important;
}
.onenet-has-dropdown.onenet-open .onenet-dd-bridge { display: block !important; }

/* ============================================================
   LANGUAGE PILL — same style as currency pill
   ============================================================ */
.onenet-lang-wrap { position: relative !important; }
.onenet-lang-pill {
  display: flex !important;
  align-items: center !important;
  gap: 5px !important;
  padding: 7px 12px !important;
  background: transparent !important;
  border: 1.5px solid var(--on-border) !important;
  border-radius: 9999px !important;
  font-size: 13px !important;
  font-weight: 500 !important;
  color: var(--on-text) !important;
  cursor: pointer !important;
  transition: background 0.15s, border-color 0.15s !important;
  white-space: nowrap !important;
  line-height: 1 !important;
}
.onenet-lang-pill:hover { background: var(--on-primary-light) !important; border-color: var(--on-primary) !important; color: var(--on-primary) !important; }
.onenet-lang-dropdown {
  display: none !important;
  position: absolute !important;
  top: calc(100% + 6px) !important;
  right: 0 !important;
  min-width: 160px !important;
  background: var(--on-white) !important;
  border: 1px solid var(--on-border) !important;
  border-radius: var(--on-radius) !important;
  box-shadow: 0 8px 24px rgba(0,0,0,0.12) !important;
  padding: 6px !important;
  z-index: 1200 !important;
}
.onenet-lang-dropdown.onenet-open { display: block !important; }

/* ============================================================
   PHASE 3 — PRICING CARDS
   Compact, clean — matching main site design
   ============================================================ */

/* Card wrapper — comprehensive HostX class targeting */
.wgs-price-plan-wrap, .price-plan-wrapper, .hostx-price-card,
.price-table-wrap, .plan-col, .pricing-plan,
.price-box, .plan-box, .wgs-price-plan,
.price-plan-item, .plan-item, .package-box,
.price-plan-box, .hostx-plan-card, .plan-wrap {
  position: relative !important;
  border: 1px solid var(--on-border) !important;
  border-radius: 16px !important;
  background: var(--on-white) !important;
  padding: 28px !important;
  transition: box-shadow 0.2s ease, transform 0.2s ease, border-color 0.2s ease !important;
  box-shadow: 0 1px 3px rgba(0,0,0,0.06), 0 1px 2px rgba(0,0,0,0.04) !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 0 !important;
}
.wgs-price-plan-wrap:hover, .price-plan-wrapper:hover, .hostx-price-card:hover,
.price-table-wrap:hover, .plan-col:hover, .pricing-plan:hover,
.price-box:hover, .plan-box:hover {
  box-shadow: 0 8px 32px rgba(67,67,240,0.10) !important;
  transform: translateY(-2px) !important;
  border-color: rgba(67,67,240,0.2) !important;
}

/* Popular/featured card */
.wgs-price-plan-wrap.plan-popular-wrapper, .price-plan-wrapper.featured,
.hostx-price-card.popular, .plan-col.most-popular {
  border-color: var(--on-primary) !important;
  background: var(--on-primary-xs) !important;
}

/* Plan name */
.plan-name, .price-plan-name, .package-name, .wgs-plan-title {
  font-size: 20px !important;
  font-weight: 700 !important;
  color: var(--on-text) !important;
  margin: 0 0 2px !important;
  line-height: 1.2 !important;
}

/* Plan tagline */
.plan-tagline, .price-plan-tagline, .package-tagline, .plan-subtitle {
  font-size: 13px !important;
  color: var(--on-muted) !important;
  margin: 0 0 16px !important;
}

/* Price */
.plan-price, .price-amount, .wgs-plan-price, .package-price {
  display: flex !important;
  align-items: baseline !important;
  gap: 4px !important;
  margin: 0 0 4px !important;
}
.plan-price .price, .price-amount .amount, .wgs-plan-price .price,
.hx-price-num { font-size: 28px !important; font-weight: 800 !important; color: var(--on-text) !important; line-height: 1 !important; }
.plan-price .per, .price-amount .period, .price-period,
.hx-price-cycle { font-size: 13px !important; font-weight: 400 !important; color: var(--on-muted) !important; }

/* Renewal note */
.plan-renew, .price-renews, .renew-note { font-size: 12px !important; color: var(--on-muted) !important; margin: 0 0 16px !important; }

/* Feature list — compact, no excessive gap */
.plan-features, .price-features, .wgs-features, .package-features,
.feature-list, .features-list, .plan-feature-list {
  list-style: none !important;
  margin: 0 0 20px !important;
  padding: 0 !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 8px !important;
}
.plan-features li, .price-features li, .wgs-features li, .package-features li,
.feature-list li, .features-list li, .plan-feature-list li {
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
  font-size: 13.5px !important;
  color: var(--on-text-2) !important;
  line-height: 1.3 !important;
  padding: 0 !important;
  margin: 0 !important;
}
/* checkmark icon */
.plan-features li::before, .price-features li::before,
.feature-list li::before, .features-list li::before {
  content: '' !important;
  flex-shrink: 0 !important;
  width: 16px !important;
  height: 16px !important;
  background: url("data:image/svg+xml,%3Csvg width='16' height='16' viewBox='0 0 16 16' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M3 8l3.5 3.5L13 5' stroke='%234343f0' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") no-repeat center / contain !important;
  display: block !important;
}
/* override any existing icons set via FA or img */
.plan-features li i.fa, .plan-features li i.fas, .plan-features li i.far,
.price-features li i, .feature-list li i { display: none !important; }
.plan-features li img, .price-features li img, .feature-list li img { display: none !important; }

/* Plan badge (Most Popular) */
.plan-badge-wrap, .most-popular-badge, .wgs-popular-label,
.plan-popular-label, .popular-badge {
  background: var(--on-primary) !important;
  color: var(--on-white) !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
  padding: 4px 12px !important;
  border-radius: 9999px !important;
  display: inline-block !important;
  margin-bottom: 12px !important;
}

/* CTA button — full width pill */
.plan-cta, .price-cta, .wgs-plan-btn, .package-btn,
.plan-order-btn, .price-order-btn, .plan-action-btn,
.wgs-price-plan-wrap .btn, .price-plan-wrapper .btn,
.plan-col .btn, .pricing-plan .btn {
  display: flex !important;
  width: 100% !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 44px !important;
  padding: 0 20px !important;
  border-radius: 9999px !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  text-decoration: none !important;
  transition: background 0.15s, border-color 0.15s, box-shadow 0.15s !important;
  border: 1.5px solid var(--on-border) !important;
  background: var(--on-primary-xs) !important;
  color: var(--on-primary) !important;
  margin-top: auto !important;
}
.plan-cta:hover, .price-cta:hover,
.wgs-price-plan-wrap .btn:hover {
  background: var(--on-primary-light) !important;
  border-color: var(--on-primary) !important;
  color: var(--on-primary) !important;
}
.plan-cta.primary, .price-cta.primary, .plan-cta-primary,
.featured .plan-cta, .most-popular .plan-cta, .popular .plan-cta,
.wgs-price-plan-wrap.plan-popular-wrapper .btn,
.plan-col.most-popular .btn {
  background: linear-gradient(135deg, #4343f0 0%, #6868f3 100%) !important;
  border-color: #4343f0 !important;
  color: #ffffff !important;
  box-shadow: 0 4px 16px rgba(67,67,240,0.2) !important;
}
.plan-cta.primary:hover, .featured .plan-cta:hover,
.wgs-price-plan-wrap.plan-popular-wrapper .btn:hover {
  background: linear-gradient(135deg, #3535c8 0%, #4343f0 100%) !important;
  border-color: #3535c8 !important;
  box-shadow: 0 6px 20px rgba(67,67,240,0.28) !important;
}

/* ============================================================
   PHASE 2 — FOOTER (OneNet custom footer)
   ============================================================ */
.onenet-footer {
  background: var(--on-footer-gradient) !important;
  color: #e4e4f0 !important;
  padding: 64px 0 0 !important;
  margin-top: 0 !important;
}

/* Footer grid: brand + 4 columns */
.onenet-footer-grid {
  display: grid !important;
  grid-template-columns: 1.6fr 1fr 1fr 1fr 1fr !important;
  gap: 48px 32px !important;
  padding-bottom: 48px !important;
  border-bottom: 1px solid rgba(255,255,255,0.08) !important;
}
@media (max-width: 1024px) {
  .onenet-footer-grid { grid-template-columns: 1fr 1fr !important; gap: 32px 24px !important; }
}
@media (max-width: 600px) {
  .onenet-footer-grid { grid-template-columns: 1fr !important; }
}

/* Brand column */
.onenet-footer-brand img { display: block !important; margin-bottom: 12px !important; }
.onenet-footer-brand p { font-size: 13px !important; line-height: 1.6 !important; color: #a8a8c8 !important; margin: 0 0 20px !important; max-width: 280px !important; }
.onenet-footer-logo { display: inline-flex !important; align-items: center !important; text-decoration: none !important; }

/* Social pills */
.onenet-footer-social { display: flex !important; gap: 8px !important; flex-wrap: wrap !important; }
.onenet-social-pill {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 32px !important;
  height: 32px !important;
  border-radius: 9999px !important;
  border: 1px solid rgba(255,255,255,0.12) !important;
  color: #a8a8c8 !important;
  text-decoration: none !important;
  transition: border-color 0.15s, color 0.15s !important;
}
.onenet-social-pill:hover { border-color: var(--on-primary) !important; color: var(--on-white) !important; }

/* Footer columns */
.onenet-footer-col h3 {
  font-size: 11px !important;
  font-weight: 700 !important;
  letter-spacing: 0.1em !important;
  text-transform: uppercase !important;
  color: #ffffff !important;
  margin: 0 0 16px !important;
}
.onenet-footer-col ul { list-style: none !important; margin: 0 !important; padding: 0 !important; display: flex !important; flex-direction: column !important; gap: 10px !important; }
.onenet-footer-col ul li a {
  font-size: 13.5px !important;
  color: #a8a8c8 !important;
  text-decoration: none !important;
  transition: color 0.15s !important;
}
.onenet-footer-col ul li a:hover { color: #ffffff !important; }
.onenet-footer-link-disabled { font-size: 13.5px !important; color: #55556a !important; cursor: not-allowed !important; }

/* Trust badges band */
.onenet-footer-band {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 8px !important;
  padding: 24px 0 !important;
  border-bottom: 1px solid rgba(255,255,255,0.08) !important;
}
.onenet-footer-chip {
  font-size: 11px !important;
  font-weight: 500 !important;
  color: #a8a8c8 !important;
  border: 1px solid rgba(255,255,255,0.1) !important;
  border-radius: 9999px !important;
  padding: 4px 10px !important;
  white-space: nowrap !important;
}

/* Legal line */
.onenet-footer-legal {
  font-size: 11.5px !important;
  color: #55556a !important;
  padding: 20px 0 24px !important;
  line-height: 1.6 !important;
}

/* ============================================================
   PHASE 2 — TYPOGRAPHY & BODY
   ============================================================ */
body, html {
  font-family: -apple-system, BlinkMacSystemFont, 'Inter', 'Segoe UI', system-ui, sans-serif !important;
  font-size: 15px !important;
  color: var(--on-text) !important;
  -webkit-font-smoothing: antialiased !important;
}

/* ============================================================
   CLIENT AREA SIDEBAR — colour-only overrides (no structural changes)
   ============================================================ */
.hostx-child-side-bar-custom { background: var(--on-white) !important; border-right: 1px solid var(--on-border) !important; }
.hostx-side-nav-list .nav-link.active,
.hostx-side-nav-list .nav-item.active > a,
.hostx-side-nav-list li.active > a { color: var(--on-primary) !important; background: var(--on-primary-light) !important; border-radius: 8px !important; }
.hostx-side-nav-list .nav-link,
.hostx-side-nav-list li > a { color: var(--on-text-2) !important; }
.hostx-side-nav-list .nav-link:hover,
.hostx-side-nav-list li > a:hover { color: var(--on-primary) !important; background: var(--on-primary-light) !important; border-radius: 8px !important; }
.header-side-bar { background: var(--on-primary-xs) !important; border-bottom: 1px solid var(--on-border) !important; }
.client-name-data { color: var(--on-text) !important; font-weight: 600 !important; }

/* ============================================================
   PHASE 4 — CART BODY & PURCHASE JOURNEY
   Covers: product list, configure, view-cart, checkout, complete
   ============================================================ */

/* ── Page background ─────────────────────────────────────────────── */
.primary-bg-color,
body.whmcs-in-cart-pages,
.hostx-cart-body-section,
.cart-body,
.outer-wrapper,
.inner-wrapper {
  background: var(--on-white) !important;
  color: var(--on-text) !important;
}

/* ── Cart body layout ────────────────────────────────────────────── */
.hostx-cart-body-section { padding: 0 !important; }

.secondary-cart-body {
  background: var(--on-white) !important;
  border: none !important;
  box-shadow: none !important;
}

/* ── Section headings inside cart ───────────────────────────────── */
.heading-sec-cart,
.category-heading-section-cart,
.heading-area-configuration,
.group-content-section h2,
.group-content-section h3 {
  font-size: 22px !important;
  font-weight: 700 !important;
  color: var(--on-text) !important;
  letter-spacing: -0.01em !important;
  border: none !important;
  background: none !important;
  padding-bottom: 8px !important;
}

.sub-heading,
.header-lined-descp {
  font-size: 14px !important;
  color: var(--on-muted) !important;
  font-weight: 400 !important;
}

/* ── Product group tabs / category list ─────────────────────────── */
.product-category-list-hostx .col-md-3,
.product-category-list-hostx .col-md-3.product-group-active-hostx {
  background: var(--on-white) !important;
  border: 1px solid var(--on-border) !important;
  border-radius: 10px !important;
  transition: border-color 0.15s, box-shadow 0.15s !important;
}
.product-category-list-hostx .col-md-3.product-group-active-hostx,
.product-category-list-hostx .col-md-3:hover {
  border-color: var(--on-primary) !important;
  box-shadow: 0 2px 12px rgba(67,67,240,0.10) !important;
}
.product-category-list-hostx a,
.product-category-list-hostx .headline,
.product-category-list-hostx .tagline {
  color: var(--on-text) !important;
  text-decoration: none !important;
}
.product-category-list-hostx .tagline { color: var(--on-muted) !important; font-size: 12px !important; }

/* ── Inner product/category section ─────────────────────────────── */
.inner-sec-category-product {
  background: var(--on-white) !important;
  border: none !important;
}

/* ── Billing cycle toggle ────────────────────────────────────────── */
.field-container.billing-cycle-styled,
.select-billing-cycle,
.selectBillingCycleHostxCart {
  background: var(--on-bg-2) !important;
  border: 1px solid var(--on-border) !important;
  border-radius: 10px !important;
  padding: 6px !important;
  display: inline-flex !important;
  gap: 4px !important;
}
.select-billing-cycle label,
.selectBillingCycleHostxCart label,
.field-container.billing-cycle-styled label {
  border-radius: 8px !important;
  padding: 6px 16px !important;
  font-size: 13px !important;
  font-weight: 500 !important;
  color: var(--on-muted) !important;
  cursor: pointer !important;
  transition: background 0.15s, color 0.15s !important;
  border: none !important;
  background: transparent !important;
  margin: 0 !important;
}
.select-billing-cycle input[type="radio"]:checked + label,
.selectBillingCycleHostxCart input[type="radio"]:checked + label {
  background: var(--on-white) !important;
  color: var(--on-primary) !important;
  font-weight: 600 !important;
  box-shadow: 0 1px 4px rgba(0,0,0,0.10) !important;
}
.select-billing-cycle input[type="radio"],
.selectBillingCycleHostxCart input[type="radio"] {
  display: none !important;
}

/* ── Product info card ───────────────────────────────────────────── */
.product-info {
  background: var(--on-white) !important;
  border: 1px solid var(--on-border) !important;
  border-radius: 14px !important;
  padding: 20px !important;
  box-shadow: 0 1px 4px rgba(0,0,0,0.05) !important;
}
.product-title,
.product-info h3,
.product-info h4 {
  color: var(--on-text) !important;
  font-weight: 700 !important;
  font-size: 16px !important;
}

/* ── Price display ───────────────────────────────────────────────── */
.price,
.breakdown-price,
.setup-fee,
.font-size-30,
.font-size-36 {
  color: var(--on-text) !important;
  font-weight: 800 !important;
}
.price .text-muted,
.breakdown-price .text-muted { color: var(--on-muted) !important; }

/* ── Order summary sidebar ───────────────────────────────────────── */
.order-summary,
.summary-container,
.secondary-cart-sidebar {
  background: var(--on-bg-2) !important;
  border: 1px solid var(--on-border) !important;
  border-radius: 14px !important;
  padding: 20px !important;
}
.order-summary h3,
.order-summary h4,
.summary-container h3,
.summary-container h4 {
  font-size: 14px !important;
  font-weight: 700 !important;
  color: var(--on-text) !important;
  text-transform: uppercase !important;
  letter-spacing: 0.06em !important;
  margin-bottom: 12px !important;
}

/* ── Cart action buttons ─────────────────────────────────────────── */
.btn-primary,
.btn.btn-primary,
a.btn-primary,
button.btn-primary,
.btn.hx-primary-btn,
.btn.modal-submit,
.button-style.hx-primary-btn {
  background: var(--on-primary) !important;
  border-color: var(--on-primary) !important;
  color: var(--on-white) !important;
  border-radius: 9999px !important;
  padding: 10px 24px !important;
  font-weight: 600 !important;
  font-size: 14px !important;
  transition: background 0.15s !important;
  box-shadow: none !important;
}
.btn-primary:hover,
.btn.btn-primary:hover,
.btn.hx-primary-btn:hover {
  background: var(--on-primary-dark) !important;
  border-color: var(--on-primary-dark) !important;
  color: var(--on-white) !important;
}

.btn.btn-default,
.button-sec-cart,
.button-style.hx-secondary {
  background: transparent !important;
  border: 1.5px solid var(--on-border) !important;
  color: var(--on-text) !important;
  border-radius: 9999px !important;
  padding: 9px 20px !important;
  font-weight: 500 !important;
  font-size: 14px !important;
  transition: border-color 0.15s, background 0.15s !important;
}
.btn.btn-default:hover,
.button-sec-cart:hover,
.button-style.hx-secondary:hover {
  border-color: var(--on-primary) !important;
  color: var(--on-primary) !important;
  background: var(--on-primary-light) !important;
}

.btn-sm.btn-add {
  background: var(--on-primary-light) !important;
  border-color: var(--on-primary) !important;
  color: var(--on-primary) !important;
  border-radius: 8px !important;
  font-size: 12px !important;
  font-weight: 600 !important;
}

/* ── Bootstrap breadcrumb ────────────────────────────────────────── */
.breadcrumb {
  background: transparent !important;
  padding: 0 !important;
  font-size: 13px !important;
  color: var(--on-muted) !important;
}
.breadcrumb-item + .breadcrumb-item::before { color: var(--on-subtle) !important; }
.breadcrumb-item a { color: var(--on-primary) !important; text-decoration: none !important; }
.breadcrumb-item.active { color: var(--on-muted) !important; }

/* ── Alerts / notices ────────────────────────────────────────────── */
.alert.alert-warning {
  background: #fffbeb !important;
  border-color: #f59e0b !important;
  color: #92400e !important;
  border-radius: 10px !important;
}
.alert.alert-danger {
  background: #fef2f2 !important;
  border-color: #ef4444 !important;
  color: #991b1b !important;
  border-radius: 10px !important;
}

/* ── Progress / cart complete ────────────────────────────────────── */
.cart-complete,
.cart-complete-container,
body.whmcs-templatefile-complete .content,
body.whmcs-templatefile-viewcart .content {
  background: var(--on-white) !important;
}

/* ── Copyright / footer line ─────────────────────────────────────── */
.copyright {
  font-size: 12px !important;
  color: var(--on-muted) !important;
  background: transparent !important;
  border-top: 1px solid var(--on-border) !important;
  padding: 16px 0 !important;
}

/* ── Input fields ────────────────────────────────────────────────── */
.whmcs-in-cart-pages input[type="text"],
.whmcs-in-cart-pages input[type="email"],
.whmcs-in-cart-pages input[type="password"],
.whmcs-in-cart-pages input[type="number"],
.whmcs-in-cart-pages select,
.whmcs-in-cart-pages textarea {
  border: 1.5px solid var(--on-border) !important;
  border-radius: 8px !important;
  color: var(--on-text) !important;
  background: var(--on-white) !important;
  font-size: 14px !important;
  transition: border-color 0.15s !important;
}
.whmcs-in-cart-pages input:focus,
.whmcs-in-cart-pages select:focus,
.whmcs-in-cart-pages textarea:focus {
  border-color: var(--on-primary) !important;
  outline: none !important;
  box-shadow: 0 0 0 3px rgba(67,67,240,0.12) !important;
}

/* ── Remove HostX orange accent everywhere in cart ───────────────── */
.hostx-child-orange-mode .price-color,
.hostx-child-orange-mode .text-primary,
.hostx-child-orange-mode .color-primary,
.hostx-child-orange-mode a.color-primary,
.hostx-child-orange-mode .btn-primary,
.whmcs-in-cart-pages .price-color,
.whmcs-in-cart-pages .text-primary,
.whmcs-in-cart-pages .color-primary {
  color: var(--on-primary) !important;
}
.hostx-child-orange-mode .bg-primary,
.whmcs-in-cart-pages .bg-primary {
  background-color: var(--on-primary) !important;
}

/* ============================================================
   PHASE 4b — CART JOURNEY: SPECIFIC FIXES
   1. Hide Register/Transfer domain buttons in cart header
   2. Hide product category navigation carousel
   3. Fix domain search dark background
   4. Fix order summary card (dark bg, invisible text, broken layout)
   5. Fix billing cycle toggle radio interaction
   ============================================================ */

/* 1. Remove Register Domain / Transfer Domain buttons from cart header */
.button-sec-cart { display: none !important; }

/* Also hide the entire heading section's border-bottom when there's no nav following */
.category-heading-section-cart {
  border-bottom: none !important;
  padding-bottom: 0 !important;
  margin-bottom: 16px !important;
}
.category-heading-section-cart .heading-sec-cart h3 {
  font-size: 24px !important;
  font-weight: 500 !important;
  color: var(--on-text) !important;
  margin: 0 !important;
}

body.whmcs-templatefile-configureproduct #order-standard_cart.hostx-cart-body-section {
  margin-top: 8px !important;
  padding-top: 8px !important;
}

body.whmcs-templatefile-configureproduct #order-standard_cart .category-heading-section-cart {
  padding-top: 16px !important;
  margin-bottom: 12px !important;
}

body.whmcs-templatefile-configureproduct #order-standard_cart #scrollingPanelContainer.on-cfg-sidebar,
body.whmcs-templatefile-configureproduct #order-standard_cart #scrollingPanelContainer {
  position: sticky !important;
  top: 120px !important;
  inset: unset !important;
  align-self: flex-start !important;
}

/* 2. Hide product category navigation carousel */
.product-category-list-hostx,
#product-group-category {
  display: none !important;
}

/* 3. Fix domain search: remove dark background, style like main site */
#order-standard_cart .domain-selection-options .domain-input-group {
  background: var(--on-bg-2) !important;
  border: 1px solid var(--on-border) !important;
  border-radius: 12px !important;
  padding: 20px !important;
  margin: 0 !important;
}

/* Domain selection option label rows */
#order-standard_cart .domain-selection-options .option label {
  background: var(--on-white) !important;
  border-bottom: 1px solid var(--on-border) !important;
  color: var(--on-text) !important;
  font-size: 15px !important;
  font-weight: 500 !important;
  padding: 16px 4px !important;
  cursor: pointer !important;
}
#order-standard_cart .domain-selection-options .option label:hover {
  color: var(--on-primary) !important;
}
#order-standard_cart .domain-selection-options .option input[type="radio"] {
  accent-color: var(--on-primary) !important;
  margin-right: 10px !important;
  width: 16px !important;
  height: 16px !important;
  vertical-align: middle !important;
}

/* Domain search input and TLD select */
#order-standard_cart .domain-selection-options .input-group-text,
#order-standard_cart .domain-selection-options .form-control,
#order-standard_cart .domain-selection-options .form-control,
.register-domain-page-cart .form-control,
.register-domain-page-cart textarea {
  border: 1.5px solid var(--on-border) !important;
  border-radius: 8px !important;
  background: var(--on-white) !important;
  color: var(--on-text) !important;
  font-size: 15px !important;
}
#order-standard_cart .domain-selection-options .input-group-text {
  background: var(--on-bg-2) !important;
  color: var(--on-muted) !important;
  border-right: none !important;
}

/* domain checker background (register domain page) */
.domain-checker-bg.clearfix,
.domain-checker-container,
.domain-checker-container .input-group-box {
  background: var(--on-bg-2) !important;
  border: 1px solid var(--on-border) !important;
  border-radius: 12px !important;
  padding: 20px !important;
}

/* Domain search button */
#btnCheckAvailability,
#order-standard_cart #btnCheckAvailability,
.domain-check-availability {
  background: var(--on-primary) !important;
  border-color: var(--on-primary) !important;
  color: var(--on-white) !important;
  border-radius: 9999px !important;
  font-weight: 600 !important;
  height: auto !important;
  padding: 10px 24px !important;
  font-size: 14px !important;
}
#btnCheckAvailability:hover,
.domain-check-availability:hover {
  background: var(--on-primary-dark) !important;
  border-color: var(--on-primary-dark) !important;
}

/* Register domain page textarea AI search */
.register-domain-page-cart textarea#message {
  background: var(--on-white) !important;
  color: var(--on-text) !important;
  border: 1.5px solid var(--on-border) !important;
  border-radius: 8px !important;
  padding: 12px !important;
  font-size: 14px !important;
  width: 100% !important;
}

/* 4. Fix order summary card — override hostx_cart.css !important rules with higher specificity */
/* The hostx theme sets bg-secondary-color (#17494D dark teal) via !important — match specificity */
body div#orderSummary,
body .view-cart-page div#orderSummary,
body #order-standard_cart .order-summary,
body #order-standard_cart div#orderSummary {
  background: var(--on-white) !important;
  background-color: var(--on-white) !important;
  border: 1px solid var(--on-border) !important;
  border-radius: 14px !important;
  box-shadow: 0 2px 12px rgba(0,0,0,0.06) !important;
  padding: 0 !important;
  overflow: hidden !important;
}

/* Order Summary heading strip — blue top bar */
body #order-standard_cart .order-summary h2,
body .order-summary-checkout h2 {
  background: var(--on-primary) !important;
  background-color: var(--on-primary) !important;
  color: var(--on-white) !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
  padding: 14px 20px !important;
  margin: 0 !important;
  line-height: 1 !important;
  border-radius: 0 !important;
}

/* Summary container — white bg, readable text */
body #order-standard_cart .summary-container,
body #order-standard_cart .order-summary .summary-container {
  background: var(--on-white) !important;
  background-color: var(--on-white) !important;
  padding: 16px 20px !important;
  color: var(--on-text) !important;
}

/* All text inside producttotal — was white-on-dark, now dark-on-white */
body #order-standard_cart #producttotal,
body #order-standard_cart #producttotal span,
body #order-standard_cart #producttotal *,
body #order-standard_cart .summary-container span,
body #order-standard_cart .summary-container span.pull-left.float-left,
body #order-standard_cart .summary-container span.pull-right.float-right {
  color: var(--on-text) !important;
}

/* Row separators */
body #order-standard_cart .order-summary .subtotal,
body #order-standard_cart .order-summary .summary-totals,
body #order-standard_cart .order-summary .bordered-totals {
  border-color: var(--on-border) !important;
}

/* Total amount — blue accent */
body #order-standard_cart .order-summary .total-due-today .amt {
  color: var(--on-primary) !important;
  font-size: 20px !important;
  font-weight: 800 !important;
}
body #order-standard_cart .order-summary .total-due-today span {
  color: var(--on-text) !important;
}

/* Loader spinner */
body #order-standard_cart .loader,
body #orderSummaryLoader {
  color: var(--on-primary) !important;
  text-align: center !important;
  padding: 16px !important;
}

/* Continue button wrapper */
body div#orderSummary .text-center {
  padding: 16px 20px 20px !important;
  background: var(--on-white) !important;
}

/* 5. Billing cycle toggle — fix <li> items */
#order-standard_cart ul.selectBillingCycleHostxCart {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 8px !important;
  list-style: none !important;
  padding: 0 !important;
  margin: 0 !important;
}
#order-standard_cart ul.selectBillingCycleHostxCart li {
  border: 1.5px solid var(--on-border) !important;
  border-radius: 10px !important;
  padding: 12px 16px !important;
  max-width: none !important;
  min-width: 100px !important;
  text-align: center !important;
  cursor: pointer !important;
  background: var(--on-white) !important;
  transition: border-color 0.15s, box-shadow 0.15s !important;
  flex: 1 1 auto !important;
}
#order-standard_cart ul.selectBillingCycleHostxCart li:hover {
  border-color: var(--on-primary) !important;
}
#order-standard_cart ul.selectBillingCycleHostxCart li.active {
  border-color: var(--on-primary) !important;
  background: var(--on-primary-light) !important;
  box-shadow: 0 0 0 2px rgba(67,67,240,0.15) !important;
}
#order-standard_cart ul.selectBillingCycleHostxCart li.active strong {
  color: var(--on-primary) !important;
}
#order-standard_cart ul.selectBillingCycleHostxCart li strong {
  display: block !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  color: var(--on-text) !important;
  margin-bottom: 4px !important;
}
#order-standard_cart ul.selectBillingCycleHostxCart li span {
  font-size: 12px !important;
  color: var(--on-muted) !important;
}

/* 6. Hide domain TLD category/spotlight sections on register page */
.spotlight-tlds,
#spotlightTlds,
.featured-tlds-container,
.tld-pricing-header,
.domain-pricing,
.domain-pricing-table,
.spot-tld-slider-area {
  display: none !important;
}

/* Domain-related page text fixes */
#order-standard_cart p.domain-renewal-desc,
#order-standard_cart .register-domain-page-cart p,
#order-standard_cart .configure-product-domain-page p {
  color: var(--on-muted) !important;
}

/* Remove dark bg from domain configure and register cart body */
#order-standard_cart .configure-product-domain-page .cart-body,
#order-standard_cart .register-domain-page-cart .cart-body,
#order-standard_cart .configure-domain-page .cart-body {
  background: var(--on-white) !important;
  padding: 24px !important;
  border-radius: 12px !important;
  border: 1px solid var(--on-border) !important;
}



/* ============================================================
   CONFIGURE PRODUCT PAGE v4 — GoDaddy-style, OneNet brand
   Senior-grade CSS: design tokens, 4pt grid, consistent
   specificity, Inter font, max-weight 500, #4343f0 brand
   True 60/40 two-column layout, accordion terms, stepper
   ============================================================ */

/* ── Local token extensions (scoped to this page) ─────────── */
#order-standard_cart .on-cfg-wrap {
  --cfg-col-gap:   48px;
  --cfg-sidebar-w: 360px;
  --cfg-max-w:     1200px;
  --cfg-pad-x:     32px;
  --cfg-pad-top:   40px;
  --cfg-radius-lg: 12px;
  --cfg-radius-md: 8px;
  --cfg-row-pad:   16px 20px;
  --cfg-font:      'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', system-ui, sans-serif;
  --cfg-save-bg:   #fef9c3;
  --cfg-save-fg:   #854d0e;
  --cfg-badge-bg:  #d1fae5;
  --cfg-badge-fg:  #065f46;
  --cfg-inc-bg:    #f0f4ff;
  --cfg-shadow-sm: 0 2px 16px rgba(0, 0, 0, 0.06);
  --cfg-shadow-cta:0 4px 16px rgba(67, 67, 240, 0.22);
}

/* ── Two-column wrapper ──────────────────────────────────────
   The form element and Bootstrap .row/.cart-body sit between
   .on-cfg-wrap and its direct children — display:contents
   removes them from the box tree on desktop so flex applies
   directly to .on-cfg-main and .on-cfg-sidebar.
   ──────────────────────────────────────────────────────────── */
.on-cfg-wrap {
  display: flex !important;
  align-items: flex-start !important;
  gap: var(--cfg-col-gap) !important;
  max-width: var(--cfg-max-w) !important;
  margin: var(--cfg-pad-top) auto !important;
  padding: 0 var(--cfg-pad-x) !important;
  font-family: var(--cfg-font) !important;
  box-sizing: border-box !important;
}

/* Do not flatten descendant .row or form elements globally here.
   Cart and checkout use Bootstrap rows deeply, and broad
   display: contents rules collapse their layout. */

/* The original configureproduct page does need one level of wrapper
   flattening so the confproduct shell can form its two-column rail.
   Scope that behavior tightly to the configureproduct template only. */
@media (min-width: 901px) {
  body.whmcs-templatefile-configureproduct #order-standard_cart .on-cfg-wrap > form,
  body.whmcs-templatefile-configureproduct #order-standard_cart .on-cfg-wrap > form > .cart-body,
  body.whmcs-templatefile-configureproduct #order-standard_cart .on-cfg-wrap > form > .cart-body > .row {
    display: contents !important;
  }
}

/* ── Column sizing ───────────────────────────────────────────
   Main grows to fill remaining space; sidebar is a fixed
   360px panel that sticks below the nav bar.
   ──────────────────────────────────────────────────────────── */
.on-cfg-main {
  flex: 1 1 0% !important;
  min-width: 0 !important;
  max-width: 640px !important;
}

.on-cfg-sidebar {
  width: var(--cfg-sidebar-w) !important;
  flex-shrink: 0 !important;
  position: static !important;
  top: auto !important;
}

/* ── Product header ──────────────────────────────────────────
   Thin separator below the product name mirrors GoDaddy's
   approach of "contextual breadcrumb before the main heading".
   ──────────────────────────────────────────────────────────── */
.on-cfg-product-header {
  margin-bottom: 24px !important;
  padding-bottom: 20px !important;
  border-bottom: 1px solid var(--on-border) !important;
}

.on-added-badge {
  display: inline-flex !important;
  align-items: center !important;
  gap: 5px !important;
  background: var(--cfg-badge-bg) !important;
  color: var(--cfg-badge-fg) !important;
  font-size: 11.5px !important;
  font-weight: 500 !important;
  padding: 4px 10px !important;
  border-radius: 9999px !important;
  margin-bottom: 8px !important;
  letter-spacing: 0.01em !important;
}

.on-product-name {
  font-size: 14px !important;
  font-weight: 500 !important;
  color: var(--on-text) !important;
  margin: 0 !important;
  line-height: 1.4 !important;
}

/* ── Main heading + short description ───────────────────────
   28px / weight-500 matches GoDaddy's section h1.
   Short desc uses muted colour at 14px for supporting context.
   ──────────────────────────────────────────────────────────── */
.on-cfg-h1 {
  font-size: 28px !important;
  font-weight: 500 !important;
  color: var(--on-text) !important;
  margin: 0 0 8px !important;
  letter-spacing: -0.02em !important;
  line-height: 1.2 !important;
}

.on-cfg-short-desc {
  font-size: 14px !important;
  font-weight: 400 !important;
  color: var(--on-muted) !important;
  margin: 0 0 32px !important;
  line-height: 1.6 !important;
  max-width: 520px !important;
}

/* ── Section spacing system (4pt grid base × 8 = 32px) ─────
   .on-cfg-section: bottom padding only (32px)
   .on-cfg-divider-top: border-top separator + 32px top + bottom
   ──────────────────────────────────────────────────────────── */
.on-cfg-section {
  padding-bottom: 32px !important;
}

.on-cfg-divider-top {
  border-top: 1px solid var(--on-border) !important;
  padding-top: 32px !important;
  padding-bottom: 32px !important;
}

.on-section-label {
  font-size: 15px !important;
  font-weight: 500 !important;
  color: var(--on-text) !important;
  margin: 0 0 4px !important;
  display: flex !important;
  align-items: center !important;
  gap: 6px !important;
  line-height: 1.4 !important;
}

.on-section-sub {
  font-size: 13px !important;
  font-weight: 400 !important;
  color: var(--on-muted) !important;
  margin: 0 0 16px !important;
  line-height: 1.55 !important;
}

/* ── Term accordion rows ─────────────────────────────────────
   Container: a single rounded rectangle with internal dividers.
   Each row: flex row — left (badge + term name), right (price).
   Selected: 3px left accent border + hidden checkmark appears.
   ──────────────────────────────────────────────────────────── */
.on-term-list {
  display: flex !important;
  flex-direction: column !important;
  border: 1.5px solid var(--on-border) !important;
  border-radius: var(--cfg-radius-lg) !important;
  overflow: hidden !important;
}

.on-term-row {
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
  padding: var(--cfg-row-pad) !important;
  cursor: pointer !important;
  border-bottom: 1px solid var(--on-border) !important;
  background: var(--on-white) !important;
  transition: background 0.12s ease !important;
  position: relative !important;
  margin: 0 !important;
  user-select: none !important;
}

.on-term-row:last-child {
  border-bottom: none !important;
}

.on-term-row:hover {
  background: var(--on-primary-xs) !important;
}

/* Selected state: dark left border, checkmark shown */
.on-term-row--selected {
  background: var(--on-white) !important;
  border-left: 3px solid var(--on-text) !important;
  padding-left: 17px !important; /* compensate 3px border so content doesn't shift */
}

.on-term-row--selected:hover {
  background: var(--on-white) !important;
}

/* Visually-hidden native radio — keyboard accessible, not rendered */
.on-term-radio {
  position: absolute !important;
  opacity: 0 !important;
  width: 0 !important;
  height: 0 !important;
  pointer-events: none !important;
}

/* Show focus ring on keyboard navigation via hidden radio focus-visible */
.on-term-radio:focus-visible + .on-term-left {
  outline: 2px solid var(--on-primary) !important;
  outline-offset: 2px !important;
  border-radius: 4px !important;
}

/* Left side: save badge stacked above term name */
.on-term-left {
  display: flex !important;
  flex-direction: column !important;
  gap: 4px !important;
  flex: 1 !important;
  min-width: 0 !important;
}

.on-term-save {
  display: inline-block !important;
  background: var(--cfg-save-bg) !important;
  color: var(--cfg-save-fg) !important;
  font-size: 10px !important;
  font-weight: 500 !important;
  padding: 2px 8px !important;
  border-radius: 9999px !important;
  text-transform: uppercase !important;
  letter-spacing: 0.06em !important;
  width: fit-content !important;
}

.on-term-name {
  font-size: 14px !important;
  font-weight: 500 !important;
  color: var(--on-text) !important;
}

/* Right side: price/mo + total billed */
.on-term-right {
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-end !important;
  gap: 2px !important;
  flex-shrink: 0 !important;
}

.on-term-price {
  font-size: 16px !important;
  font-weight: 500 !important;
  color: var(--on-text) !important;
  line-height: 1.2 !important;
}

.on-term-mo {
  font-size: 12px !important;
  font-weight: 400 !important;
  color: var(--on-muted) !important;
  margin-left: 1px !important;
}

.on-term-total {
  font-size: 11.5px !important;
  font-weight: 400 !important;
  color: var(--on-muted) !important;
}

/* Checkmark circle — hidden by default, visible on selected row */
.on-term-check {
  display: none !important;
  align-items: center !important;
  justify-content: center !important;
  flex-shrink: 0 !important;
}

.on-term-row--selected .on-term-check {
  display: flex !important;
}

/* ── Quantity stepper ────────────────────────────────────────
   Layout: info text on left (flex: 1), pill stepper on right.
   Stepper: pill border-radius, min–value–max in one container.
   ──────────────────────────────────────────────────────────── */
.on-qty-row {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 24px !important;
}

.on-qty-info {
  flex: 1 !important;
  min-width: 0 !important;
}

.on-qty-unit-price {
  font-size: 12px !important;
  font-weight: 400 !important;
  color: var(--on-muted) !important;
  margin: 6px 0 0 !important;
  line-height: 1.4 !important;
}

.on-qty-stepper {
  display: inline-flex !important;
  align-items: center !important;
  border: 1.5px solid var(--on-border) !important;
  border-radius: 9999px !important;
  overflow: hidden !important;
  flex-shrink: 0 !important;
  background: var(--on-white) !important;
}

.on-qty-btn {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 40px !important;
  height: 40px !important;
  background: transparent !important;
  border: none !important;
  cursor: pointer !important;
  color: var(--on-text) !important;
  transition: background 0.12s ease, color 0.12s ease !important;
  flex-shrink: 0 !important;
  padding: 0 !important;
  line-height: 1 !important;
}

.on-qty-btn:hover {
  background: var(--on-primary-light) !important;
  color: var(--on-primary) !important;
}

.on-qty-btn:active {
  background: var(--on-primary-light) !important;
}

.on-qty-btn:focus-visible {
  outline: 2px solid var(--on-primary) !important;
  outline-offset: -2px !important;
}

/* Number input: no spinners, centered, monospaced tabular figures */
.on-qty-input {
  width: 48px !important;
  text-align: center !important;
  border-top: none !important;
  border-bottom: none !important;
  border-left: 1px solid var(--on-border) !important;
  border-right: 1px solid var(--on-border) !important;
  font-size: 15px !important;
  font-weight: 500 !important;
  color: var(--on-text) !important;
  background: var(--on-white) !important;
  padding: 0 !important;
  height: 40px !important;
  outline: none !important;
  font-variant-numeric: tabular-nums !important;
  -moz-appearance: textfield !important;
  border-radius: 0 !important;
}

.on-qty-input::-webkit-inner-spin-button,
.on-qty-input::-webkit-outer-spin-button {
  -webkit-appearance: none !important;
  margin: 0 !important;
}

/* Inline help icon button */
.on-qty-help-btn {
  display: inline-flex !important;
  align-items: center !important;
  background: none !important;
  border: none !important;
  cursor: pointer !important;
  color: var(--on-muted) !important;
  padding: 0 !important;
  vertical-align: middle !important;
  transition: color 0.12s !important;
}

.on-qty-help-btn:hover {
  color: var(--on-text) !important;
}

/* ── Select + text inputs ────────────────────────────────────
   Consistent with the OneNet form language: 1.5px border,
   8px radius, 10px/14px padding, focus ring uses brand blue.
   ──────────────────────────────────────────────────────────── */
.on-select,
.on-input {
  display: block !important;
  width: 100% !important;
  padding: 10px 14px !important;
  font-size: 14px !important;
  font-weight: 400 !important;
  color: var(--on-text) !important;
  background: var(--on-white) !important;
  border: 1.5px solid var(--on-border) !important;
  border-radius: var(--cfg-radius-md) !important;
  line-height: 1.4 !important;
  transition: border-color 0.12s ease, box-shadow 0.12s ease !important;
  font-family: var(--cfg-font) !important;
}

.on-select:focus,
.on-input:focus {
  border-color: var(--on-primary) !important;
  box-shadow: 0 0 0 3px rgba(67, 67, 240, 0.12) !important;
  outline: none !important;
}

/* Inline radio / checkbox options */
.on-radio-label,
.on-checkbox-label {
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
  font-size: 14px !important;
  font-weight: 400 !important;
  color: var(--on-text) !important;
  cursor: pointer !important;
  margin: 6px 0 !important;
  user-select: none !important;
}

/* Helper / description text below inputs */
.on-field-help {
  display: block !important;
  font-size: 12px !important;
  font-weight: 400 !important;
  color: var(--on-muted) !important;
  margin-top: 4px !important;
  line-height: 1.4 !important;
}

/* ── "Included in your plan" section ────────────────────────
   Cards with a soft indigo tint background, white icon badge
   on the left, name + description on the right.
   ──────────────────────────────────────────────────────────── */
.on-included-h2 {
  font-size: 20px !important;
  font-weight: 500 !important;
  color: var(--on-text) !important;
  margin: 0 0 16px !important;
  letter-spacing: -0.01em !important;
  line-height: 1.3 !important;
}

.on-included-list {
  display: flex !important;
  flex-direction: column !important;
  gap: 8px !important;
}

.on-included-item {
  display: flex !important;
  align-items: flex-start !important;
  gap: 14px !important;
  background: var(--cfg-inc-bg) !important;
  border-radius: 10px !important;
  padding: 14px 16px !important;
}

.on-included-icon {
  flex-shrink: 0 !important;
  width: 32px !important;
  height: 32px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: var(--on-white) !important;
  border-radius: 8px !important;
  box-shadow: 0 1px 4px rgba(0, 0, 0, 0.06) !important;
}

.on-included-text {
  flex: 1 !important;
  min-width: 0 !important;
}

.on-included-name {
  font-size: 13.5px !important;
  font-weight: 500 !important;
  color: var(--on-text) !important;
  margin: 0 0 3px !important;
  line-height: 1.4 !important;
}

.on-included-desc {
  font-size: 12.5px !important;
  font-weight: 400 !important;
  color: var(--on-muted) !important;
  margin: 0 !important;
  line-height: 1.5 !important;
}

/* ── Metrics list (usage billing) ───────────────────────────
   Kept simple: list-reset, thin row separators, 14px body.
   ──────────────────────────────────────────────────────────── */
.on-metrics-list {
  list-style: none !important;
  padding: 0 !important;
  margin: 0 !important;
}

.on-metrics-list li {
  font-size: 14px !important;
  font-weight: 400 !important;
  color: var(--on-text) !important;
  padding: 8px 0 !important;
  border-bottom: 1px solid var(--on-border) !important;
  line-height: 1.5 !important;
}

.on-metrics-list li:last-child {
  border-bottom: none !important;
}

/* ── Sidebar summary card ────────────────────────────────────
   White card with subtle shadow. Title bar uppercase 13px.
   Body inherits HostX's #producttotal markup styles, but
   overridden here to stay on-brand and legible on white.
   ──────────────────────────────────────────────────────────── */
.on-summary-wrap {
  display: flex !important;
  flex-direction: column !important;
  gap: 12px !important;
}

.on-summary-card {
  background: var(--on-white) !important;
  border: 1px solid var(--on-border) !important;
  border-radius: var(--cfg-radius-lg) !important;
  overflow: hidden !important;
  box-shadow: var(--cfg-shadow-sm) !important;
}

.on-summary-title {
  font-size: 11px !important;
  font-weight: 500 !important;
  color: var(--on-muted) !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
  padding: 16px 20px !important;
  margin: 0 !important;
  border-bottom: 1px solid var(--on-border) !important;
  background: var(--on-white) !important;
}

.on-summary-body {
  padding: 16px 20px !important;
  font-size: 14px !important;
  font-weight: 400 !important;
  color: var(--on-text) !important;
  line-height: 1.6 !important;
  font-family: var(--cfg-font) !important;
}

/* Force correct colours over any HostX dark-theme overrides */
#order-standard_cart .on-summary-card,
#order-standard_cart #orderSummary .on-summary-card {
  background: var(--on-white) !important;
  background-color: var(--on-white) !important;
}

#order-standard_cart #producttotal,
#order-standard_cart .on-summary-body {
  color: var(--on-text) !important;
  background: transparent !important;
  font-family: var(--cfg-font) !important;
}

#order-standard_cart #producttotal *,
#order-standard_cart .on-summary-body * {
  color: inherit !important;
  background: transparent !important;
  font-family: var(--cfg-font) !important;
}

/* Loading spinner inside summary */
.on-summary-loader {
  padding: 16px 20px !important;
  text-align: center !important;
  color: var(--on-primary) !important;
}

/* ── Primary CTA button ──────────────────────────────────────
   Full-width pill, brand blue, 50px min-height, subtle shadow.
   Uses .hx-primary-btn so HostX hover states are overridden.
   ──────────────────────────────────────────────────────────── */
.on-cta-btn {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  min-height: 50px !important;
  padding: 14px 24px !important;
  background: var(--on-primary) !important;
  color: #ffffff !important;
  border: none !important;
  border-radius: 9999px !important;
  font-size: 15px !important;
  font-weight: 500 !important;
  letter-spacing: 0.01em !important;
  cursor: pointer !important;
  text-decoration: none !important;
  font-family: var(--cfg-font) !important;
  transition: background 0.15s ease, box-shadow 0.15s ease !important;
  box-shadow: var(--cfg-shadow-cta) !important;
}

.on-cta-btn:hover,
.on-cta-btn:focus-visible {
  background: var(--on-primary-dark) !important;
  color: #ffffff !important;
  text-decoration: none !important;
  box-shadow: 0 6px 20px rgba(67, 67, 240, 0.3) !important;
}

.on-cta-btn:active {
  background: var(--on-primary-dark) !important;
  box-shadow: 0 2px 8px rgba(67, 67, 240, 0.18) !important;
}

/* ── Suppress legacy HostX configure elements ────────────────
   These blocks appear in the base HostX template and must be
   hidden when our custom markup is present on this page.
   ──────────────────────────────────────────────────────────── */
body.whmcs-templatefile-configureproduct #order-standard_cart .on-cfg-wrap .heading-area-configuration,
body.whmcs-templatefile-configureproduct #order-standard_cart .on-cfg-wrap .header-lined-descp,
body.whmcs-templatefile-configureproduct #order-standard_cart .on-cfg-wrap .product-info,
body.whmcs-templatefile-configureproduct #order-standard_cart .on-cfg-wrap .field-container.billing-cycle-styled,
body.whmcs-templatefile-configureproduct #order-standard_cart .on-cfg-wrap .alert.alert-warning.info-text-sm,
body.whmcs-templatefile-configureproduct #order-standard_cart .on-cfg-wrap .secondary-cart-body,
body.whmcs-templatefile-configureproduct #order-standard_cart .on-cfg-wrap .secondary-cart-sidebar,
body.whmcs-templatefile-configureproduct #order-standard_cart .on-cfg-wrap .configure-product-page {
  display: none !important;
}

/* ── Responsive: single column on mobile/tablet ──────────────
   Below 900px: column layout, sidebar floats above (order: -1)
   so order summary is visible before scrolling the form.
   ──────────────────────────────────────────────────────────── */
@media (max-width: 900px) {
  .on-cfg-wrap {
    flex-direction: column !important;
    gap: 24px !important;
    padding: 0 16px !important;
    margin: 24px auto !important;
  }

  .on-cfg-sidebar {
    width: 100% !important;
    position: static !important;
    order: -1 !important;
  }

  .on-cfg-main {
    max-width: 100% !important;
  }

  .on-cfg-h1 {
    font-size: 22px !important;
  }

  .on-qty-row {
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: 16px !important;
  }
}

/* ============================================================
   Configure Product Final Pass — GoDaddy dropdown + layout fixes
   ============================================================ */
#order-standard_cart.hostx-cart-body-section {
  background: #ffffff !important;
  min-height: 100vh !important;
}

#order-standard_cart .on-cfg-wrap {
  --cfg-max-w: 1460px;
  --cfg-sidebar-w: 504px;
  --cfg-col-gap: 72px;
  --cfg-pad-top: 12px;
  align-items: flex-start !important;
}

#order-standard_cart .on-cfg-main {
  flex: 1 1 648px !important;
  max-width: 648px !important;
}

#order-standard_cart .on-cfg-sidebar {
  width: var(--cfg-sidebar-w) !important;
  position: static !important;
  top: auto !important;
  inset: auto !important;
  transform: none !important;
}

#order-standard_cart #scrollingPanelContainer.on-cfg-sidebar,
#order-standard_cart .on-cfg-sidebar#scrollingPanelContainer {
  position: static !important;
  top: auto !important;
  right: auto !important;
  left: auto !important;
  bottom: auto !important;
  inset: auto !important;
  transform: none !important;
}

#order-standard_cart .on-cfg-product-header {
  margin-bottom: 22px !important;
  padding-bottom: 26px !important;
}

#order-standard_cart .on-added-badge {
  background: #86f5df !important;
  color: #061c18 !important;
  border-radius: 0 !important;
  text-transform: uppercase !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  padding: 5px 9px !important;
  letter-spacing: 0.02em !important;
}

#order-standard_cart .on-product-name {
  color: #0b0f19 !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  margin-top: 10px !important;
}

#order-standard_cart .on-cfg-h1 {
  font-size: 31px !important;
  font-weight: 700 !important;
  letter-spacing: -0.045em !important;
  margin-bottom: 26px !important;
}

#order-standard_cart .on-section-label {
  color: #0b0f19 !important;
  font-size: 16px !important;
  font-weight: 700 !important;
  margin-bottom: 4px !important;
}

#order-standard_cart .on-section-sub {
  color: #0b0f19 !important;
  font-size: 13px !important;
  line-height: 1.55 !important;
  margin-bottom: 16px !important;
}

#order-standard_cart .on-term-select {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  opacity: 0 !important;
  pointer-events: none !important;
}

#order-standard_cart .on-term-dropdown {
  position: relative !important;
  width: 100% !important;
  z-index: 20 !important;
}

#order-standard_cart .on-term-trigger,
#order-standard_cart .on-term-option {
  appearance: none !important;
  -webkit-appearance: none !important;
  width: 100% !important;
  display: grid !important;
  grid-template-columns: 1fr auto 24px !important;
  align-items: center !important;
  gap: 18px !important;
  background: #ffffff !important;
  border: 0 !important;
  color: #0b0f19 !important;
  font-family: var(--cfg-font) !important;
  text-align: left !important;
  cursor: pointer !important;
}

#order-standard_cart .on-term-trigger {
  min-height: 72px !important;
  padding: 16px 18px !important;
  border: 2px solid #111111 !important;
  border-radius: 10px !important;
  box-shadow: none !important;
}

#order-standard_cart .on-term-trigger:focus-visible,
#order-standard_cart .on-term-option:focus-visible {
  outline: 3px solid rgba(67, 67, 240, 0.28) !important;
  outline-offset: 2px !important;
}

#order-standard_cart .on-term-menu {
  display: none !important;
  position: absolute !important;
  left: 0 !important;
  right: 0 !important;
  top: 0 !important;
  max-height: 430px !important;
  overflow-y: auto !important;
  background: #ffffff !important;
  border: 2px solid #111111 !important;
  border-radius: 10px !important;
  box-shadow: 12px 14px 28px rgba(15, 23, 42, 0.14) !important;
  z-index: 30 !important;
}

#order-standard_cart .on-term-dropdown.is-open .on-term-menu {
  display: block !important;
}

#order-standard_cart .on-term-dropdown.is-open .on-term-trigger {
  visibility: hidden !important;
}

#order-standard_cart .on-term-option {
  min-height: 67px !important;
  padding: 12px 18px !important;
}

#order-standard_cart .on-term-option:hover {
  background: #f8fafc !important;
}

#order-standard_cart .on-term-option.is-selected .on-term-check {
  display: flex !important;
}

#order-standard_cart .on-term-card-left {
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  gap: 6px !important;
}

#order-standard_cart .on-term-name {
  font-size: 14px !important;
  font-weight: 700 !important;
  color: #0b0f19 !important;
}

#order-standard_cart .on-term-save {
  background: #fff1a8 !important;
  color: #111111 !important;
  border-radius: 0 !important;
  font-size: 9px !important;
  font-weight: 700 !important;
  padding: 2px 4px !important;
}

#order-standard_cart .on-term-card-right,
#order-standard_cart .on-term-right {
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-end !important;
  gap: 3px !important;
}

#order-standard_cart .on-term-price {
  color: #0b0f19 !important;
  font-size: 20px !important;
  font-weight: 700 !important;
  line-height: 1.1 !important;
}

#order-standard_cart .on-term-mo,
#order-standard_cart .on-term-total {
  color: #0b0f19 !important;
  font-size: 13px !important;
  font-weight: 400 !important;
}

#order-standard_cart .on-term-check {
  display: none !important;
  align-items: center !important;
  justify-content: center !important;
}

#order-standard_cart .on-term-radio,
#order-standard_cart input.on-term-radio,
#order-standard_cart .on-term-row input[type="radio"] {
  position: absolute !important;
  inset: auto !important;
  opacity: 0 !important;
  width: 1px !important;
  height: 1px !important;
  margin: 0 !important;
  clip: rect(0 0 0 0) !important;
  clip-path: inset(50%) !important;
  overflow: hidden !important;
  pointer-events: none !important;
}

#order-standard_cart .on-qty-row {
  display: grid !important;
  grid-template-columns: 1fr 158px !important;
  align-items: start !important;
  gap: 28px !important;
}

#order-standard_cart .on-qty-info {
  max-width: 470px !important;
}

#order-standard_cart .on-qty-info .on-section-label {
  display: inline-flex !important;
  margin-bottom: 4px !important;
}

#order-standard_cart .on-qty-control {
  width: 158px !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: stretch !important;
  gap: 6px !important;
}

#order-standard_cart .on-qty-stepper {
  width: 158px !important;
  height: 46px !important;
  border: 1.5px solid #111111 !important;
  border-radius: 10px !important;
}

#order-standard_cart .on-qty-btn {
  width: 51px !important;
  height: 46px !important;
}

#order-standard_cart .on-qty-input {
  width: 56px !important;
  height: 46px !important;
  font-size: 18px !important;
}

#order-standard_cart .on-qty-unit-price {
  margin: 0 !important;
  color: #6b7280 !important;
  font-size: 13px !important;
  line-height: 1.2 !important;
}

#order-standard_cart .on-included-h2 {
  font-size: 26px !important;
  font-weight: 700 !important;
  letter-spacing: -0.035em !important;
}

#order-standard_cart .on-included-item {
  background: #dcecff !important;
  border-radius: 9px !important;
  padding: 16px !important;
}

#order-standard_cart .on-included-name {
  color: #0b0f19 !important;
  font-size: 14px !important;
  font-weight: 700 !important;
}

#order-standard_cart .on-included-desc {
  color: #0b0f19 !important;
  font-size: 13px !important;
}

#order-standard_cart .on-summary-card {
  border: 1px solid #cfd7e3 !important;
  border-radius: 6px !important;
  box-shadow: none !important;
}

#order-standard_cart .on-summary-title {
  color: #0b0f19 !important;
  font-size: 16px !important;
  font-weight: 700 !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
  padding: 18px 14px 22px !important;
}

#order-standard_cart .on-cta-btn {
  background: #2176d2 !important;
  border-radius: 5px !important;
  min-height: 39px !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  box-shadow: none !important;
}

#order-standard_cart .on-summary-note {
  margin: 12px 0 0 !important;
  color: #0b0f19 !important;
  font-size: 12px !important;
  line-height: 1.4 !important;
  text-align: center !important;
}

@media (max-width: 900px) {
  #order-standard_cart .on-cfg-wrap {
    padding: 0 18px !important;
    gap: 26px !important;
  }

  #order-standard_cart .on-cfg-sidebar {
    order: 2 !important;
  }

  #order-standard_cart .on-cfg-main {
    max-width: 100% !important;
  }

  #order-standard_cart .on-qty-row {
    grid-template-columns: 1fr !important;
  }

  #order-standard_cart .on-term-trigger,
  #order-standard_cart .on-term-option {
    grid-template-columns: 1fr auto 20px !important;
    gap: 12px !important;
  }
}


/* Issue 4/5 live patch */
#order-standard_cart.hostx-cart-body-section,
#order-standard_cart.hostx-cart-body-section .on-cfg-wrap,
#order-standard_cart.hostx-cart-body-section .on-cfg-wrap * {
  font-family: var(--cfg-font) !important;
}

#order-standard_cart .on-cfg-h1,
#order-standard_cart .on-section-label,
#order-standard_cart .on-product-name,
#order-standard_cart .on-term-name,
#order-standard_cart .on-term-price,
#order-standard_cart .on-included-h2,
#order-standard_cart .on-included-name,
#order-standard_cart .on-summary-title,
#order-standard_cart .on-cta-btn {
  font-weight: 500 !important;
}

#order-standard_cart .on-summary-wrap {
  gap: 14px !important;
}

#order-standard_cart .on-summary-card {
  background: #ffffff !important;
  border: 1px solid #e5ebf3 !important;
  border-radius: 24px !important;
  box-shadow: 0 20px 44px rgba(15, 23, 42, 0.08) !important;
  overflow: hidden !important;
}

#order-standard_cart .on-summary-title {
  font-size: 18px !important;
  line-height: 1.35 !important;
  padding: 24px 24px 16px !important;
}

#order-standard_cart .on-summary-body {
  padding: 0 24px 18px !important;
}

#order-standard_cart .on-summary-note {
  margin: 4px 0 0 !important;
  text-align: center !important;
  color: #6b7280 !important;
  font-size: 12px !important;
  line-height: 1.5 !important;
}

#order-standard_cart .on-cta-btn,
#order-standard_cart #btnCompleteProductConfig.on-cta-btn,
#order-standard_cart #btnCompleteProductConfig.hx-primary-btn {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  min-height: 48px !important;
  padding: 13px 24px !important;
  border: 0 !important;
  border-radius: 9999px !important;
  background: var(--on-primary) !important;
  background-image: none !important;
  color: #ffffff !important;
  font-size: 16px !important;
  line-height: 1.2 !important;
  text-decoration: none !important;
  box-shadow: 0 12px 28px rgba(67, 67, 240, 0.22) !important;
}

#order-standard_cart .on-cta-btn:hover,
#order-standard_cart .on-cta-btn:focus-visible,
#order-standard_cart #btnCompleteProductConfig.hx-primary-btn:hover,
#order-standard_cart #btnCompleteProductConfig.hx-primary-btn:focus-visible {
  background: #3535d6 !important;
  color: #ffffff !important;
  box-shadow: 0 16px 30px rgba(67, 67, 240, 0.28) !important;
}

#order-standard_cart .on-cta-btn:active,
#order-standard_cart #btnCompleteProductConfig.hx-primary-btn:active {
  background: #2d2dc2 !important;
  box-shadow: 0 8px 18px rgba(67, 67, 240, 0.2) !important;
}


/* Issue 4/5 composition refinement */
#order-standard_cart .on-summary-wrap {
  gap: 18px !important;
}

#order-standard_cart .on-summary-card {
  border-radius: 28px !important;
  padding: 0 !important;
}

#order-standard_cart .on-summary-title {
  padding: 26px 28px 18px !important;
  font-size: 17px !important;
  color: #111827 !important;
}

#order-standard_cart .on-summary-body {
  padding: 0 28px 24px !important;
}

#order-standard_cart #producttotal {
  display: grid !important;
  gap: 14px !important;
  font-size: 15px !important;
  line-height: 1.55 !important;
}

#order-standard_cart #producttotal > div,
#order-standard_cart #producttotal > p,
#order-standard_cart #producttotal > .row {
  margin: 0 !important;
}

#order-standard_cart #producttotal .sub-heading,
#order-standard_cart #producttotal .product-group,
#order-standard_cart #producttotal .small-font,
#order-standard_cart #producttotal .small {
  color: #6b7280 !important;
}

#order-standard_cart #producttotal .recurring-charges,
#order-standard_cart #producttotal .bordered-totals,
#order-standard_cart #producttotal .subtotal,
#order-standard_cart #producttotal .summary-totals {
  border-top: 1px solid #e5ebf3 !important;
  padding-top: 16px !important;
  margin-top: 8px !important;
}

#order-standard_cart #producttotal .pull-left,
#order-standard_cart #producttotal .float-left {
  color: #111827 !important;
}

#order-standard_cart #producttotal .pull-right,
#order-standard_cart #producttotal .float-right,
#order-standard_cart #producttotal strong,
#order-standard_cart #producttotal b {
  color: #111827 !important;
  font-weight: 500 !important;
}

#order-standard_cart .on-cta-btn,
#order-standard_cart #btnCompleteProductConfig.on-cta-btn,
#order-standard_cart #btnCompleteProductConfig.hx-primary-btn {
  min-height: 56px !important;
  font-size: 15px !important;
  border-radius: 9999px !important;
}

#order-standard_cart .on-summary-guarantee {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;
  color: #4b5563 !important;
  font-size: 13px !important;
  line-height: 1.45 !important;
  text-align: center !important;
}

#order-standard_cart .on-summary-guarantee svg {
  flex: 0 0 auto !important;
}

#order-standard_cart .on-summary-note {
  display: none !important;
}


/* Issue 47 reduce summary width by 10% */
#order-standard_cart .on-cfg-wrap {
  --cfg-sidebar-w: 454px !important;
}


/* Issue 48 term dropdown blue border */
#order-standard_cart .on-term-trigger,
#order-standard_cart .on-term-dropdown.is-open .on-term-trigger {
  border: 2px solid #4343f0 !important;
  border-radius: 20px !important;
  box-shadow: 0 10px 28px rgba(67, 67, 240, 0.08) !important;
}

#order-standard_cart .on-term-menu {
  border: 2px solid #4343f0 !important;
  border-radius: 24px !important;
  box-shadow: 0 18px 40px rgba(67, 67, 240, 0.12) !important;
}


/* Issue 50 narrower continue button */
#order-standard_cart .on-cta-btn,
#order-standard_cart #btnCompleteProductConfig.on-cta-btn,
#order-standard_cart #btnCompleteProductConfig.hx-primary-btn {
  width: calc(100% - 40px) !important;
  margin: 0 auto !important;
}


/* Issue 51 hide duplicate product title in summary */
#order-standard_cart #producttotal .product-name + .product-group + .clearfix > .pull-left.float-left,
#order-standard_cart #producttotal .product-name + .product-group + div > .pull-left.float-left {
  display: none !important;
}

/* Issue 56 align cart title + restore sidebar sticky behavior */
#order-standard_cart .on-cfg-sidebar,
#order-standard_cart #scrollingPanelContainer,
#order-standard_cart #scrollingPanelContainer.on-cfg-sidebar,
#order-standard_cart .on-cfg-sidebar#scrollingPanelContainer {
  position: sticky !important;
  top: 120px !important;
  inset: unset !important;
  transform: none !important;
  align-self: flex-start !important;
  margin-top: 0 !important;
}

#order-standard_cart .on-summary-wrap {
  position: relative !important;
}

@media (max-width: 900px) {
  #order-standard_cart .on-cfg-sidebar,
  #order-standard_cart #scrollingPanelContainer.on-cfg-sidebar,
  #order-standard_cart .on-cfg-sidebar#scrollingPanelContainer {
    position: static !important;
    top: auto !important;
    margin-top: 0 !important;
  }
}


/* Issue 57 distinguish customize-plan surface */
body.whmcs-templatefile-configureproduct,
body.whmcs-templatefile-configureproduct #main-body,
body.whmcs-templatefile-configureproduct .shoping-cart-background,
body.whmcs-templatefile-configureproduct .whmcs-client-area-pages-section,
body.whmcs-templatefile-configureproduct #order-standard_cart.hostx-cart-body-section {
  background: #f7f9fc !important;
  margin: 20px 0 !important;
}

#order-standard_cart .on-cfg-main {
  background: #ffffff !important;
  border: 1px solid #e5ebf3 !important;
  border-radius: 18px !important;
  box-shadow: 0 18px 44px rgba(15, 23, 42, 0.05) !important;
  padding: 28px 30px 34px !important;
}

#order-standard_cart .on-cfg-product-header,
#order-standard_cart .on-cfg-main > .alert,
#order-standard_cart .on-cfg-main > .on-cfg-section,
#order-standard_cart .on-cfg-main > #productConfigurableOptions,
#order-standard_cart .on-cfg-main > .on-cfg-divider-top {
  position: relative !important;
  z-index: 1 !important;
}

@media (max-width: 900px) {
  #order-standard_cart .on-cfg-main {
    border-radius: 16px !important;
    padding: 22px 18px 26px !important;
    box-shadow: 0 12px 28px rgba(15, 23, 42, 0.05) !important;
  }
}


/* Issue 60 strengthen configure surface paint + stacking */
#order-standard_cart .on-cfg-wrap {
  position: relative !important;
  z-index: 3 !important;
}

#order-standard_cart .on-cfg-main,
#order-standard_cart .on-cfg-sidebar,
#order-standard_cart .on-summary-card {
  position: relative !important;
  z-index: 4 !important;
  overflow: hidden !important;
}


/* Issue 61 mobile/tablet configure-page layout */
@media (max-width: 1024px) {
  #order-standard_cart .on-cfg-wrap {
    display: flex !important;
    flex-direction: column !important;
    gap: 24px !important;
    padding: 0 16px !important;
    margin: 0 auto !important;
    --cfg-sidebar-w: 100% !important;
    --cfg-col-gap: 24px !important;
  }

  #order-standard_cart .on-cfg-main,
  #order-standard_cart .on-cfg-sidebar,
  #order-standard_cart #scrollingPanelContainer.on-cfg-sidebar,
  #order-standard_cart .on-cfg-sidebar#scrollingPanelContainer,
  #order-standard_cart .on-summary-wrap,
  #order-standard_cart .on-summary-card {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
  }

  #order-standard_cart .on-cfg-sidebar,
  #order-standard_cart #scrollingPanelContainer.on-cfg-sidebar,
  #order-standard_cart .on-cfg-sidebar#scrollingPanelContainer {
    position: static !important;
    top: auto !important;
    margin-top: 0 !important;
    align-self: stretch !important;
  }

  #order-standard_cart .on-summary-card {
    border-radius: 14px !important;
  }

  #order-standard_cart .on-summary-body {
    padding-right: 20px !important;
    padding-left: 20px !important;
  }

  #order-standard_cart #producttotal {
    overflow-wrap: anywhere !important;
  }

  #order-standard_cart .on-term-trigger,
  #order-standard_cart .on-term-option {
    grid-template-columns: minmax(0, 1fr) auto 18px !important;
    gap: 10px !important;
    padding: 14px 14px !important;
  }

  #order-standard_cart .on-term-card-right,
  #order-standard_cart .on-term-right {
    min-width: 0 !important;
  }

  #order-standard_cart .on-term-price {
    font-size: 16px !important;
  }

  #order-standard_cart .on-term-mo,
  #order-standard_cart .on-term-total {
    font-size: 12px !important;
  }

  #order-standard_cart .on-included-item {
    padding: 14px !important;
  }
}

@media (max-width: 600px) {
  body.whmcs-templatefile-configureproduct {
    overflow-x: hidden !important;
  }

  #order-standard_cart.hostx-cart-body-section {
    margin: 16px 0 !important;
  }

  #order-standard_cart .on-cfg-main {
    padding: 18px 14px 22px !important;
    border-radius: 16px !important;
  }

  #order-standard_cart .on-cfg-h1 {
    font-size: 24px !important;
    line-height: 1.15 !important;
  }

  #order-standard_cart .on-product-name {
    font-size: 13px !important;
    line-height: 1.4 !important;
  }

  #order-standard_cart .on-term-trigger,
  #order-standard_cart .on-term-option {
    min-height: 78px !important;
    align-items: start !important;
  }

  #order-standard_cart .on-term-card-left,
  #order-standard_cart .on-term-card-right {
    gap: 4px !important;
  }

  #order-standard_cart .on-cta-btn,
  #order-standard_cart #btnCompleteProductConfig.on-cta-btn,
  #order-standard_cart #btnCompleteProductConfig.hx-primary-btn {
    width: calc(100% - 24px) !important;
  }
}


/* Issue 62 configureproduct mobile sheet + form width */
body.whmcs-templatefile-configureproduct {
  overflow-x: hidden !important;
}

body.whmcs-templatefile-configureproduct .app-frame,
body.whmcs-templatefile-configureproduct .page-shell,
body.whmcs-templatefile-configureproduct #main-body,
body.whmcs-templatefile-configureproduct .whmcs-client-area-pages-section,
body.whmcs-templatefile-configureproduct .primary-content,
body.whmcs-templatefile-configureproduct #order-standard_cart {
  overflow-x: hidden !important;
}

body.whmcs-templatefile-configureproduct .onenet-mobile-sheet,
body.whmcs-templatefile-configureproduct #onenet-sheet {
  display: none !important;
}

body.whmcs-templatefile-configureproduct body.onenet-mobile-open .onenet-mobile-sheet {
  display: none !important;
}

@media (max-width: 1024px) {
  #order-standard_cart .on-cfg-wrap > form,
  #order-standard_cart .on-cfg-wrap form {
    display: block !important;
    width: 100% !important;
    min-width: 0 !important;
  }

  #order-standard_cart .on-cfg-main,
  #order-standard_cart .on-cfg-sidebar,
  #order-standard_cart #scrollingPanelContainer.on-cfg-sidebar,
  #order-standard_cart .on-cfg-sidebar#scrollingPanelContainer,
  #order-standard_cart .on-summary-wrap,
  #order-standard_cart .on-summary-card {
    width: 100% !important;
    max-width: 100% !important;
  }

  #order-standard_cart .on-summary-card {
    margin: 0 !important;
  }
}

/* Issue 64 final mobile/tablet top-of-page polish */
@media (max-width: 1024px) {
  #order-standard_cart.hostx-cart-body-section {
    margin-top: -112px !important;
    margin-bottom: 20px !important;
  }

  #order-standard_cart .category-heading-section-cart {
    max-width: 100% !important;
    padding: 0 16px !important;
    margin: 0 auto 16px !important;
    position: relative !important;
    z-index: 6 !important;
  }
}

@media (max-width: 600px) {
  #order-standard_cart.hostx-cart-body-section {
    margin-top: -56px !important;
  }

  #order-standard_cart .category-heading-section-cart {
    padding: 0 14px !important;
    margin-bottom: 14px !important;
  }

  #order-standard_cart .category-heading-section-cart .heading-sec-cart h3 {
    font-size: 28px !important;
    line-height: 1.08 !important;
  }
}

/* Issue 65 hide staging WHMCS dev-license banner on configure page */
body.whmcs-templatefile-configureproduct .primary-content > div[style*=background-color:#ffffd2] {
  display: none !important;
}

/* Issue 67 mobile/tablet polish: spacing, radius, dropdown flow */
#order-standard_cart.hostx-cart-body-section {
  padding-top: 15px !important;
  padding-bottom: 15px !important;
}

@media (max-width: 1024px) {
  #order-standard_cart.hostx-cart-body-section {
    padding-top: 15px !important;
    padding-bottom: 15px !important;
    margin-top: -96px !important;
    margin-bottom: 15px !important;
  }

  #order-standard_cart .category-heading-section-cart {
    margin-bottom: 12px !important;
  }

  #order-standard_cart .category-heading-section-cart .heading-sec-cart h3 {
    font-size: 20px !important;
    line-height: 1.15 !important;
  }

  #order-standard_cart .on-cfg-main {
    border-radius: 18px !important;
    overflow: visible !important;
  }

  #order-standard_cart .on-cfg-h1 {
    font-size: 25px !important;
    line-height: 1.12 !important;
    margin-bottom: 20px !important;
  }

  #order-standard_cart .on-term-dropdown {
    position: relative !important;
    z-index: 12 !important;
  }

  #order-standard_cart .on-term-dropdown.is-open {
    margin-bottom: 440px !important;
  }

  #order-standard_cart .on-term-dropdown.is-open .on-term-menu {
    top: calc(100% + 12px) !important;
    z-index: 24 !important;
  }

  #order-standard_cart .on-cfg-sidebar,
  #order-standard_cart #scrollingPanelContainer.on-cfg-sidebar,
  #order-standard_cart .on-cfg-sidebar#scrollingPanelContainer {
    margin-top: 18px !important;
  }

  #order-standard_cart .on-summary-card {
    border-radius: 14px !important;
    box-shadow: 0 14px 30px rgba(15, 23, 42, 0.06) !important;
  }
}

@media (max-width: 600px) {
  #order-standard_cart.hostx-cart-body-section {
    margin-top: -40px !important;
    margin-bottom: 15px !important;
  }

  #order-standard_cart .category-heading-section-cart {
    padding: 0 14px !important;
    margin-bottom: 10px !important;
  }

  #order-standard_cart .category-heading-section-cart .heading-sec-cart h3,
  #order-standard_cart .on-cfg-h1 {
    font-size: 24px !important;
    line-height: 1.1 !important;
  }

  #order-standard_cart .on-cfg-main {
    padding: 20px 16px 24px !important;
    border-radius: 18px !important;
  }

  #order-standard_cart .on-term-dropdown.is-open {
    margin-bottom: 520px !important;
  }

  #order-standard_cart .on-term-dropdown.is-open .on-term-menu {
    max-height: 348px !important;
  }

  #order-standard_cart .on-cfg-sidebar,
  #order-standard_cart #scrollingPanelContainer.on-cfg-sidebar,
  #order-standard_cart .on-cfg-sidebar#scrollingPanelContainer {
    margin-top: 20px !important;
  }
}

/* Issue 67c mobile/tablet term list should flow, not overlay */
@media (max-width: 1024px) {
  #order-standard_cart .on-term-dropdown.is-open {
    margin-bottom: 0 !important;
  }

  #order-standard_cart .on-term-dropdown.is-open .on-term-trigger {
    visibility: visible !important;
  }

  #order-standard_cart .on-term-dropdown.is-open .on-term-menu {
    position: static !important;
    left: auto !important;
    right: auto !important;
    top: auto !important;
    margin-top: 12px !important;
    z-index: 24 !important;
  }
}

@media (max-width: 600px) {
  #order-standard_cart .on-term-dropdown.is-open .on-term-menu {
    margin-top: 10px !important;
  }
}

/* ============================================================
   CHECKOUT PAGE v1 — consolidated review + checkout
   Uses the same visual language as configureproduct while
   keeping WHMCS checkout logic intact.
   ============================================================ */

#order-standard_cart .on-checkout-wrap {
  --checkout-main-max: 760px;
  --checkout-side-w: 360px;
  --checkout-gap: 34px;
  --checkout-radius: 18px;
  --checkout-radius-sm: 14px;
  --checkout-border: 1px solid #dfe5f2;
  --checkout-soft: #f7f9ff;
  --checkout-text: #101828;
  --checkout-muted: #667085;
  --checkout-primary: #4f46e5;
  --checkout-primary-dark: #4338ca;
  --checkout-danger: #e11d48;
  --checkout-font: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', system-ui, sans-serif;
  gap: var(--checkout-gap) !important;
  max-width: 1180px !important;
  margin: 24px auto 56px !important;
  padding: 0 24px !important;
  font-family: var(--checkout-font) !important;
}

#order-standard_cart .on-checkout-main {
  max-width: var(--checkout-main-max) !important;
}

#order-standard_cart .on-checkout-sidebar,
#order-standard_cart #scrollingPanelContainer.on-checkout-sidebar {
  width: var(--checkout-side-w) !important;
  top: 110px !important;
  align-self: flex-start !important;
}

#order-standard_cart .on-checkout-page-title {
  margin-bottom: 16px !important;
}

#order-standard_cart .on-checkout-page-title h1 {
  font-size: 42px !important;
  line-height: 1.08 !important;
  font-weight: 600 !important;
  color: var(--checkout-text) !important;
  margin: 0 0 10px !important;
}

#order-standard_cart .on-checkout-page-subtitle {
  margin: 0 !important;
  color: var(--checkout-muted) !important;
  font-size: 16px !important;
  line-height: 1.6 !important;
}

#order-standard_cart .on-checkout-section,
#order-standard_cart .on-checkout-summary-card {
  background: #fff !important;
  border: var(--checkout-border) !important;
  border-radius: var(--checkout-radius) !important;
  box-shadow: none !important;
}

#order-standard_cart .on-checkout-section {
  padding: 24px !important;
  margin-bottom: 18px !important;
}

#order-standard_cart .on-checkout-section-heading {
  display: flex !important;
  align-items: flex-start !important;
  justify-content: space-between !important;
  gap: 20px !important;
  margin-bottom: 18px !important;
}

#order-standard_cart .on-checkout-section-title {
  margin: 0 0 6px !important;
  font-size: 24px !important;
  line-height: 1.2 !important;
  font-weight: 600 !important;
  color: var(--checkout-text) !important;
}

#order-standard_cart .on-checkout-section-note {
  margin: 0 !important;
  color: var(--checkout-muted) !important;
  font-size: 14px !important;
  line-height: 1.55 !important;
}

#order-standard_cart .on-checkout-pill-btn,
#order-standard_cart .on-checkout-submit-btn,
#order-standard_cart #btnExistingLogin,
#order-standard_cart #btnAlreadyRegistered,
#order-standard_cart #btnNewUserSignup,
#order-standard_cart .generate-password {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: auto !important;
  min-height: 44px !important;
  padding: 0 18px !important;
  border-radius: 9999px !important;
  font-weight: 600 !important;
  font-size: 14px !important;
  line-height: 1 !important;
  text-decoration: none !important;
  white-space: nowrap !important;
}

#order-standard_cart .on-checkout-mini-btn {
  min-height: 38px !important;
  padding: 0 14px !important;
  font-size: 13px !important;
}

#order-standard_cart .hx-primary-btn.on-checkout-pill-btn,
#order-standard_cart .on-checkout-submit-btn {
  background: var(--checkout-primary) !important;
  border: 1px solid var(--checkout-primary) !important;
  color: #fff !important;
  box-shadow: 0 10px 24px rgba(79, 70, 229, 0.18) !important;
}

#order-standard_cart .hx-primary-btn.on-checkout-pill-btn:hover,
#order-standard_cart .on-checkout-submit-btn:hover {
  background: var(--checkout-primary-dark) !important;
  border-color: var(--checkout-primary-dark) !important;
  color: #fff !important;
}

#order-standard_cart .hx-secondary.on-checkout-pill-btn,
#order-standard_cart .on-checkout-icon-btn,
#order-standard_cart .btn-default.on-checkout-pill-btn,
#order-standard_cart .btn-info.on-checkout-pill-btn,
#order-standard_cart .btn-warning.on-checkout-pill-btn {
  background: #fff !important;
  border: 1px solid #d8dff0 !important;
  color: var(--checkout-text) !important;
  box-shadow: none !important;
}

#order-standard_cart .on-checkout-icon-btn {
  width: 38px !important;
  min-width: 38px !important;
  height: 38px !important;
  padding: 0 !important;
}

#order-standard_cart .on-checkout-remove-btn {
  color: var(--checkout-danger) !important;
}

#order-standard_cart .on-checkout-review-table {
  border-top: 1px solid #e8ecf5 !important;
}

#order-standard_cart .on-checkout-review-head,
#order-standard_cart .on-checkout-review-row {
  display: grid !important;
  grid-template-columns: minmax(0, 1.5fr) 132px 160px !important;
  gap: 18px !important;
}

#order-standard_cart .on-checkout-review-head {
  color: var(--checkout-muted) !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.04em !important;
  padding: 16px 0 12px !important;
}

#order-standard_cart .on-checkout-review-row {
  align-items: start !important;
  padding: 18px 0 !important;
  border-top: 1px solid #edf1f7 !important;
}

#order-standard_cart .on-checkout-review-name {
  display: block !important;
  font-size: 18px !important;
  line-height: 1.3 !important;
  font-weight: 600 !important;
  color: var(--checkout-text) !important;
}

#order-standard_cart .on-checkout-review-meta,
#order-standard_cart .on-checkout-review-domain,
#order-standard_cart .on-checkout-review-cycle {
  display: block !important;
  color: var(--checkout-muted) !important;
  font-size: 14px !important;
  line-height: 1.55 !important;
}

#order-standard_cart .on-checkout-review-config {
  margin-top: 8px !important;
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 6px 12px !important;
}

#order-standard_cart .on-checkout-review-config span {
  color: var(--checkout-muted) !important;
  font-size: 13px !important;
}

#order-standard_cart .on-checkout-qty-stack {
  display: flex !important;
  flex-direction: column !important;
  gap: 10px !important;
  align-items: flex-start !important;
}

#order-standard_cart .on-checkout-qty-input {
  width: 96px !important;
  height: 44px !important;
  border-radius: 14px !important;
}

#order-standard_cart .on-checkout-qty-static {
  display: inline-flex !important;
  min-width: 48px !important;
  height: 44px !important;
  align-items: center !important;
  justify-content: center !important;
  border-radius: 14px !important;
  border: 1px solid #d8dff0 !important;
  background: #fff !important;
  font-weight: 600 !important;
  color: var(--checkout-text) !important;
  padding: 0 12px !important;
}

#order-standard_cart .on-checkout-review-price {
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-end !important;
  gap: 6px !important;
}

#order-standard_cart .on-checkout-review-amount {
  font-size: 20px !important;
  line-height: 1.2 !important;
  font-weight: 700 !important;
  color: var(--checkout-text) !important;
}

#order-standard_cart .on-checkout-review-actions {
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
  margin-top: 8px !important;
}

#order-standard_cart .on-checkout-account-switch {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 16px !important;
}

#order-standard_cart .on-checkout-account-switch p {
  margin: 0 !important;
  color: var(--checkout-muted) !important;
  font-size: 14px !important;
}

#order-standard_cart .on-checkout-account-switch .pull-right {
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  float: none !important;
}

#order-standard_cart .on-checkout-login-section .row,
#order-standard_cart #containerNewUserSignup .row,
#order-standard_cart .on-checkout-domain-section .row,
#order-standard_cart .on-checkout-security-section .row,
#order-standard_cart .on-checkout-extra-section .row {
  row-gap: 14px !important;
}

#order-standard_cart .on-checkout-login-section .sub-heading,
#order-standard_cart .on-checkout-signup-section .sub-heading,
#order-standard_cart .on-checkout-account-section .sub-heading,
#order-standard_cart .on-checkout-domain-section .sub-heading,
#order-standard_cart .on-checkout-security-section .sub-heading,
#order-standard_cart .on-checkout-payment-section .sub-heading,
#order-standard_cart .on-checkout-notes-section .sub-heading,
#order-standard_cart .on-checkout-extra-section .sub-heading {
  margin-bottom: 16px !important;
}

#order-standard_cart .on-checkout-login-section .sub-heading span,
#order-standard_cart .on-checkout-signup-section .sub-heading span,
#order-standard_cart .on-checkout-account-section .sub-heading span,
#order-standard_cart .on-checkout-domain-section .sub-heading span,
#order-standard_cart .on-checkout-security-section .sub-heading span,
#order-standard_cart .on-checkout-payment-section .sub-heading span,
#order-standard_cart .on-checkout-notes-section .sub-heading span,
#order-standard_cart .on-checkout-extra-section .sub-heading span {
  background: transparent !important;
  color: var(--checkout-text) !important;
  font-size: 22px !important;
  line-height: 1.25 !important;
  font-weight: 600 !important;
  padding: 0 !important;
  border-radius: 0 !important;
}

#order-standard_cart #containerNewUserSignup .billing-info,
#order-standard_cart #containerNewUserSignup .custom-field-info {
  border-top: 1px solid #edf1f7 !important;
  margin-top: 18px !important;
  padding-top: 18px !important;
}

#order-standard_cart .form-control,
#order-standard_cart .field,
#order-standard_cart select.field {
  min-height: 48px !important;
  border-radius: var(--checkout-radius-sm) !important;
  border: 1px solid #d8dff0 !important;
  background: #fff !important;
  box-shadow: none !important;
  color: var(--checkout-text) !important;
  font-size: 15px !important;
}

#order-standard_cart textarea.form-control,
#order-standard_cart textarea.field {
  min-height: 120px !important;
  padding-top: 14px !important;
  border-radius: 16px !important;
}

#order-standard_cart .field-label,
#order-standard_cart .form-group > label {
  display: block !important;
  color: var(--checkout-text) !important;
  font-size: 14px !important;
  line-height: 1.4 !important;
  font-weight: 600 !important;
  margin-bottom: 8px !important;
}

#order-standard_cart .on-checkout-gateway-grid {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 10px !important;
  text-align: left !important;
}

#order-standard_cart .on-checkout-gateway-grid .radio-inline {
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  margin: 0 !important;
  padding: 14px 16px !important;
  border: 1px solid #d8dff0 !important;
  border-radius: 16px !important;
  background: var(--checkout-soft) !important;
  font-weight: 600 !important;
  color: var(--checkout-text) !important;
}

#order-standard_cart .cc-input-container {
  margin-top: 18px !important;
  padding: 20px !important;
  border: 1px solid #e5eaf5 !important;
  border-radius: 18px !important;
  background: var(--checkout-soft) !important;
}

#order-standard_cart .marketing-email-optin {
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  gap: 10px !important;
}

#order-standard_cart .marketing-email-optin i {
  color: var(--checkout-primary) !important;
  font-size: 20px !important;
}

#order-standard_cart .on-checkout-consent-section {
  text-align: left !important;
}

#order-standard_cart .on-checkout-consent-section p {
  margin: 0 0 14px !important;
  color: var(--checkout-muted) !important;
  font-size: 14px !important;
  line-height: 1.6 !important;
}

#order-standard_cart .on-checkout-consent-section .checkbox-inline {
  padding-left: 0 !important;
  display: inline-flex !important;
  align-items: flex-start !important;
  gap: 10px !important;
}

#order-standard_cart .on-checkout-consent-section input[type="checkbox"] {
  margin-top: 3px !important;
}

#order-standard_cart .checkout-error-feedback {
  border-radius: 16px !important;
  border: 1px solid #fecdd3 !important;
  background: #fff1f2 !important;
  color: #9f1239 !important;
}

#order-standard_cart .on-checkout-summary-card {
  position: relative !important;
  overflow: hidden !important;
}

#order-standard_cart .on-checkout-summary-card .on-summary-title {
  background: linear-gradient(135deg, #4f46e5 0%, #4338ca 100%) !important;
  color: #fff !important;
  border-bottom: 0 !important;
  padding: 18px 20px !important;
  font-size: 13px !important;
  letter-spacing: 0.09em !important;
}

#order-standard_cart .on-checkout-summary-card .on-summary-body {
  padding: 18px 20px 22px !important;
}

#order-standard_cart .on-checkout-promo-shell {
  padding: 16px 0 !important;
  border-top: 1px solid #e8ecf5 !important;
  border-bottom: 1px solid #e8ecf5 !important;
  margin: 16px 0 !important;
}

#order-standard_cart .on-checkout-promo-label {
  display: block !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  color: var(--checkout-text) !important;
  margin-bottom: 10px !important;
  text-transform: uppercase !important;
  letter-spacing: 0.04em !important;
}

#order-standard_cart .on-checkout-promo-row {
  display: flex !important;
  gap: 10px !important;
  align-items: center !important;
}

#order-standard_cart .on-checkout-promo-active {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 12px !important;
}

#order-standard_cart .view-cart-promotion-code {
  color: var(--checkout-text) !important;
  font-weight: 600 !important;
  font-size: 14px !important;
}

#order-standard_cart .summary-checkout-btn {
  text-align: left !important;
  margin-top: 20px !important;
}

#order-standard_cart .summary-checkout-btn .on-checkout-submit-btn {
  min-height: 48px !important;
  padding: 0 22px !important;
}

@media (max-width: 1199px) {
  #order-standard_cart .on-checkout-wrap {
    --checkout-main-max: 100%;
    --checkout-side-w: 320px;
    gap: 24px !important;
  }

  #order-standard_cart .on-checkout-review-head,
  #order-standard_cart .on-checkout-review-row {
    grid-template-columns: minmax(0, 1.3fr) 112px 140px !important;
  }
}

@media (max-width: 900px) {
  #order-standard_cart .on-checkout-wrap {
    display: block !important;
    padding: 0 16px !important;
    margin: 18px auto 32px !important;
  }

  #order-standard_cart .on-checkout-main,
  #order-standard_cart .on-checkout-sidebar,
  #order-standard_cart #scrollingPanelContainer.on-checkout-sidebar {
    width: 100% !important;
    max-width: 100% !important;
  }

  #order-standard_cart .on-checkout-sidebar {
    margin-top: 18px !important;
    position: static !important;
    top: auto !important;
  }

  #order-standard_cart .on-checkout-section {
    padding: 20px !important;
  }

  #order-standard_cart .on-checkout-section-heading,
  #order-standard_cart .on-checkout-account-switch {
    flex-direction: column !important;
    align-items: flex-start !important;
  }

  #order-standard_cart .on-checkout-account-switch .pull-right {
    width: 100% !important;
    justify-content: flex-start !important;
    flex-wrap: wrap !important;
  }

  #order-standard_cart .on-checkout-gateway-grid {
    grid-template-columns: 1fr !important;
  }
}

@media (max-width: 767px) {
  #order-standard_cart .on-checkout-page-title h1 {
    font-size: 32px !important;
  }

  #order-standard_cart .on-checkout-review-head {
    display: none !important;
  }

  #order-standard_cart .on-checkout-review-row {
    grid-template-columns: 1fr !important;
    gap: 12px !important;
  }

  #order-standard_cart .on-checkout-review-price {
    align-items: flex-start !important;
  }

  #order-standard_cart .on-checkout-promo-row,
  #order-standard_cart .on-checkout-promo-active {
    flex-direction: column !important;
    align-items: stretch !important;
  }

  #order-standard_cart .on-checkout-pill-btn,
  #order-standard_cart .on-checkout-submit-btn {
    max-width: 100% !important;
  }
}

/* ============================================================
   Final checkout page on cart.php?a=checkout
   Compact confirmation layout aligned to HostX theme tokens.
   ============================================================ */
#order-standard_cart .on-checkout-wrap {
  --checkout-border-color: var(--on-border) !important;
  --checkout-soft: #f8fafc !important;
  --checkout-text: var(--on-text) !important;
  --checkout-muted: #667085 !important;
  --checkout-primary: var(--on-primary) !important;
  --checkout-primary-dark: var(--on-primary-dark) !important;
}

#order-standard_cart .on-checkout-page-title {
  margin-bottom: 24px !important;
}

#order-standard_cart .on-checkout-page-title h1 {
  font-size: 31px !important;
  line-height: 1.15 !important;
  font-weight: 700 !important;
  letter-spacing: -0.03em !important;
}

#order-standard_cart .on-checkout-page-subtitle {
  display: none !important;
}

#order-standard_cart .on-final-card {
  margin-bottom: 24px !important;
  border: 1px solid var(--on-border) !important;
  border-radius: 18px !important;
  background: #ffffff !important;
  overflow: hidden !important;
}

#order-standard_cart .on-final-card-header {
  display: flex !important;
  align-items: flex-start !important;
  justify-content: space-between !important;
  gap: 16px !important;
  padding: 22px 24px 0 !important;
}

#order-standard_cart .on-final-card-title {
  margin: 0 !important;
  color: var(--on-text) !important;
  font-size: 22px !important;
  line-height: 1.2 !important;
  font-weight: 700 !important;
}

#order-standard_cart .on-final-card-copy {
  margin: 6px 0 0 !important;
  color: #667085 !important;
  font-size: 14px !important;
  line-height: 1.55 !important;
}

#order-standard_cart .on-final-card .on-checkout-section {
  border: 0 !important;
  border-radius: 0 !important;
  margin: 0 !important;
  padding: 20px 24px !important;
  box-shadow: none !important;
}

#order-standard_cart .on-final-card .on-checkout-section + .on-checkout-section {
  border-top: 1px solid #e5ebf3 !important;
}

#order-standard_cart .on-final-card .on-checkout-account-switch {
  padding-top: 18px !important;
}

#order-standard_cart .on-final-card .on-checkout-login-section .sub-heading span,
#order-standard_cart .on-final-card .on-checkout-signup-section .sub-heading span,
#order-standard_cart .on-final-card .on-checkout-account-section .sub-heading span,
#order-standard_cart .on-final-card .on-checkout-domain-section .sub-heading span,
#order-standard_cart .on-final-card .on-checkout-security-section .sub-heading span,
#order-standard_cart .on-final-card .on-checkout-payment-section .sub-heading span,
#order-standard_cart .on-final-card .on-checkout-notes-section .sub-heading span,
#order-standard_cart .on-final-card .on-checkout-extra-section .sub-heading span {
  font-size: 18px !important;
  font-weight: 700 !important;
}

#order-standard_cart .on-checkout-wrap .on-checkout-summary-card {
  background: #f8fafc !important;
  border: 1px solid var(--on-border) !important;
  border-radius: 18px !important;
}

#order-standard_cart .on-checkout-wrap .on-checkout-summary-card .on-summary-title {
  background: transparent !important;
  color: var(--on-text) !important;
  border-bottom: 0 !important;
  padding: 24px 24px 12px !important;
  font-size: 18px !important;
  font-weight: 700 !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
}

#order-standard_cart .on-checkout-wrap .on-checkout-summary-card .on-summary-body {
  padding: 0 24px 24px !important;
}

#order-standard_cart .on-checkout-wrap .on-checkout-promo-shell {
  border-top: 1px solid #dfe5f2 !important;
  border-bottom: 1px solid #dfe5f2 !important;
}

#order-standard_cart .on-checkout-wrap .total-due-today .amt {
  color: var(--on-primary) !important;
}

#order-standard_cart .on-checkout-wrap .summary-checkout-btn {
  text-align: left !important;
}

#order-standard_cart .on-checkout-wrap .summary-checkout-btn .on-checkout-submit-btn {
  min-height: 52px !important;
  padding: 0 26px !important;
  border-radius: 9999px !important;
  background: var(--on-primary) !important;
  border-color: var(--on-primary) !important;
  box-shadow: 0 12px 28px rgba(67, 67, 240, 0.18) !important;
}

#order-standard_cart .on-checkout-wrap .summary-checkout-btn .on-checkout-submit-btn:hover {
  background: var(--on-primary-dark) !important;
  border-color: var(--on-primary-dark) !important;
}

@media (max-width: 900px) {
  #order-standard_cart .on-final-card-header {
    padding: 20px 20px 0 !important;
  }

  #order-standard_cart .on-final-card .on-checkout-section {
    padding: 18px 20px !important;
  }
}

/* ============================================================
   Review + Checkout consolidation on cart.php?a=view
   Reuses real WHMCS cart + checkout logic while inheriting
   the configure-product layout system and HostX tokens.
   ============================================================ */
#order-standard_cart .on-review-checkout-page {
  max-width: 1240px !important;
  margin: 16px auto 56px !important;
  padding: 0 24px !important;
}

#order-standard_cart .on-review-checkout-page > .cart-body > .row {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) 320px !important;
  align-items: start !important;
  gap: 28px !important;
}

#order-standard_cart .on-review-checkout-page .secondary-cart-body {
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
}

#order-standard_cart .on-review-checkout-page .secondary-cart-sidebar,
#order-standard_cart .on-review-checkout-page #scrollingPanelContainer {
  width: 320px !important;
  max-width: 320px !important;
  min-width: 320px !important;
  position: sticky !important;
  top: 104px !important;
  align-self: flex-start !important;
  margin-top: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  height: fit-content !important;
}

#order-standard_cart .on-review-checkout-page .header-lined {
  margin-bottom: 24px !important;
}

#order-standard_cart .on-review-checkout-page .header-lined h1 {
  font-size: 31px !important;
  line-height: 1.15 !important;
  font-weight: 700 !important;
  letter-spacing: -0.03em !important;
}

#order-standard_cart .on-review-checkout-page .view-cart-items-header,
#order-standard_cart .on-review-checkout-page .view-cart-items,
#order-standard_cart .on-review-checkout-page .on-view-checkout-embed {
  background: #ffffff !important;
  border: 1px solid #e5ebf3 !important;
  border-radius: 18px !important;
  box-shadow: 0 10px 28px rgba(15, 23, 42, 0.05) !important;
}

#order-standard_cart .on-review-checkout-page .view-cart-items-header {
  margin-bottom: 0 !important;
  border-bottom-left-radius: 0 !important;
  border-bottom-right-radius: 0 !important;
  border-bottom: 0 !important;
  padding: 18px 24px !important;
}

#order-standard_cart .on-review-checkout-page .view-cart-items {
  border-top-left-radius: 0 !important;
  border-top-right-radius: 0 !important;
  padding: 0 24px !important;
}

#order-standard_cart .on-review-checkout-page .view-cart-items .item {
  padding: 22px 0 !important;
  border-bottom: 1px solid #e5ebf3 !important;
}

#order-standard_cart .on-review-checkout-page .view-cart-items .item:last-child {
  border-bottom: 0 !important;
}

#order-standard_cart .on-review-checkout-page .item-title {
  display: block !important;
  color: #0f172a !important;
  font-size: 18px !important;
  line-height: 1.3 !important;
  font-weight: 700 !important;
}

#order-standard_cart .on-review-checkout-page .item-group,
#order-standard_cart .on-review-checkout-page .item-domain,
#order-standard_cart .on-review-checkout-page .item small,
#order-standard_cart .on-review-checkout-page .cycle,
#order-standard_cart .on-review-checkout-page .renewal {
  color: #667085 !important;
}

#order-standard_cart .on-review-checkout-page .item-price > span:first-child {
  display: block !important;
  color: #0f172a !important;
  font-size: 18px !important;
  line-height: 1.2 !important;
  font-weight: 700 !important;
}

#order-standard_cart .on-review-checkout-page .item-qty input.form-control {
  width: 74px !important;
  min-width: 74px !important;
  min-height: 52px !important;
  margin: 0 auto !important;
  border: 2px solid #4343f0 !important;
  border-radius: 20px !important;
  background: #ffffff !important;
  color: #0f172a !important;
  font-weight: 600 !important;
  box-shadow: none !important;
}

#order-standard_cart .on-review-checkout-page .item-qty .btn,
#order-standard_cart .on-review-checkout-page .edit-link-view-area .btn,
#order-standard_cart .on-review-checkout-page .btn-remove-from-cart {
  border-radius: 9999px !important;
}

#order-standard_cart .on-review-checkout-page .item-qty {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: flex-start !important;
  gap: 10px !important;
}

#order-standard_cart .on-review-checkout-page .item-qty .btn {
  min-height: 32px !important;
  padding: 0 14px !important;
  border: 1.5px solid #d8dff0 !important;
  background: #ffffff !important;
  color: #0f172a !important;
  font-size: 12px !important;
  font-weight: 600 !important;
}

#order-standard_cart .on-review-checkout-page .empty-continue-button {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 16px !important;
  padding: 18px 0 6px !important;
}

#order-standard_cart .on-review-checkout-page .on-view-checkout-embed {
  margin-top: 28px !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

#order-standard_cart .on-review-checkout-page .on-view-checkout-stack {
  display: flex !important;
  flex-direction: column !important;
  gap: 16px !important;
}

#order-standard_cart .on-review-checkout-page .on-checkout-section {
  margin: 0 !important;
  padding: 22px 24px !important;
  background: #ffffff !important;
  border: 1px solid #e5ebf3 !important;
  border-radius: 18px !important;
  box-shadow: none !important;
}

#order-standard_cart .on-review-checkout-page .on-checkout-account-switch {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 16px !important;
}

#order-standard_cart .on-review-checkout-page .on-checkout-account-switch p {
  margin: 0 !important;
  color: #667085 !important;
  max-width: 260px !important;
}

#order-standard_cart .on-review-checkout-page .on-checkout-account-switch .pull-right {
  display: flex !important;
  gap: 10px !important;
  float: none !important;
}

#order-standard_cart .on-review-checkout-page .on-checkout-login-section .sub-heading,
#order-standard_cart .on-review-checkout-page .on-checkout-signup-section .sub-heading,
#order-standard_cart .on-review-checkout-page .on-checkout-account-section .sub-heading,
#order-standard_cart .on-review-checkout-page .on-checkout-domain-section .sub-heading,
#order-standard_cart .on-review-checkout-page .on-checkout-security-section .sub-heading,
#order-standard_cart .on-review-checkout-page .on-checkout-payment-section .sub-heading,
#order-standard_cart .on-review-checkout-page .on-checkout-notes-section .sub-heading,
#order-standard_cart .on-review-checkout-page .on-checkout-extra-section .sub-heading {
  margin-bottom: 16px !important;
}

#order-standard_cart .on-review-checkout-page .on-checkout-login-section .sub-heading span,
#order-standard_cart .on-review-checkout-page .on-checkout-signup-section .sub-heading span,
#order-standard_cart .on-review-checkout-page .on-checkout-account-section .sub-heading span,
#order-standard_cart .on-review-checkout-page .on-checkout-domain-section .sub-heading span,
#order-standard_cart .on-review-checkout-page .on-checkout-security-section .sub-heading span,
#order-standard_cart .on-review-checkout-page .on-checkout-payment-section .sub-heading span,
#order-standard_cart .on-review-checkout-page .on-checkout-notes-section .sub-heading span,
#order-standard_cart .on-review-checkout-page .on-checkout-extra-section .sub-heading span {
  background: transparent !important;
  color: #0f172a !important;
  font-size: 24px !important;
  line-height: 1.2 !important;
  font-weight: 700 !important;
  padding: 0 !important;
  border-radius: 0 !important;
}

#order-standard_cart .on-review-checkout-page #containerNewUserSignup .personal-info-sec,
#order-standard_cart .on-review-checkout-page #containerNewUserSignup .billing-info,
#order-standard_cart .on-review-checkout-page #containerNewUserSignup .custom-field-info {
  padding-top: 18px !important;
}

#order-standard_cart .on-review-checkout-page #containerNewUserSignup .billing-info,
#order-standard_cart .on-review-checkout-page #containerNewUserSignup .custom-field-info {
  margin-top: 18px !important;
  border-top: 1px solid #e5ebf3 !important;
}

#order-standard_cart .on-review-checkout-page .on-checkout-login-section .row,
#order-standard_cart .on-review-checkout-page #containerNewUserSignup .row,
#order-standard_cart .on-review-checkout-page .on-checkout-domain-section .row,
#order-standard_cart .on-review-checkout-page .on-checkout-security-section .row,
#order-standard_cart .on-review-checkout-page .on-checkout-extra-section .row,
#order-standard_cart .on-review-checkout-page .checkout-notes .row {
  row-gap: 14px !important;
}

#order-standard_cart .on-review-checkout-page .form-control,
#order-standard_cart .on-review-checkout-page .field,
#order-standard_cart .on-review-checkout-page select.field,
#order-standard_cart .on-review-checkout-page select.form-control,
#order-standard_cart .on-checkout-wrap .form-control,
#order-standard_cart .on-checkout-wrap .field,
#order-standard_cart .on-checkout-wrap select.field,
#order-standard_cart .on-checkout-wrap select.form-control {
  min-height: 52px !important;
  border: 2px solid #4343f0 !important;
  border-radius: 20px !important;
  background: #ffffff !important;
  color: #0f172a !important;
  padding-left: 16px !important;
  padding-right: 16px !important;
  box-shadow: none !important;
}

#order-standard_cart .on-review-checkout-page textarea.form-control,
#order-standard_cart .on-review-checkout-page textarea.field,
#order-standard_cart .on-checkout-wrap textarea.form-control,
#order-standard_cart .on-checkout-wrap textarea.field {
  min-height: 120px !important;
  border-radius: 20px !important;
  border: 2px solid #4343f0 !important;
  background: #ffffff !important;
  color: #0f172a !important;
  padding: 14px 16px !important;
}

#order-standard_cart .on-review-checkout-page .field-label,
#order-standard_cart .on-review-checkout-page .form-group > label,
#order-standard_cart .on-checkout-wrap .field-label,
#order-standard_cart .on-checkout-wrap .form-group > label {
  color: #0f172a !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  margin-bottom: 8px !important;
}

#order-standard_cart .on-review-checkout-page .on-checkout-pill-btn,
#order-standard_cart .on-review-checkout-page .on-checkout-submit-btn,
#order-standard_cart .on-review-checkout-page #btnExistingLogin,
#order-standard_cart .on-review-checkout-page #btnAlreadyRegistered,
#order-standard_cart .on-review-checkout-page #btnNewUserSignup,
#order-standard_cart .on-review-checkout-page .generate-password,
#order-standard_cart .on-review-checkout-page .btn-checkout {
  width: auto !important;
  min-height: 46px !important;
  padding: 0 20px !important;
  border-radius: 9999px !important;
  font-weight: 600 !important;
  white-space: nowrap !important;
}

#order-standard_cart .on-review-checkout-page .btn-checkout {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
}

#order-standard_cart .on-review-checkout-page .on-checkout-gateway-grid {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 10px !important;
}

#order-standard_cart .on-review-checkout-page .on-checkout-gateway-grid .radio-inline {
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  margin: 0 !important;
  padding: 14px 16px !important;
  border: 1.5px solid #d8dff0 !important;
  border-radius: 20px !important;
  background: #ffffff !important;
  color: #0f172a !important;
  font-weight: 600 !important;
}

#order-standard_cart .on-review-checkout-page .on-checkout-gateway-grid input[type="radio"]:checked + *,
#order-standard_cart .on-review-checkout-page .on-checkout-gateway-grid .radio-inline:has(input[type="radio"]:checked) {
  border-color: #4343f0 !important;
  background: #f5f5ff !important;
}

#order-standard_cart .on-review-checkout-page .on-checkout-account-switch {
  padding: 18px 20px !important;
}

#order-standard_cart .on-review-checkout-page .already-registered p {
  font-size: 13px !important;
  line-height: 1.5 !important;
}

#order-standard_cart .on-review-checkout-page .on-checkout-section,
#order-standard_cart .on-checkout-wrap .on-checkout-section {
  border-radius: 20px !important;
}

#order-standard_cart .on-review-checkout-page .order-summary,
#order-standard_cart .on-review-checkout-page #orderSummary {
  background: #f8fafc !important;
  border: 1px solid #e5ebf3 !important;
  border-radius: 18px !important;
  box-shadow: none !important;
  overflow: hidden !important;
  margin: 0 !important;
  width: 100% !important;
}

#order-standard_cart .on-review-checkout-page .order-summary h2 {
  background: transparent !important;
  color: #0f172a !important;
  padding: 22px 22px 8px !important;
  font-size: 24px !important;
  font-weight: 700 !important;
  letter-spacing: -0.02em !important;
  text-transform: none !important;
}

#order-standard_cart .on-review-checkout-page .summary-container {
  padding: 0 22px 22px !important;
  background: transparent !important;
}

#order-standard_cart .on-review-checkout-page .promo-code-form button,
#order-standard_cart .on-review-checkout-page .promo-code-view .btn {
  width: auto !important;
}

#order-standard_cart .on-review-checkout-page #btnCompleteOrder.w-hidden,
#order-standard_cart .on-checkout-wrap #btnCompleteOrder.w-hidden {
  display: none !important;
}

#order-standard_cart .on-review-checkout-page .cc-input-container {
  margin-top: 18px !important;
  padding: 20px !important;
  border: 1px solid #e5ebf3 !important;
  border-radius: 18px !important;
  background: #f8fafc !important;
}

#order-standard_cart .on-review-checkout-page .marketing-email-optin {
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  gap: 10px !important;
}

#order-standard_cart .on-review-checkout-page .on-checkout-consent-section {
  text-align: left !important;
}

#order-standard_cart .on-review-checkout-page .on-checkout-consent-section p {
  margin: 0 0 14px !important;
  color: #667085 !important;
}

#order-standard_cart .on-review-checkout-page .on-checkout-consent-section .checkbox-inline {
  display: inline-flex !important;
  align-items: flex-start !important;
  gap: 10px !important;
  padding-left: 0 !important;
}

#order-standard_cart .on-review-checkout-page .checkout-security-msg {
  margin-top: 18px !important;
  border-radius: 18px !important;
  border: 1px solid #e5ebf3 !important;
  background: #f8fafc !important;
  color: #475467 !important;
}

@media (max-width: 1199px) {
  #order-standard_cart .on-review-checkout-page {
    padding: 0 18px !important;
  }

  #order-standard_cart .on-review-checkout-page > .cart-body > .row {
    grid-template-columns: minmax(0, 1fr) 300px !important;
    gap: 24px !important;
  }
}

@media (max-width: 900px) {
  #order-standard_cart .on-review-checkout-page {
    padding: 0 16px !important;
    margin: 18px auto 36px !important;
  }

  #order-standard_cart .on-review-checkout-page > .cart-body > .row {
    display: block !important;
  }

  #order-standard_cart .on-review-checkout-page .secondary-cart-body,
  #order-standard_cart .on-review-checkout-page .secondary-cart-sidebar,
  #order-standard_cart .on-review-checkout-page #scrollingPanelContainer {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    flex: none !important;
  }

  #order-standard_cart .on-review-checkout-page .secondary-cart-sidebar,
  #order-standard_cart .on-review-checkout-page #scrollingPanelContainer {
    position: static !important;
    margin-top: 20px !important;
  }

  #order-standard_cart .on-review-checkout-page .on-checkout-account-switch {
    flex-direction: column !important;
    align-items: flex-start !important;
  }

  #order-standard_cart .on-review-checkout-page .on-checkout-account-switch .pull-right {
    width: 100% !important;
    flex-wrap: wrap !important;
  }

  #order-standard_cart .on-review-checkout-page .on-checkout-gateway-grid {
    grid-template-columns: 1fr !important;
  }
}

@media (max-width: 767px) {
  #order-standard_cart .on-review-checkout-page .view-cart-items-header {
    display: none !important;
  }

  #order-standard_cart .on-review-checkout-page .view-cart-items,
  #order-standard_cart .on-review-checkout-page .on-view-checkout-embed {
    border-radius: 14px !important;
  }

  #order-standard_cart .on-review-checkout-page .view-cart-items {
    padding: 0 18px !important;
  }

  #order-standard_cart .on-review-checkout-page .on-view-checkout-embed,
  #order-standard_cart .on-review-checkout-page .on-checkout-section {
    padding: 18px !important;
  }

  #order-standard_cart .on-review-checkout-page .empty-continue-button {
    flex-direction: column !important;
    align-items: stretch !important;
  }

  #order-standard_cart .on-review-checkout-page .btn-checkout,
  #order-standard_cart .on-review-checkout-page .on-checkout-pill-btn,
  #order-standard_cart .on-review-checkout-page .on-checkout-submit-btn,
  #order-standard_cart .on-review-checkout-page #btnExistingLogin,
  #order-standard_cart .on-review-checkout-page #btnAlreadyRegistered,
  #order-standard_cart .on-review-checkout-page #btnNewUserSignup,
  #order-standard_cart .on-review-checkout-page .generate-password {
    width: 100% !important;
  }
}

/* ============================================================
   Review + Checkout v2
   Lift confproduct shell literally and thread native cart logic
   through it instead of relying on legacy cart page structure.
   ============================================================ */
#order-standard_cart .on-review-shell,
#order-standard_cart .on-checkout-wrap {
  --cfg-max-w: 1460px;
  --cfg-sidebar-w: 454px;
  --cfg-col-gap: 72px;
  --cfg-pad-top: 12px;
  align-items: flex-start !important;
}

#order-standard_cart .on-review-shell {
  display: flex !important;
  align-items: flex-start !important;
  gap: var(--cfg-col-gap) !important;
  max-width: var(--cfg-max-w) !important;
  margin: 16px auto 56px !important;
  padding: 0 32px !important;
}

#order-standard_cart .on-review-main,
#order-standard_cart .on-checkout-main {
  flex: 1 1 648px !important;
  min-width: 0 !important;
  max-width: 648px !important;
  background: #ffffff !important;
  border: 1px solid #e5ebf3 !important;
  border-radius: 18px !important;
  box-shadow: 0 18px 44px rgba(15, 23, 42, 0.05) !important;
  padding: 28px 30px 34px !important;
}

#order-standard_cart .on-review-sidebar,
#order-standard_cart .on-checkout-sidebar,
#order-standard_cart #scrollingPanelContainer.on-review-sidebar,
#order-standard_cart #scrollingPanelContainer.on-checkout-sidebar {
  width: var(--cfg-sidebar-w) !important;
  max-width: var(--cfg-sidebar-w) !important;
  min-width: var(--cfg-sidebar-w) !important;
  position: sticky !important;
  top: 120px !important;
  align-self: flex-start !important;
  inset: auto !important;
  transform: none !important;
  margin-top: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

#order-standard_cart .on-review-header,
#order-standard_cart .on-checkout-header {
  margin-bottom: 22px !important;
  padding-bottom: 26px !important;
}

#order-standard_cart .on-review-title,
#order-standard_cart .on-checkout-title {
  margin-bottom: 8px !important;
}

#order-standard_cart .on-review-copy,
#order-standard_cart .on-checkout-copy {
  margin-bottom: 26px !important;
}

#order-standard_cart .on-review-cart-form,
#order-standard_cart .on-review-checkout-embed,
#order-standard_cart .recommendations-product-market-connect,
#order-standard_cart .view-cart-gateway-checkout {
  width: 100% !important;
}

#order-standard_cart .on-review-items-header,
#order-standard_cart .on-review-items,
#order-standard_cart .on-review-checkout-embed {
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}

#order-standard_cart .on-review-items-header {
  padding: 0 0 14px !important;
  margin: 0 !important;
  border-bottom: 1px solid #e5ebf3 !important;
}

#order-standard_cart .on-review-items {
  padding: 0 !important;
}

#order-standard_cart .on-review-items .item {
  padding: 22px 0 !important;
  border-bottom: 1px solid #e5ebf3 !important;
}

#order-standard_cart .on-review-items .item:last-child {
  border-bottom: 0 !important;
}

#order-standard_cart .on-review-actions {
  border-top: 1px solid #e5ebf3 !important;
  margin-top: 6px !important;
  padding-top: 22px !important;
}

#order-standard_cart .on-review-checkout-embed {
  margin-top: 28px !important;
  padding-top: 28px !important;
  border-top: 1px solid #e5ebf3 !important;
}

#order-standard_cart .on-review-checkout-page .on-view-checkout-stack,
#order-standard_cart .on-cfg-stack {
  display: flex !important;
  flex-direction: column !important;
  gap: 16px !important;
}

#order-standard_cart .on-review-checkout-page .on-checkout-section,
#order-standard_cart .on-checkout-wrap .on-checkout-section {
  margin: 0 !important;
  padding: 22px 24px !important;
  background: #ffffff !important;
  border: 1px solid #e5ebf3 !important;
  border-radius: 20px !important;
  box-shadow: none !important;
}

#order-standard_cart .on-checkout-wrap .on-final-card {
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  padding: 0 !important;
}

#order-standard_cart .on-checkout-wrap .on-final-card + .on-final-card {
  margin-top: 20px !important;
}

#order-standard_cart .on-checkout-wrap .on-final-card-header {
  margin: 0 0 16px !important;
  padding: 0 !important;
}

#order-standard_cart .on-checkout-wrap .on-final-card-title {
  font-size: 24px !important;
  line-height: 1.2 !important;
  font-weight: 700 !important;
  color: #0f172a !important;
}

#order-standard_cart .on-checkout-wrap .on-final-card-copy {
  margin-top: 6px !important;
  color: #667085 !important;
}

#order-standard_cart .on-review-summary-card,
#order-standard_cart .on-checkout-summary-card {
  background: #f8fafc !important;
  border: 1px solid #e5ebf3 !important;
  border-radius: 18px !important;
  box-shadow: none !important;
  overflow: hidden !important;
  width: 100% !important;
}

#order-standard_cart .on-review-summary-card .on-summary-title,
#order-standard_cart .on-checkout-summary-card .on-summary-title {
  padding: 22px 22px 10px !important;
  margin: 0 !important;
  color: #0f172a !important;
  font-size: 24px !important;
  font-weight: 700 !important;
}

#order-standard_cart .on-review-summary-card .on-summary-body,
#order-standard_cart .on-checkout-summary-card .on-summary-body {
  padding: 0 22px 22px !important;
}

#order-standard_cart .on-review-sidebar .on-cta-btn,
#order-standard_cart .on-checkout-sidebar .on-checkout-submit-btn {
  width: calc(100% - 40px) !important;
  margin: 16px auto 0 !important;
}

#order-standard_cart .on-review-sidebar .on-summary-guarantee,
#order-standard_cart .on-checkout-sidebar .on-summary-guarantee {
  margin-top: 14px !important;
}

#order-standard_cart .on-review-checkout-page .item-qty,
#order-standard_cart .on-checkout-wrap .item-qty {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  gap: 10px !important;
}

#order-standard_cart .on-review-checkout-page .item-qty input.form-control,
#order-standard_cart .on-checkout-wrap .item-qty input.form-control {
  width: 74px !important;
  min-width: 74px !important;
  min-height: 52px !important;
  border: 2px solid #4343f0 !important;
  border-radius: 20px !important;
  background: #ffffff !important;
  box-shadow: none !important;
}

#order-standard_cart .on-review-checkout-page .item-qty .btn,
#order-standard_cart .on-checkout-wrap .item-qty .btn {
  min-height: 32px !important;
  padding: 0 14px !important;
  border: 1.5px solid #d8dff0 !important;
  background: #ffffff !important;
  color: #0f172a !important;
  font-size: 12px !important;
  font-weight: 600 !important;
}

#order-standard_cart .on-review-checkout-page .promo-code-form,
#order-standard_cart .on-checkout-wrap .on-checkout-promo-form {
  margin-top: 14px !important;
}

#order-standard_cart .on-review-checkout-page .promo-code-form button,
#order-standard_cart .on-checkout-wrap .on-checkout-promo-form button {
  width: auto !important;
}

@media (max-width: 1199px) {
  #order-standard_cart .on-review-shell,
  #order-standard_cart .on-checkout-wrap {
    --cfg-sidebar-w: 380px !important;
    --cfg-col-gap: 36px !important;
    padding: 0 20px !important;
  }
}

@media (max-width: 1024px) {
  #order-standard_cart .on-review-shell,
  #order-standard_cart .on-checkout-wrap {
    display: flex !important;
    flex-direction: column !important;
    gap: 24px !important;
    padding: 0 16px !important;
    margin: 18px auto 36px !important;
    --cfg-sidebar-w: 100% !important;
    --cfg-col-gap: 24px !important;
  }

  #order-standard_cart .on-review-main,
  #order-standard_cart .on-checkout-main,
  #order-standard_cart .on-review-sidebar,
  #order-standard_cart .on-checkout-sidebar,
  #order-standard_cart #scrollingPanelContainer.on-review-sidebar,
  #order-standard_cart #scrollingPanelContainer.on-checkout-sidebar,
  #order-standard_cart .on-review-summary-card,
  #order-standard_cart .on-checkout-summary-card {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
  }

  #order-standard_cart .on-review-sidebar,
  #order-standard_cart .on-checkout-sidebar,
  #order-standard_cart #scrollingPanelContainer.on-review-sidebar,
  #order-standard_cart #scrollingPanelContainer.on-checkout-sidebar {
    position: static !important;
    top: auto !important;
    margin-top: 0 !important;
  }
}

@media (max-width: 767px) {
  #order-standard_cart .on-review-main,
  #order-standard_cart .on-checkout-main {
    padding: 22px 18px 26px !important;
    border-radius: 16px !important;
  }

  #order-standard_cart .on-review-actions {
    flex-direction: column !important;
    align-items: stretch !important;
  }

  #order-standard_cart .on-review-checkout-page .on-checkout-account-switch,
  #order-standard_cart .on-checkout-wrap .on-checkout-account-switch {
    flex-direction: column !important;
    align-items: flex-start !important;
  }

  #order-standard_cart .on-review-checkout-page .on-checkout-account-switch .pull-right,
  #order-standard_cart .on-checkout-wrap .on-checkout-account-switch .pull-right {
    width: 100% !important;
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 10px !important;
  }

  #order-standard_cart .on-review-main .row,
  #order-standard_cart .on-checkout-main .row,
  #order-standard_cart .on-live-checkout-accordion .row,
  body.whmcs-templatefile-viewcart #order-standard_cart .row,
  body.whmcs-templatefile-checkout #order-standard_cart .row {
    margin-left: 0 !important;
    margin-right: 0 !important;
  }

  #order-standard_cart .on-review-main .row > [class*="col-"],
  #order-standard_cart .on-checkout-main .row > [class*="col-"],
  #order-standard_cart .on-live-checkout-accordion .row > [class*="col-"],
  body.whmcs-templatefile-viewcart #order-standard_cart .row > [class*="col-"],
  body.whmcs-templatefile-checkout #order-standard_cart .row > [class*="col-"] {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }
}

/* Live review + checkout accordion pass */
#order-standard_cart .on-review-shell,
#order-standard_cart .on-checkout-wrap {
  --cfg-max-w: 1540px !important;
  --cfg-sidebar-w: 420px !important;
  --cfg-col-gap: 56px !important;
}

#order-standard_cart .on-review-main,
#order-standard_cart .on-checkout-main {
  flex: 1 1 760px !important;
  max-width: 760px !important;
}

#order-standard_cart .on-review-summary-card,
#order-standard_cart .on-checkout-summary-card {
  background: #ffffff !important;
}

#order-standard_cart .on-review-summary-card .on-summary-title,
#order-standard_cart .on-checkout-summary-card .on-summary-title {
  padding: 24px 24px 10px !important;
  font-size: 20px !important;
}

#order-standard_cart .on-review-summary-card .on-summary-body,
#order-standard_cart .on-checkout-summary-card .on-summary-body {
  padding: 0 24px 24px !important;
}

#order-standard_cart .on-live-checkout-accordion {
  display: flex !important;
  flex-direction: column !important;
  gap: 16px !important;
}

#order-standard_cart .on-checkout-accordion-card {
  border: 1px solid #e5ebf3 !important;
  border-radius: 18px !important;
  background: #ffffff !important;
  overflow: hidden !important;
}

#order-standard_cart .on-checkout-accordion-card .on-acc-toggle {
  width: 100% !important;
  border: 0 !important;
  background: #ffffff !important;
  appearance: none !important;
  -webkit-appearance: none !important;
  font: inherit !important;
  color: inherit !important;
  padding: 20px 24px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 16px !important;
  text-align: left !important;
}

#order-standard_cart .on-checkout-accordion-card .on-acc-toggle-main {
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
}

#order-standard_cart .on-checkout-accordion-card .on-acc-step {
  width: 28px !important;
  height: 28px !important;
  border-radius: 999px !important;
  border: 1.5px solid #d7dff0 !important;
  background: #ffffff !important;
  color: #4343f0 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  font-size: 12px !important;
  font-weight: 500 !important;
  line-height: 1 !important;
  flex-shrink: 0 !important;
  position: relative !important;
}

#order-standard_cart .on-checkout-accordion-card .on-acc-step::before {
  content: none !important;
}

#order-standard_cart .on-checkout-accordion-card.is-complete .on-acc-step {
  border-color: #86efac !important;
  background: #ecfdf3 !important;
  color: #16a34a !important;
}

#order-standard_cart .on-checkout-accordion-card .on-acc-title {
  color: #0f172a !important;
  font-size: 18px !important;
  font-weight: 500 !important;
  line-height: 1.2 !important;
}

#order-standard_cart .on-checkout-accordion-card .on-acc-summary {
  color: #667085 !important;
  font-size: 13px !important;
  line-height: 1.5 !important;
  display: block !important;
  margin-top: 6px !important;
}

#order-standard_cart .on-checkout-accordion-card .on-acc-toggle-main {
  align-items: flex-start !important;
  gap: 14px !important;
}

#order-standard_cart .on-live-checkout-accordion {
  display: block !important;
}

#order-standard_cart .on-checkout-accordion-card {
  margin-bottom: 16px !important;
}

#order-standard_cart .on-checkout-accordion-card:last-child {
  margin-bottom: 0 !important;
}

#order-standard_cart .on-checkout-accordion-card .on-acc-state-chip {
  display: none !important;
}

#order-standard_cart .on-checkout-accordion-card .on-acc-chevron {
  color: #667085 !important;
  transition: transform 0.18s ease !important;
  flex-shrink: 0 !important;
}

#order-standard_cart .on-checkout-accordion-card.is-open .on-acc-chevron {
  transform: rotate(180deg) !important;
}

#order-standard_cart .on-checkout-accordion-card .on-acc-body {
  display: none !important;
  padding: 0 24px 24px !important;
  border-top: 1px solid #e5ebf3 !important;
}

#order-standard_cart .on-checkout-accordion-card.is-open .on-acc-body {
  display: block !important;
}

#order-standard_cart .on-live-checkout-accordion .on-checkout-section {
  margin: 0 !important;
  padding: 18px 0 !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  border-top: 1px solid #edf2f7 !important;
  box-shadow: none !important;
}

#order-standard_cart .on-live-checkout-accordion .on-checkout-section:first-child {
  border-top: 0 !important;
}

#order-standard_cart .on-live-checkout-accordion .on-checkout-account-switch {
  padding-top: 20px !important;
}

#order-standard_cart .on-live-checkout-accordion .on-checkout-gateway-grid {
  display: flex !important;
  flex-direction: column !important;
  gap: 12px !important;
  margin-top: 8px !important;
}

#order-standard_cart .on-live-checkout-accordion .on-pay-option {
  display: block !important;
  margin: 0 !important;
  border: 1.5px solid #d8dff0 !important;
  border-radius: 14px !important;
  background: #ffffff !important;
  overflow: hidden !important;
  cursor: pointer !important;
}

#order-standard_cart .on-live-checkout-accordion .on-pay-option input[type="radio"] {
  position: absolute !important;
  opacity: 0 !important;
  pointer-events: none !important;
}

#order-standard_cart .on-live-checkout-accordion .on-pay-option .on-pay-head {
  width: 100% !important;
  border: 0 !important;
  background: transparent !important;
  appearance: none !important;
  -webkit-appearance: none !important;
  font: inherit !important;
  color: inherit !important;
  padding: 16px 18px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 12px !important;
}

#order-standard_cart .on-live-checkout-accordion .on-pay-option .on-pay-left {
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
}

#order-standard_cart .on-live-checkout-accordion .on-pay-option .on-pay-dot {
  width: 18px !important;
  height: 18px !important;
  border-radius: 999px !important;
  border: 1.5px solid #c7d2fe !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  flex-shrink: 0 !important;
}

#order-standard_cart .on-live-checkout-accordion .on-pay-option .on-pay-name {
  color: #0f172a !important;
  font-size: 15px !important;
  font-weight: 500 !important;
}

#order-standard_cart .on-live-checkout-accordion .on-pay-option.is-selected {
  border-color: #4343f0 !important;
  background: #f8faff !important;
}

#order-standard_cart .on-live-checkout-accordion .on-pay-option.is-selected .on-pay-dot::after {
  content: "" !important;
  width: 8px !important;
  height: 8px !important;
  border-radius: 999px !important;
  background: #4343f0 !important;
  display: block !important;
}

#order-standard_cart .on-live-checkout-accordion .cc-input-container,
#order-standard_cart .on-live-checkout-accordion #existingCardsContainer,
#order-standard_cart .on-live-checkout-accordion #existingCardInfo,
#order-standard_cart .on-live-checkout-accordion #newCardInfo,
#order-standard_cart .on-live-checkout-accordion #newCardSaveSettings {
  margin-top: 16px !important;
}

#order-standard_cart .on-checkout-consent-shell {
  margin-top: 20px !important;
  padding: 24px !important;
  background: #ffffff !important;
  border: 1px solid #e5ebf3 !important;
  border-radius: 18px !important;
}

#order-standard_cart .on-checkout-consent-shell:empty {
  display: none !important;
}

#order-standard_cart #btnCompleteOrder.w-hidden {
  display: none !important;
}

@media (max-width: 1199px) {
  #order-standard_cart .on-review-shell,
  #order-standard_cart .on-checkout-wrap {
    --cfg-sidebar-w: 380px !important;
    --cfg-col-gap: 36px !important;
  }
}

@media (max-width: 1024px) {
  #order-standard_cart .on-review-main,
  #order-standard_cart .on-checkout-main {
    max-width: 100% !important;
  }

  #order-standard_cart .on-checkout-accordion-card .on-acc-toggle,
  #order-standard_cart .on-checkout-accordion-card .on-acc-body {
    padding-left: 18px !important;
    padding-right: 18px !important;
  }
}

/* Fold 1 desktop pass: keep review + summary visually paired,
   and start the embedded checkout flow on its own surface below. */
#order-standard_cart .on-review-shell {
  align-items: flex-start !important;
}

#order-standard_cart .on-review-main {
  display: block !important;
}

#order-standard_cart .on-review-cart-form {
  margin-bottom: 0 !important;
}

#order-standard_cart .on-review-actions {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 16px !important;
}

#order-standard_cart .on-review-summary-card,
#order-standard_cart .on-review-sidebar #orderSummary {
  position: relative !important;
}

#order-standard_cart .on-review-sidebar,
#order-standard_cart #scrollingPanelContainer.on-review-sidebar {
  padding-top: 96px !important;
}

#order-standard_cart .on-review-checkout-embed {
  margin-top: 56px !important;
  padding: 28px 24px 24px !important;
  background: #ffffff !important;
  border: 1px solid #e5ebf3 !important;
  border-radius: 20px !important;
  box-shadow: 0 12px 30px rgba(15, 23, 42, 0.04) !important;
}

#order-standard_cart .on-review-next-step {
  margin-bottom: 24px !important;
  padding-bottom: 22px !important;
  border-bottom: 1px solid #e5ebf3 !important;
}

#order-standard_cart .on-review-next-step-label {
  display: inline-flex !important;
  align-items: center !important;
  min-height: 24px !important;
  padding: 0 12px !important;
  border-radius: 999px !important;
  background: #eef2ff !important;
  color: #4343f0 !important;
  font-size: 11px !important;
  font-weight: 500 !important;
  letter-spacing: 0.04em !important;
  text-transform: uppercase !important;
}

#order-standard_cart .on-review-next-step-title {
  margin: 14px 0 8px !important;
  color: #0f172a !important;
  font-size: 26px !important;
  line-height: 1.15 !important;
  font-weight: 500 !important;
}

#order-standard_cart .on-review-next-step-copy {
  margin: 0 !important;
  color: #667085 !important;
  font-size: 14px !important;
  line-height: 1.6 !important;
  max-width: 560px !important;
}

#order-standard_cart .on-review-checkout-embed .on-live-checkout-accordion {
  gap: 20px !important;
}

#order-standard_cart .on-review-checkout-embed .on-checkout-accordion-card[data-acc-card="account"] {
  border-color: #dbe4f0 !important;
  box-shadow: 0 10px 26px rgba(15, 23, 42, 0.04) !important;
}

#order-standard_cart .on-review-checkout-embed .on-checkout-accordion-card[data-acc-card="account"] .on-acc-toggle {
  padding: 24px 28px !important;
  background: #ffffff !important;
}

#order-standard_cart .on-review-checkout-embed .on-checkout-accordion-card[data-acc-card="account"] .on-acc-body {
  padding: 0 28px 28px !important;
  background: linear-gradient(180deg, #ffffff 0%, #fbfcff 100%) !important;
}

#order-standard_cart .on-review-checkout-embed .on-checkout-account-switch {
  margin-top: 20px !important;
  padding: 0 0 20px !important;
  border-bottom: 1px solid #e8edf5 !important;
}

#order-standard_cart .on-review-checkout-embed .on-checkout-account-switch-copy {
  max-width: 420px !important;
  line-height: 1.6 !important;
}

#order-standard_cart .on-review-checkout-embed .on-fold-two-panel,
#order-standard_cart .on-review-checkout-embed .on-account-pane {
  background: #ffffff !important;
  border: 1px solid #e5ebf3 !important;
  border-radius: 18px !important;
  padding: 20px 22px !important;
  box-shadow: 0 6px 18px rgba(15, 23, 42, 0.03) !important;
}

#order-standard_cart .on-review-checkout-embed .on-fold-two-panel.w-hidden,
#order-standard_cart .on-review-checkout-embed .on-account-pane.w-hidden,
#order-standard_cart .on-review-checkout-embed #containerNewUserSignup.w-hidden,
#order-standard_cart .on-review-checkout-embed #containerExistingUserSignin.w-hidden,
#order-standard_cart .on-review-checkout-embed #containerNewUserSecurity.w-hidden {
  display: none !important;
}

#order-standard_cart .on-review-checkout-embed #containerNewUserSignup,
#order-standard_cart .on-review-checkout-embed #containerExistingUserSignin,
#order-standard_cart .on-review-checkout-embed #containerNewUserSecurity {
  width: 100% !important;
}

#order-standard_cart .on-review-checkout-embed .on-fold-two-panel + .on-fold-two-panel,
#order-standard_cart .on-review-checkout-embed .on-account-pane + .on-account-pane {
  margin-top: 18px !important;
}

#order-standard_cart .on-review-checkout-embed .on-checkout-login-section .row,
#order-standard_cart .on-review-checkout-embed #containerNewUserSignup .row,
#order-standard_cart .on-review-checkout-embed .on-checkout-domain-section .row,
#order-standard_cart .on-review-checkout-embed .on-checkout-security-section .row,
#order-standard_cart .on-review-checkout-embed .on-checkout-extra-section .row {
  row-gap: 16px !important;
}

#order-standard_cart .on-review-checkout-embed .personal-info-sec .sub-heading,
#order-standard_cart .on-review-checkout-embed .billing-info .sub-heading,
#order-standard_cart .on-review-checkout-embed .custom-field-info .sub-heading,
#order-standard_cart .on-review-checkout-embed .on-checkout-login-section .sub-heading,
#order-standard_cart .on-review-checkout-embed .on-checkout-account-section .sub-heading,
#order-standard_cart .on-review-checkout-embed .on-checkout-security-section .sub-heading,
#order-standard_cart .on-review-checkout-embed .on-checkout-domain-section .sub-heading,
#order-standard_cart .on-review-checkout-embed .on-checkout-extra-section .sub-heading {
  margin-bottom: 18px !important;
}

#order-standard_cart .on-review-checkout-embed .personal-info-sec .sub-heading span,
#order-standard_cart .on-review-checkout-embed .billing-info .sub-heading span,
#order-standard_cart .on-review-checkout-embed .custom-field-info .sub-heading span,
#order-standard_cart .on-review-checkout-embed .on-checkout-login-section .sub-heading span,
#order-standard_cart .on-review-checkout-embed .on-checkout-account-section .sub-heading span,
#order-standard_cart .on-review-checkout-embed .on-checkout-security-section .sub-heading span,
#order-standard_cart .on-review-checkout-embed .on-checkout-domain-section .sub-heading span,
#order-standard_cart .on-review-checkout-embed .on-checkout-extra-section .sub-heading span {
  font-size: 20px !important;
  font-weight: 500 !important;
  color: #0f172a !important;
}

#order-standard_cart .on-review-checkout-embed .on-account-pane-billing,
#order-standard_cart .on-review-checkout-embed .on-account-pane-aux {
  margin-top: 18px !important;
}

#order-standard_cart .on-review-checkout-embed #containerNewUserSignup .billing-info,
#order-standard_cart .on-review-checkout-embed #containerNewUserSignup .custom-field-info {
  border-top: 0 !important;
  padding-top: 20px !important;
}

#order-standard_cart .on-review-checkout-embed #containerNewUserSignup .col-sm-12 .form-group,
#order-standard_cart .on-review-checkout-embed #containerNewUserSignup .col-sm-6 .form-group,
#order-standard_cart .on-review-checkout-embed #containerNewUserSignup .col-sm-5 .form-group,
#order-standard_cart .on-review-checkout-embed #containerNewUserSignup .col-sm-4 .form-group,
#order-standard_cart .on-review-checkout-embed #containerNewUserSignup .col-sm-3 .form-group,
#order-standard_cart .on-review-checkout-embed .on-checkout-login-section .form-group,
#order-standard_cart .on-review-checkout-embed .on-checkout-security-section .form-group {
  margin-bottom: 0 !important;
}

#order-standard_cart .on-review-checkout-embed .on-checkout-login-section .text-center,
#order-standard_cart .on-review-checkout-embed .on-checkout-security-section .text-center {
  height: 100% !important;
  display: flex !important;
  align-items: flex-end !important;
  justify-content: center !important;
}

#order-standard_cart .on-review-checkout-embed .account-select-container .account {
  border: 1px solid #dbe4f0 !important;
  border-radius: 16px !important;
  padding: 16px 18px !important;
  background: #ffffff !important;
  height: 100% !important;
}

#order-standard_cart .on-review-checkout-embed .account-select-container .account.active {
  border-color: #4343f0 !important;
  box-shadow: 0 0 0 3px rgba(67, 67, 240, 0.08) !important;
  background: #f8faff !important;
}

#order-standard_cart .on-review-checkout-embed .password-strength-meter {
  min-height: 46px !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: flex-end !important;
}

#order-standard_cart .on-review-fold {
  border-radius: 20px !important;
  transition: box-shadow 0.22s ease, background-color 0.22s ease !important;
}

#order-standard_cart .on-review-fold.on-fold-in-view {
  box-shadow: 0 10px 24px rgba(15, 23, 42, 0.045) !important;
}

#order-standard_cart .on-checkout-final-stage {
  margin-top: 28px !important;
  padding: 24px !important;
  background: #ffffff !important;
  border: 1px solid #e5ebf3 !important;
  border-radius: 20px !important;
  box-shadow: 0 12px 30px rgba(15, 23, 42, 0.04) !important;
}

#order-standard_cart .on-checkout-final-stage-intro {
  margin-bottom: 24px !important;
  padding-bottom: 22px !important;
  border-bottom: 1px solid #e5ebf3 !important;
}

#order-standard_cart .on-checkout-final-stage-label {
  display: inline-flex !important;
  align-items: center !important;
  min-height: 24px !important;
  padding: 0 12px !important;
  border-radius: 999px !important;
  background: #eef2ff !important;
  color: #4343f0 !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  letter-spacing: 0.04em !important;
  text-transform: uppercase !important;
}

#order-standard_cart .on-checkout-final-stage-title {
  margin: 14px 0 8px !important;
  color: #0f172a !important;
  font-size: 26px !important;
  line-height: 1.15 !important;
  font-weight: 700 !important;
}

#order-standard_cart .on-checkout-final-stage-copy {
  margin: 0 !important;
  color: #667085 !important;
  font-size: 14px !important;
  line-height: 1.6 !important;
  max-width: 560px !important;
}

#order-standard_cart .on-checkout-final-stage .on-final-accordion-card + .on-final-accordion-card {
  margin-top: 18px !important;
}

#order-standard_cart .on-checkout-final-stage .on-final-accordion-card {
  border-color: #dbe4f0 !important;
  box-shadow: 0 8px 20px rgba(15, 23, 42, 0.03) !important;
}

#order-standard_cart .on-checkout-final-stage .on-final-accordion-card .on-acc-toggle {
  padding: 22px 24px !important;
}

#order-standard_cart .on-checkout-final-stage .on-final-accordion-card .on-acc-body {
  padding: 0 24px 24px !important;
  background: linear-gradient(180deg, #ffffff 0%, #fbfcff 100%) !important;
}

#order-standard_cart .on-checkout-final-stage .on-checkout-payment-section,
#order-standard_cart .on-checkout-final-stage .on-checkout-notes-section,
#order-standard_cart .on-checkout-final-stage .on-checkout-marketing-section,
#order-standard_cart .on-checkout-final-stage .on-checkout-credit-section {
  background: #ffffff !important;
  border: 1px solid #e5ebf3 !important;
  border-radius: 18px !important;
  padding: 20px 22px !important;
  box-shadow: 0 6px 18px rgba(15, 23, 42, 0.03) !important;
}

#order-standard_cart .on-checkout-final-stage .on-checkout-payment-section .sub-heading,
#order-standard_cart .on-checkout-final-stage .on-checkout-notes-section .sub-heading {
  margin-bottom: 18px !important;
}

#order-standard_cart .on-checkout-final-stage .on-checkout-payment-section .sub-heading span,
#order-standard_cart .on-checkout-final-stage .on-checkout-notes-section .sub-heading span {
  font-size: 20px !important;
  font-weight: 700 !important;
}

#order-standard_cart .on-checkout-final-stage .on-checkout-gateway-grid {
  margin-top: 14px !important;
}

#order-standard_cart .on-checkout-final-stage .on-checkout-consent-shell {
  margin-top: 22px !important;
  padding: 22px 24px !important;
  border: 1px solid #dbe4f0 !important;
  border-radius: 18px !important;
  box-shadow: 0 8px 22px rgba(15, 23, 42, 0.03) !important;
}

#order-standard_cart .on-checkout-final-stage #btnCompleteOrder {
  min-width: 240px !important;
  min-height: 50px !important;
  border-radius: 999px !important;
}

#order-standard_cart .on-review-checkout-page .form-control,
#order-standard_cart .on-review-checkout-page .field,
#order-standard_cart .on-review-checkout-page select.field,
#order-standard_cart .on-review-checkout-page select.form-control,
#order-standard_cart .on-checkout-wrap .form-control,
#order-standard_cart .on-checkout-wrap .field,
#order-standard_cart .on-checkout-wrap select.field,
#order-standard_cart .on-checkout-wrap select.form-control,
#order-standard_cart .on-review-checkout-page textarea.form-control,
#order-standard_cart .on-review-checkout-page textarea.field,
#order-standard_cart .on-checkout-wrap textarea.form-control,
#order-standard_cart .on-checkout-wrap textarea.field,
#order-standard_cart .on-review-checkout-page .item-qty input.form-control {
  border-color: #d8dff0 !important;
  box-shadow: none !important;
  transition: border-color 0.18s ease, box-shadow 0.18s ease, background-color 0.18s ease !important;
}

#order-standard_cart .on-review-checkout-page .form-control:focus,
#order-standard_cart .on-review-checkout-page .field:focus,
#order-standard_cart .on-review-checkout-page select.field:focus,
#order-standard_cart .on-review-checkout-page select.form-control:focus,
#order-standard_cart .on-checkout-wrap .form-control:focus,
#order-standard_cart .on-checkout-wrap .field:focus,
#order-standard_cart .on-checkout-wrap select.field:focus,
#order-standard_cart .on-checkout-wrap select.form-control:focus,
#order-standard_cart .on-review-checkout-page textarea.form-control:focus,
#order-standard_cart .on-review-checkout-page textarea.field:focus,
#order-standard_cart .on-checkout-wrap textarea.form-control:focus,
#order-standard_cart .on-checkout-wrap textarea.field:focus,
#order-standard_cart .on-review-checkout-page .item-qty input.form-control:focus,
#order-standard_cart .on-review-checkout-page .form-control.on-has-value,
#order-standard_cart .on-review-checkout-page .field.on-has-value,
#order-standard_cart .on-review-checkout-page select.field.on-has-value,
#order-standard_cart .on-review-checkout-page select.form-control.on-has-value,
#order-standard_cart .on-checkout-wrap .form-control.on-has-value,
#order-standard_cart .on-checkout-wrap .field.on-has-value,
#order-standard_cart .on-checkout-wrap select.field.on-has-value,
#order-standard_cart .on-checkout-wrap select.form-control.on-has-value,
#order-standard_cart .on-review-checkout-page textarea.form-control.on-has-value,
#order-standard_cart .on-review-checkout-page textarea.field.on-has-value,
#order-standard_cart .on-checkout-wrap textarea.form-control.on-has-value,
#order-standard_cart .on-checkout-wrap textarea.field.on-has-value,
#order-standard_cart .on-review-checkout-page .item-qty input.form-control.on-has-value {
  border-color: #4343f0 !important;
  box-shadow: 0 0 0 3px rgba(67, 67, 240, 0.08) !important;
}

#order-standard_cart .on-review-checkout-page .on-checkout-pill-btn,
#order-standard_cart .on-review-checkout-page .item-qty .btn,
#order-standard_cart .on-review-checkout-page #continueShopping,
#order-standard_cart .on-review-checkout-page #btnEmptyCart,
#order-standard_cart .on-checkout-wrap .on-checkout-pill-btn {
  border-color: #d8dff0 !important;
  transition: border-color 0.18s ease, box-shadow 0.18s ease, color 0.18s ease, background-color 0.18s ease !important;
}

#order-standard_cart .on-review-checkout-page .on-checkout-pill-btn:focus-visible,
#order-standard_cart .on-review-checkout-page .item-qty .btn:focus-visible,
#order-standard_cart .on-review-checkout-page #continueShopping:focus-visible,
#order-standard_cart .on-review-checkout-page #btnEmptyCart:focus-visible,
#order-standard_cart .on-checkout-wrap .on-checkout-pill-btn:focus-visible,
#order-standard_cart .on-review-checkout-page .on-checkout-pill-btn.on-is-current,
#order-standard_cart .on-checkout-wrap .on-checkout-pill-btn.on-is-current {
  border-color: #4343f0 !important;
  box-shadow: 0 0 0 3px rgba(67, 67, 240, 0.08) !important;
}

#order-standard_cart .on-review-checkout-embed .on-view-checkout-stack {
  gap: 20px !important;
}

@media (max-width: 1024px) {
  #order-standard_cart .on-review-sidebar,
  #order-standard_cart #scrollingPanelContainer.on-review-sidebar {
    padding-top: 0 !important;
  }

  #order-standard_cart .on-review-checkout-embed {
    margin-top: 28px !important;
    padding: 18px !important;
  }

  #order-standard_cart .on-review-next-step {
    margin-bottom: 18px !important;
    padding-bottom: 18px !important;
  }

  #order-standard_cart .on-review-next-step-title {
    font-size: 22px !important;
  }

  #order-standard_cart .on-review-checkout-embed .on-checkout-accordion-card[data-acc-card="account"] .on-acc-toggle,
  #order-standard_cart .on-review-checkout-embed .on-checkout-accordion-card[data-acc-card="account"] .on-acc-body {
    padding-left: 18px !important;
    padding-right: 18px !important;
  }

  #order-standard_cart .on-review-checkout-embed .on-fold-two-panel,
  #order-standard_cart .on-review-checkout-embed .on-account-pane {
    padding: 18px !important;
  }

  #order-standard_cart .on-checkout-final-stage {
    margin-top: 24px !important;
    padding: 18px !important;
  }

  #order-standard_cart .on-checkout-final-stage .on-final-accordion-card .on-acc-toggle,
  #order-standard_cart .on-checkout-final-stage .on-final-accordion-card .on-acc-body {
    padding-left: 18px !important;
    padding-right: 18px !important;
  }

  #order-standard_cart .on-checkout-final-stage-title {
    font-size: 22px !important;
  }
}


/* ============================================================
   viewcart page polish  (items 1-6, 28-Apr-2026)
   ============================================================ */

/* 1. Remove "Shopping Cart" breadcrumb on cart view page */
body.whmcs-templatefile-viewcart .master-breadcrumb,
body.whmcs-templatefile-viewcart .hostx-bread-crumb-data {
  display: none !important;
}

/* 2. Remove "Added to cart" badge */
body.whmcs-templatefile-viewcart .on-added-badge {
  display: none !important;
}

/* 3. Remove "Your cart" sub-label & hide the whole header block
      (badge + "Your cart" p) — collapse it entirely */
body.whmcs-templatefile-viewcart .on-cfg-product-header.on-review-header {
  display: none !important;
}

/* 3b. Remove "Your Cart" page-level heading */
body.whmcs-templatefile-viewcart .heading-sec-cart,
body.whmcs-templatefile-viewcart .category-heading-section-cart {
  display: none !important;
}

/* 4. "Review & Checkout" is already the H1 — boost it as the visual page title */
body.whmcs-templatefile-viewcart .on-cfg-h1.on-review-title {
  font-size: 2rem !important;
  font-weight: 500 !important;
  margin-top: 0 !important;
  margin-bottom: 8px !important;
}

/* 5. Top & bottom padding to separate the two columns from the outer frame;
      align both columns to the same starting Y */
body.whmcs-templatefile-viewcart #order-standard_cart.hostx-cart-body-section {
  padding-top: 40px !important;
  padding-bottom: 40px !important;
}

body.whmcs-templatefile-viewcart .on-cfg-wrap.on-review-checkout-page {
  padding: 0 !important;
}

body.whmcs-templatefile-viewcart .cart-body {
  padding: 0 !important;
}

/* Make the row a proper CSS grid so columns start on the same line */
body.whmcs-templatefile-viewcart #order-standard_cart .on-review-checkout-page > .cart-body > .row {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) 360px !important;
  gap: 28px !important;
  align-items: start !important;
}

/* 6. Fix sidebar overlap — ensure sidebar fits within the grid track */
body.whmcs-templatefile-viewcart .secondary-cart-sidebar,
body.whmcs-templatefile-viewcart #scrollingPanelContainer {
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  box-sizing: border-box !important;
}

/* Ensure the left column also fills its track and doesn't overflow */
body.whmcs-templatefile-viewcart .secondary-cart-body.on-cfg-main {
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  box-sizing: border-box !important;
}

/* 6b. Higher-specificity fix: override the on-review-sidebar width rule.
   The rule #order-standard_cart .on-review-sidebar sets width: var(--cfg-sidebar-w)=420px
   (specificity 1,1,0). Adding body class raises ours to 1,2,0 and wins. */
body.whmcs-templatefile-viewcart #order-standard_cart .on-review-sidebar,
body.whmcs-templatefile-viewcart #order-standard_cart #scrollingPanelContainer.on-review-sidebar {
	  width: 100% !important;
	  max-width: 100% !important;
	  min-width: 0 !important;
	  box-sizing: border-box !important;
}

/* Reset the CSS variable on the review shell so downstream rules also get 100% */
body.whmcs-templatefile-viewcart #order-standard_cart .on-review-shell {
	  --cfg-sidebar-w: 100% !important;
}

/* ============================================================
   Phase 5: Cart body shadow removal + sidebar alignment + mobile fixes
   ============================================================ */

/* 7. Remove box-shadow from cart-body on the Review & Checkout page */
body.whmcs-templatefile-viewcart #order-standard_cart .cart-body {
	    box-shadow: none !important;
	    background: #fff !important;
	    border-radius: 5px !important;
}

/* 8. Fix sidebar padding-top so it aligns with the left column.
   The previous session set padding-top: 96px which was too high.
   Set to 0px so both columns start on the same horizontal line. */
body.whmcs-templatefile-viewcart #order-standard_cart .on-review-sidebar,
body.whmcs-templatefile-viewcart #order-standard_cart #scrollingPanelContainer.on-review-sidebar {
	    padding-top: 0px !important;
}


/* 9. Mobile layout fixes for Review & Checkout page (<=768px) */
@media (max-width: 768px) {
    body.whmcs-templatefile-viewcart #order-standard_cart .on-review-shell,
    body.whmcs-templatefile-viewcart #order-standard_cart .on-review-checkout-page {
        display: flex !important;
        flex-direction: column !important;
        padding: 0 12px !important;
        gap: 20px !important;
        width: 100% !important;
        box-sizing: border-box !important;
    }
    body.whmcs-templatefile-viewcart #order-standard_cart .on-review-shell .cart-body,
    body.whmcs-templatefile-viewcart #order-standard_cart .on-review-checkout-page .cart-body {
        width: 100% !important;
        min-width: 0 !important;
        overflow: hidden !important;
        box-sizing: border-box !important;
    }
    body.whmcs-templatefile-viewcart #order-standard_cart .on-review-main,
    body.whmcs-templatefile-viewcart #order-standard_cart .on-review-sidebar,
    body.whmcs-templatefile-viewcart #order-standard_cart #scrollingPanelContainer.on-review-sidebar {
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        padding-left: 0 !important;
        padding-right: 0 !important;
        padding-top: 0 !important;
        box-sizing: border-box !important;
        position: static !important;
    }
    body.whmcs-templatefile-viewcart #order-standard_cart .row {
        margin-left: 0 !important;
        margin-right: 0 !important;
    }
    body.whmcs-templatefile-viewcart #order-standard_cart .row > [class*="col-"] {
        padding-left: 0 !important;
        padding-right: 0 !important;
        width: 100% !important;
        max-width: 100% !important;
        flex: 0 0 100% !important;
    }
    body.whmcs-templatefile-viewcart #order-standard_cart .on-checkout-account-switch {
        display: flex !important;
        flex-direction: column !important;
        align-items: flex-start !important;
        gap: 12px !important;
    }
    body.whmcs-templatefile-viewcart #order-standard_cart .on-checkout-account-switch .pull-right,
    body.whmcs-templatefile-viewcart #order-standard_cart .on-checkout-account-switch .float-right {
        float: none !important;
        display: flex !important;
        flex-wrap: wrap !important;
        gap: 10px !important;
        width: 100% !important;
    }
    body.whmcs-templatefile-viewcart #order-standard_cart .on-checkout-account-switch p {
        width: 100% !important;
        overflow: visible !important;
    }
    body.whmcs-templatefile-viewcart #order-standard_cart .form-control,
    body.whmcs-templatefile-viewcart #order-standard_cart input[type="text"],
    body.whmcs-templatefile-viewcart #order-standard_cart input[type="email"],
    body.whmcs-templatefile-viewcart #order-standard_cart input[type="tel"],
    body.whmcs-templatefile-viewcart #order-standard_cart select,
    body.whmcs-templatefile-viewcart #order-standard_cart textarea {
        width: 100% !important;
        box-sizing: border-box !important;
    }
    body.whmcs-templatefile-viewcart #order-standard_cart .on-acc-body {
        padding: 16px !important;
        box-sizing: border-box !important;
        overflow: hidden !important;
    }
    body.whmcs-templatefile-viewcart #order-standard_cart {
        overflow-x: hidden !important;
    }
}

/* ── Issue: Dropdown overlapping on desktop and mobile ──────
   The .on-cfg-section has z-index:1 + position:relative creating
   stacking contexts. Fix: give the term-dropdown section a higher
   z-index so it renders above the sections below it.
   Also: apply display:contents to the form on all breakpoints
   so .on-cfg-sidebar order:-1 works on mobile too.
   ────────────────────────────────────────────────────────── */

/* Fix dropdown z-index stacking context issue */
#order-standard_cart .on-cfg-main > .on-cfg-section:has(.on-term-dropdown) {
  z-index: 10 !important;
}

/* Fallback for browsers that don't support :has() */
#order-standard_cart .on-term-dropdown {
  z-index: 100 !important;
}

#order-standard_cart .on-term-menu {
  z-index: 110 !important;
}

/* Fix Continue to Cart button on mobile: apply display:contents to 
   form so flex order works at all breakpoints */
body.whmcs-templatefile-configureproduct #order-standard_cart .on-cfg-wrap > form,
body.whmcs-templatefile-configureproduct #order-standard_cart .on-cfg-wrap > form > .cart-body,
body.whmcs-templatefile-configureproduct #order-standard_cart .on-cfg-wrap > form > .cart-body > .row {
  display: contents !important;
}

/* On mobile, show sidebar (Continue to Cart) above the main form content */
@media (max-width: 900px) {
  body.whmcs-templatefile-configureproduct #order-standard_cart .on-cfg-sidebar {
    order: -1 !important;
  }
}

/* 2026-04-28: confproduct stabilization */
body.whmcs-templatefile-configureproduct .primary-content > div[style*="background-color:#ffffd2"],
body.whmcs-templatefile-configureproduct .primary-content > div[style*="background-color: #ffffd2"] {
  display: none !important;
}

body.whmcs-templatefile-configureproduct #order-standard_cart .on-cfg-main,
body.whmcs-templatefile-configureproduct #order-standard_cart .on-cfg-section,
body.whmcs-templatefile-configureproduct #order-standard_cart #productConfigurableOptions {
  overflow: visible !important;
}

body.whmcs-templatefile-configureproduct #order-standard_cart .on-cfg-section:has(.on-term-dropdown) {
  position: relative !important;
  z-index: 12 !important;
}

body.whmcs-templatefile-configureproduct #order-standard_cart .on-term-dropdown {
  position: relative !important;
  z-index: 20 !important;
}

body.whmcs-templatefile-configureproduct #order-standard_cart .on-term-menu {
  position: static !important;
  left: auto !important;
  right: auto !important;
  top: auto !important;
  margin-top: 12px !important;
  max-height: none !important;
}

body.whmcs-templatefile-configureproduct #order-standard_cart .on-term-dropdown.is-open .on-term-trigger {
  visibility: visible !important;
}

body.whmcs-templatefile-configureproduct #order-standard_cart .on-cfg-section:has(.on-term-dropdown.is-open) {
  margin-bottom: 0 !important;
}

@media (max-width: 1024px) {
  body.whmcs-templatefile-configureproduct #order-standard_cart .on-cfg-wrap {
    display: flex !important;
    flex-direction: column !important;
    gap: 20px !important;
    padding: 0 16px !important;
  }

  body.whmcs-templatefile-configureproduct #order-standard_cart .on-cfg-main,
  body.whmcs-templatefile-configureproduct #order-standard_cart .on-cfg-sidebar,
  body.whmcs-templatefile-configureproduct #order-standard_cart #scrollingPanelContainer,
  body.whmcs-templatefile-configureproduct #order-standard_cart .on-summary-wrap,
  body.whmcs-templatefile-configureproduct #order-standard_cart .on-summary-card {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
  }

  body.whmcs-templatefile-configureproduct #order-standard_cart .on-cfg-main {
    padding: 22px 18px 24px !important;
  }

  body.whmcs-templatefile-configureproduct #order-standard_cart .on-cfg-sidebar,
  body.whmcs-templatefile-configureproduct #order-standard_cart #scrollingPanelContainer {
    position: static !important;
    top: auto !important;
    order: 2 !important;
    margin-top: 0 !important;
  }

  body.whmcs-templatefile-configureproduct #order-standard_cart .on-cfg-section:has(.on-term-dropdown.is-open) {
    margin-bottom: 0 !important;
  }
}

@media (max-width: 600px) {
  body.whmcs-templatefile-configureproduct #order-standard_cart .on-cfg-main {
    padding: 20px 16px 22px !important;
  }

  body.whmcs-templatefile-configureproduct #order-standard_cart .on-term-trigger,
  body.whmcs-templatefile-configureproduct #order-standard_cart .on-term-option {
    grid-template-columns: minmax(0, 1fr) auto 18px !important;
    gap: 10px !important;
    padding: 14px !important;
  }

  body.whmcs-templatefile-configureproduct #order-standard_cart .on-term-card-left,
  body.whmcs-templatefile-configureproduct #order-standard_cart .on-term-card-right {
    min-width: 0 !important;
  }

  body.whmcs-templatefile-configureproduct #order-standard_cart .on-summary-title,
  body.whmcs-templatefile-configureproduct #order-standard_cart .on-summary-body {
    padding-left: 18px !important;
    padding-right: 18px !important;
  }

  body.whmcs-templatefile-configureproduct #order-standard_cart .on-cta-btn,
  body.whmcs-templatefile-configureproduct #order-standard_cart #btnCompleteProductConfig {
    width: 100% !important;
  }
}

/* ============================================================
   AUTH PAGES — login / register aligned to OneNet public site
   ============================================================ */
body.whmcs-templatefile-login #main-body.hostx-latest-login-register-view,
body.whmcs-templatefile-clientregister #main-body.hostx-latest-login-register-view,
body.whmcs-templatefile-password-reset-container #main-body.hostx-latest-login-register-view {
  background:
    radial-gradient(circle at top left, rgba(67, 67, 240, 0.12), transparent 28%),
    radial-gradient(circle at bottom right, rgba(104, 104, 243, 0.14), transparent 26%),
    linear-gradient(180deg, #f7f7ff 0%, #fbfbff 52%, #ffffff 100%) !important;
  background-image:
    radial-gradient(circle at top left, rgba(67, 67, 240, 0.12), transparent 28%),
    radial-gradient(circle at bottom right, rgba(104, 104, 243, 0.14), transparent 26%),
    linear-gradient(180deg, #f7f7ff 0%, #fbfbff 52%, #ffffff 100%) !important;
  min-height: 100vh !important;
  padding: 36px 20px 56px !important;
}

body.whmcs-templatefile-login .hostx-latest-login-register-view,
body.whmcs-templatefile-clientregister .hostx-latest-login-register-view,
body.whmcs-templatefile-password-reset-container .hostx-latest-login-register-view {
  background: transparent !important;
  background-image: none !important;
}

body.whmcs-templatefile-login .latest-hostx-login-register-pg,
body.whmcs-templatefile-clientregister .latest-hostx-login-register-pg,
body.whmcs-templatefile-password-reset-container .latest-hostx-login-register-pg {
  width: 100%;
  max-width: 1180px;
  margin: 0 auto;
  padding: 0 !important;
}

body.whmcs-templatefile-login .logo-section-latest-view,
body.whmcs-templatefile-clientregister .logo-section-latest-view,
body.whmcs-templatefile-password-reset-container .logo-section-latest-view {
  display: flex;
  justify-content: center;
  margin-bottom: 22px;
}

.onenet-auth-brand {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  text-decoration: none !important;
}

.onenet-auth-brand img {
  width: 36px !important;
  height: 36px !important;
  max-width: none !important;
  margin: 0 !important;
}

body.whmcs-templatefile-login .latest-hostx-login-register-pg .login-latest-panel,
body.whmcs-templatefile-clientregister .register-form-latest-v {
  border: 1px solid var(--on-border-l) !important;
  border-radius: 28px !important;
  background: rgba(255, 255, 255, 0.92) !important;
  box-shadow: 0 18px 48px rgba(15, 15, 26, 0.08) !important;
  backdrop-filter: blur(16px);
}

body.whmcs-templatefile-login .latest-hostx-login-register-pg .login-latest-panel {
  max-width: 640px !important;
  margin: 0 auto !important;
  padding: 42px 42px 36px !important;
}

body.whmcs-templatefile-clientregister .register-form-latest-v {
  display: grid !important;
  grid-template-columns: minmax(0, 1.15fr) minmax(320px, 0.85fr);
  gap: 36px;
  align-items: start;
  padding: 36px !important;
  margin: 0 !important;
}

body.whmcs-templatefile-clientregister .register-form-latest-v .register-left-view,
body.whmcs-templatefile-clientregister .register-form-latest-v .register-right-view {
  max-width: none !important;
  width: 100% !important;
  padding: 0 !important;
}

body.whmcs-templatefile-clientregister .register-form-latest-v .register-social-signup-view {
  display: none !important;
}

body.whmcs-templatefile-clientregister .register-form-latest-v .register-left-view {
  grid-column: 1 !important;
  grid-row: 1 !important;
  border-right: 1px solid var(--on-border-l) !important;
  padding-right: 36px !important;
}

body.whmcs-templatefile-clientregister .register-form-latest-v .register-right-view {
  grid-column: 2 !important;
  grid-row: 1 !important;
  padding-left: 0 !important;
  align-self: start !important;
}

body.whmcs-templatefile-login .latest-hostx-login-register-pg .heading-mn,
body.whmcs-templatefile-clientregister .latest-register-page-v h3.card-title,
body.whmcs-templatefile-password-reset-container .reset-psw-uper-info .psw-rest-title {
  color: var(--on-text) !important;
}

body.whmcs-templatefile-login .latest-hostx-login-register-pg .heading-mn,
body.whmcs-templatefile-clientregister .register-auth-header .auth-page-title,
body.whmcs-templatefile-password-reset-container .reset-psw-uper-info .psw-rest-title {
  font-family: Inter, "Open Sans", sans-serif !important;
  font-weight: 500 !important;
}

body.whmcs-templatefile-login .latest-hostx-login-register-pg .heading-mn {
  font-size: clamp(2rem, 4vw, 2.75rem) !important;
  line-height: 1.05 !important;
  letter-spacing: -0.04em;
  margin-bottom: 10px !important;
}

body.whmcs-templatefile-clientregister .register-auth-header {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  text-align: center !important;
  margin: 0 auto 22px !important;
  max-width: 640px;
  width: 100% !important;
}

body.whmcs-templatefile-clientregister .register-auth-header .auth-page-title {
  color: var(--on-text) !important;
  font-size: clamp(2rem, 4vw, 2.7rem) !important;
  line-height: 1.05 !important;
  letter-spacing: -0.04em;
  margin: 0 0 10px !important;
}

body.whmcs-templatefile-login .latest-hostx-login-register-pg .head-descrp-mn-sec {
  margin-bottom: 24px !important;
}

body.whmcs-templatefile-login .latest-hostx-login-register-pg .head-descrp-mn-sec:after {
  display: none !important;
}

body.whmcs-templatefile-login .latest-hostx-login-register-pg .head-descrp-mn {
  background: transparent !important;
  color: var(--on-muted) !important;
  font-size: 16px !important;
  line-height: 1.6 !important;
  max-width: none !important;
  margin: 0 !important;
}

body.whmcs-templatefile-clientregister .register-auth-header .auth-page-subtitle {
  background: transparent !important;
  color: var(--on-muted) !important;
  font-size: 16px !important;
  line-height: 1.6 !important;
  max-width: 100% !important;
  width: 100% !important;
  margin: 0 !important;
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
  text-align: center !important;
}

body.whmcs-templatefile-login .latest-hostx-login-register-pg .login-panel-social-sign-in,
body.whmcs-templatefile-clientregister .register-social-signup-view {
  margin-bottom: 24px !important;
}

body.whmcs-templatefile-login .latest-hostx-login-register-pg .providerPreLinking,
body.whmcs-templatefile-clientregister .register-social-signup-view .providerPreLinking {
  margin: 0 !important;
  padding: 0 !important;
}

body.whmcs-templatefile-login .latest-hostx-login-register-pg .form-group,
body.whmcs-templatefile-clientregister .register-form-latest-v .form-group {
  margin-bottom: 14px !important;
}

body.whmcs-templatefile-login .latest-hostx-login-register-pg .form-control,
body.whmcs-templatefile-clientregister .latest-register-page-v .field,
body.whmcs-templatefile-clientregister .latest-register-page-v .form-control,
body.whmcs-templatefile-password-reset-container .latest-hostx-login-register-pg .form-control {
  min-height: 56px !important;
  height: 56px !important;
  border-radius: 16px !important;
  border: 1.5px solid var(--on-border) !important;
  background: #ffffff !important;
  color: var(--on-text) !important;
  font-size: 15px !important;
  padding: 0 16px !important;
  box-shadow: none !important;
}

body.whmcs-templatefile-login .latest-hostx-login-register-pg .form-control::placeholder,
body.whmcs-templatefile-clientregister .latest-register-page-v .field::placeholder,
body.whmcs-templatefile-clientregister .latest-register-page-v .form-control::placeholder,
body.whmcs-templatefile-password-reset-container .latest-hostx-login-register-pg .form-control::placeholder {
  color: var(--on-muted) !important;
  font-size: 15px !important;
  line-height: 56px !important;
  transform: translateY(1px);
}

body.whmcs-templatefile-clientregister .latest-register-page-v .intl-tel-input,
body.whmcs-templatefile-clientregister .latest-register-page-v .iti {
  width: 100% !important;
}

body.whmcs-templatefile-clientregister .latest-register-page-v .intl-tel-input input,
body.whmcs-templatefile-clientregister .latest-register-page-v .iti input,
body.whmcs-templatefile-clientregister .latest-register-page-v .iti input[type="tel"] {
  padding-left: 88px !important;
}

body.whmcs-templatefile-clientregister .latest-register-page-v .intl-tel-input.separate-dial-code .selected-flag,
body.whmcs-templatefile-clientregister .latest-register-page-v .iti--separate-dial-code .iti__selected-country {
  height: 56px !important;
  border-radius: 16px 0 0 16px !important;
  display: flex !important;
  align-items: center !important;
  padding-left: 12px !important;
  padding-right: 8px !important;
}

body.whmcs-templatefile-clientregister .latest-register-page-v .iti__flag-container {
  display: flex !important;
  align-items: center !important;
}

body.whmcs-templatefile-clientregister .latest-register-page-v .iti__selected-dial-code,
body.whmcs-templatefile-clientregister .latest-register-page-v .selected-dial-code {
  color: var(--on-text) !important;
  font-size: 14px !important;
  line-height: 1 !important;
}

body.whmcs-templatefile-clientregister .register-password-group {
  width: 100% !important;
}

body.whmcs-templatefile-clientregister .register-password-group .register-password-input {
  border-radius: 16px 0 0 16px !important;
}

body.whmcs-templatefile-clientregister .register-password-group .register-reveal-pw {
  min-height: 56px !important;
  height: 56px !important;
  padding: 0 18px !important;
  border-radius: 0 16px 16px 0 !important;
  border: 1.5px solid var(--on-border) !important;
  border-left: 0 !important;
  background: #ffffff !important;
  color: var(--on-muted) !important;
  box-shadow: none !important;
}

body.whmcs-templatefile-login .latest-hostx-login-register-pg .form-control:focus,
body.whmcs-templatefile-clientregister .latest-register-page-v .field:focus,
body.whmcs-templatefile-clientregister .latest-register-page-v .form-control:focus,
body.whmcs-templatefile-password-reset-container .latest-hostx-login-register-pg .form-control:focus {
  border-color: rgba(67, 67, 240, 0.38) !important;
  box-shadow: 0 0 0 4px rgba(67, 67, 240, 0.12) !important;
}

body.whmcs-templatefile-login .latest-hostx-login-register-pg button.btn.btn-default.btn-reveal-pw {
  min-height: 56px !important;
  height: 56px !important;
  padding: 0 18px !important;
  border-radius: 0 16px 16px 0 !important;
  border: 1.5px solid var(--on-border) !important;
  border-left: 0 !important;
  background: #ffffff !important;
  color: var(--on-muted) !important;
}

body.whmcs-templatefile-login .latest-hostx-login-register-pg .pw-input {
  border-radius: 16px 0 0 16px !important;
}

body.whmcs-templatefile-login .latest-hostx-login-register-pg .rember-forgot-area,
body.whmcs-templatefile-clientregister .tos-condition-register {
  margin-top: 6px !important;
}

body.whmcs-templatefile-login .latest-hostx-login-register-pg .rember-forgot-area .rember-me-login,
body.whmcs-templatefile-login .latest-hostx-login-register-pg .rember-forgot-area a,
body.whmcs-templatefile-clientregister .tos-condition-register,
body.whmcs-templatefile-clientregister .register-form-latest-v p,
body.whmcs-templatefile-clientregister .register-form-latest-v small {
  color: var(--on-muted) !important;
}

body.whmcs-templatefile-login .latest-hostx-login-register-pg #login,
body.whmcs-templatefile-clientregister .register-page-submit-button .btn-primary,
body.whmcs-templatefile-password-reset-container .latest-reset-psw-v-form .btn.btn-primary {
  width: 100% !important;
  min-width: 0 !important;
  min-height: 56px !important;
  height: 56px !important;
  margin-top: 18px !important;
  border-radius: 9999px !important;
  border: 0 !important;
  background: linear-gradient(135deg, #4343f0 0%, #6868f3 100%) !important;
  color: #ffffff !important;
  font-size: 16px !important;
  font-weight: 650 !important;
  letter-spacing: -0.01em;
  box-shadow: 0 14px 30px rgba(67, 67, 240, 0.22) !important;
}

body.whmcs-templatefile-login .latest-hostx-login-register-pg #login:hover,
body.whmcs-templatefile-clientregister .register-page-submit-button .btn-primary:hover,
body.whmcs-templatefile-password-reset-container .latest-reset-psw-v-form .btn.btn-primary:hover {
  background: linear-gradient(135deg, #3535c8 0%, #5050ee 100%) !important;
  color: #ffffff !important;
  transform: translateY(-1px);
}

body.whmcs-templatefile-clientregister .register-form-latest-v .generate-password {
  min-height: 44px !important;
  padding: 0 18px !important;
  border-radius: 9999px !important;
  border: 1.5px solid var(--on-border) !important;
  background: #ffffff !important;
  color: var(--on-text) !important;
  font-size: 14px !important;
  font-weight: 600 !important;
}

body.whmcs-templatefile-clientregister .register-form-latest-v .password-strength-meter .progress {
  border-radius: 9999px !important;
  background: var(--on-border-l) !important;
}

body.whmcs-templatefile-clientregister .register-form-latest-v .password-strength-meter .progress-bar {
  border-radius: 9999px !important;
}

body.whmcs-templatefile-clientregister .text-center.register-page-submit-button {
  text-align: left !important;
  margin-top: 28px !important;
}

body.whmcs-templatefile-login .create-acc-section,
body.whmcs-templatefile-clientregister .create-acc-section {
  margin-top: 18px !important;
  text-align: center !important;
}

body.whmcs-templatefile-login .create-acc-section a.small.font-weight-bold,
body.whmcs-templatefile-clientregister .create-acc-section a.small.font-weight-bold {
  color: var(--on-primary) !important;
}

@media (max-width: 1024px) {
  body.whmcs-templatefile-clientregister .register-form-latest-v {
    grid-template-columns: 1fr !important;
    gap: 22px !important;
    padding: 28px !important;
  }

  body.whmcs-templatefile-clientregister .register-form-latest-v .register-left-view {
    grid-column: 1 !important;
    grid-row: 1 !important;
    border-right: 0 !important;
    padding-right: 0 !important;
    border-bottom: 1px solid var(--on-border-l) !important;
    padding-bottom: 22px !important;
  }

  body.whmcs-templatefile-clientregister .register-form-latest-v .register-right-view {
    grid-column: 1 !important;
    grid-row: 2 !important;
  }
}

@media (max-width: 640px) {
  body.whmcs-templatefile-login #main-body.hostx-latest-login-register-view,
  body.whmcs-templatefile-clientregister #main-body.hostx-latest-login-register-view,
  body.whmcs-templatefile-password-reset-container #main-body.hostx-latest-login-register-view {
    padding: 10px 14px 32px !important;
  }

  body.whmcs-templatefile-login .latest-hostx-login-register-pg .login-latest-panel,
  body.whmcs-templatefile-clientregister .register-form-latest-v {
    border-radius: 22px !important;
    padding: 24px !important;
  }

  body.whmcs-templatefile-login .logo-section-latest-view,
  body.whmcs-templatefile-clientregister .logo-section-latest-view {
    margin-bottom: 14px !important;
  }

  body.whmcs-templatefile-login .latest-hostx-login-register-pg .heading-mn {
    font-size: 2rem !important;
  }

  body.whmcs-templatefile-clientregister .register-auth-header {
    margin-bottom: 18px !important;
  }

  body.whmcs-templatefile-clientregister .register-auth-header .auth-page-title {
    font-size: 1.95rem !important;
  }

  body.whmcs-templatefile-clientregister .register-auth-header .auth-page-subtitle,
  body.whmcs-templatefile-login .latest-hostx-login-register-pg .head-descrp-mn {
    font-size: 15px !important;
  }
}

@media (max-width: 991.98px) {
  body.whmcs-user-loggedin.in-whmcs-default-pages:not(.whmcs-in-cart-pages) .hostx-client-dashboard .gridster-item,
  body.whmcs-user-loggedin.in-whmcs-default-pages:not(.whmcs-in-cart-pages) .hostx-client-dashboard .dashboard-widget,
  body.whmcs-user-loggedin.in-whmcs-default-pages:not(.whmcs-in-cart-pages) .hostx-client-dashboard .dashboard-widget-max,
  body.whmcs-user-loggedin.in-whmcs-default-pages:not(.whmcs-in-cart-pages) .hostx-client-dashboard .inner-body-home-panel {
    border-radius: 14px !important;
    overflow: hidden !important;
  }

  body.whmcs-user-loggedin.in-whmcs-default-pages:not(.whmcs-in-cart-pages) .hostx-client-dashboard .alladmintextHeader.hoverbggray,
  body.whmcs-user-loggedin.in-whmcs-default-pages:not(.whmcs-in-cart-pages) .hostx-client-dashboard .panel-head-home {
    padding: 16px 18px !important;
  }

  body.whmcs-user-loggedin.in-whmcs-default-pages:not(.whmcs-in-cart-pages) .hostx-client-dashboard .widgetBody.alladmintext,
  body.whmcs-user-loggedin.in-whmcs-default-pages:not(.whmcs-in-cart-pages) .hostx-client-dashboard .panel-body,
  body.whmcs-user-loggedin.in-whmcs-default-pages:not(.whmcs-in-cart-pages) .hostx-client-dashboard .gridster-item .body-promo-bnr-ord-right,
  body.whmcs-user-loggedin.in-whmcs-default-pages:not(.whmcs-in-cart-pages) .hostx-client-dashboard .body-promo-bnr {
    padding: 16px 18px !important;
  }

  body.whmcs-user-loggedin.in-whmcs-default-pages:not(.whmcs-in-cart-pages) .hostx-client-dashboard p.bottom-buttom {
    padding: 0 18px 18px !important;
  }

  body.whmcs-user-loggedin.in-whmcs-default-pages:not(.whmcs-in-cart-pages) .hostx-client-dashboard .bottom-buttom a {
    border-radius: 12px !important;
    min-height: 42px !important;
    font-size: 14px !important;
    font-weight: 500 !important;
  }

  body.whmcs-user-loggedin.in-whmcs-default-pages:not(.whmcs-in-cart-pages) .button-style.hx-primary-btn,
  body.whmcs-user-loggedin.in-whmcs-default-pages:not(.whmcs-in-cart-pages) button.button-style.hx-primary-btn,
  body.whmcs-user-loggedin.in-whmcs-default-pages:not(.whmcs-in-cart-pages) .btn-primary,
  body.whmcs-user-loggedin.in-whmcs-default-pages:not(.whmcs-in-cart-pages) .btn.btn-primary {
    border-radius: 12px !important;
    font-weight: 500 !important;
  }

}

/* Restore cart view back-link and accordion step visuals */
body.whmcs-templatefile-viewcart .on-review-back-link {
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  min-height: 40px !important;
  padding: 0 16px !important;
  margin: 0 0 16px !important;
  border: 1px solid #d7dff0 !important;
  border-radius: 9999px !important;
  background: #ffffff !important;
  color: #0f172a !important;
  font-size: 15px !important;
  font-weight: 500 !important;
  line-height: 1 !important;
  text-decoration: none !important;
}
body.whmcs-templatefile-viewcart .on-review-back-link:hover {
  border-color: #4343f0 !important;
  color: #4343f0 !important;
  background: #f8faff !important;
}
#order-standard_cart .on-checkout-accordion-card .on-acc-step {
  width: 24px !important;
  height: 24px !important;
  border-radius: 999px !important;
  border: 1.5px solid #d8dff0 !important;
  color: #4343f0 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  flex-shrink: 0 !important;
}
#order-standard_cart .on-checkout-accordion-card .on-acc-step-index {
  display: block !important;
}
#order-standard_cart .on-checkout-accordion-card .on-acc-step-check {
  display: none !important;
}
#order-standard_cart .on-checkout-accordion-card.is-complete .on-acc-step-index {
  display: none !important;
}
#order-standard_cart .on-checkout-accordion-card.is-complete .on-acc-step-check {
  display: inline-flex !important;
}


/* ============================================================
   Phase C auth + form alignment fixes
   ============================================================ */
.latest-hostx-login-register-pg .login-latest-panel,
.latest-hostx-login-register-pg .latest-login-form,
.latest-hostx-login-register-pg .latest-reset-psw-v-form {
  width: min(100%, 640px) !important;
  margin-left: auto !important;
  margin-right: auto !important;
}
.latest-hostx-login-register-pg.latest-register-page-v .register-page-latest-panel {
  width: min(100%, 1320px) !important;
  margin-left: auto !important;
  margin-right: auto !important;
}
.latest-hostx-login-register-pg.latest-register-page-v .register-form-latest-v {
  display: grid !important;
  grid-template-columns: minmax(0, 1.08fr) minmax(360px, 0.92fr) !important;
  gap: 32px !important;
  align-items: start !important;
}
.latest-hostx-login-register-pg .form-control,
.latest-hostx-login-register-pg .field,
.latest-hostx-login-register-pg select.form-control,
.latest-hostx-login-register-pg select.field {
  min-height: 54px !important;
  border-radius: 18px !important;
  border: 1px solid #d8dff0 !important;
  box-shadow: none !important;
  background: #ffffff !important;
  color: #111827 !important;
  font-size: 16px !important;
}
.latest-hostx-login-register-pg .form-control::placeholder,
.latest-hostx-login-register-pg .field::placeholder {
  color: #7b83a5 !important;
  opacity: 1 !important;
}
.latest-hostx-login-register-pg select.form-control,
.latest-hostx-login-register-pg select.field {
  appearance: none !important;
  -webkit-appearance: none !important;
  padding-right: 46px !important;
  background-image: linear-gradient(45deg, transparent 50%, #667085 50%), linear-gradient(135deg, #667085 50%, transparent 50%) !important;
  background-position: calc(100% - 20px) calc(50% - 3px), calc(100% - 14px) calc(50% - 3px) !important;
  background-size: 6px 6px, 6px 6px !important;
  background-repeat: no-repeat !important;
}
.latest-hostx-login-register-pg .login-page-captcha,
.latest-hostx-login-register-pg .register-page-captcha,
.latest-hostx-login-register-pg .latest-reset-psw-v-form .margin-bottom {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 12px !important;
  width: 100% !important;
  margin: 24px auto 0 !important;
  text-align: center !important;
}
.latest-hostx-login-register-pg .login-page-captcha .captcha,
.latest-hostx-login-register-pg .register-page-captcha .captcha,
.latest-hostx-login-register-pg .latest-reset-psw-v-form .captcha {
  width: min(100%, 320px) !important;
  margin: 0 auto !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
}
.latest-hostx-login-register-pg .login-page-captcha img,
.latest-hostx-login-register-pg .register-page-captcha img,
.latest-hostx-login-register-pg .latest-reset-psw-v-form img {
  display: block !important;
  margin: 0 auto !important;
}
.latest-hostx-login-register-pg .login-page-captcha input[type="text"],
.latest-hostx-login-register-pg .register-page-captcha input[type="text"],
.latest-hostx-login-register-pg .latest-reset-psw-v-form input[type="text"] {
  width: min(100%, 280px) !important;
  min-height: 54px !important;
  margin: 0 auto !important;
  border-radius: 16px !important;
}
.latest-hostx-login-register-pg .register-page-captcha {
  margin-top: 26px !important;
}
.latest-hostx-login-register-pg .tos-condition-register {
  margin: 28px 0 22px !important;
  text-align: left !important;
}
.latest-hostx-login-register-pg .tos-condition-register .form-check {
  display: inline-flex !important;
  align-items: flex-start !important;
  gap: 10px !important;
}
.latest-hostx-login-register-pg .tos-condition-register .form-check-input {
  margin-top: 4px !important;
}
.latest-hostx-login-register-pg .intl-tel-input,
.latest-hostx-login-register-pg .iti {
  width: 100% !important;
}
.latest-hostx-login-register-pg .intl-tel-input .selected-flag,
.latest-hostx-login-register-pg .iti__selected-country {
  border-radius: 18px 0 0 18px !important;
  padding-inline: 14px !important;
}
.latest-hostx-login-register-pg .intl-tel-input input[type="tel"],
.latest-hostx-login-register-pg .iti input[type="tel"] {
  padding-left: 112px !important;
}
.latest-hostx-login-register-pg .password-strength-meter {
  padding-top: 6px !important;
}
@media (max-width: 991px) {
  .latest-hostx-login-register-pg.latest-register-page-v .register-form-latest-v {
    grid-template-columns: 1fr !important;
    gap: 20px !important;
  }
  .latest-hostx-login-register-pg.latest-register-page-v .register-page-latest-panel,
  .latest-hostx-login-register-pg .login-latest-panel,
  .latest-hostx-login-register-pg .latest-login-form,
  .latest-hostx-login-register-pg .latest-reset-psw-v-form {
    width: min(100%, calc(100% - 24px)) !important;
  }
}


/* Phase C fix 2: auth captcha, reset brand, and control readability */
.latest-hostx-login-register-pg .captcha,
.latest-hostx-login-register-pg .captchaimage,
.register_page .captcha,
.register_page .captchaimage,
.password-reset-process .captcha,
.password-reset-process .captchaimage {
  width: min(100%, 320px) !important;
  margin-left: auto !important;
  margin-right: auto !important;
  text-align: center !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
}
.latest-hostx-login-register-pg .captcha input[type="text"],
.register_page .captcha input[type="text"],
.password-reset-process .captcha input[type="text"] {
  width: min(100%, 280px) !important;
  min-height: 52px !important;
  margin: 12px auto 0 !important;
  display: block !important;
}
.latest-hostx-login-register-pg .login-latest-panel,
.latest-hostx-login-register-pg .latest-login-form,
.latest-hostx-login-register-pg .latest-reset-psw-v-form,
.password-reset-process .right-section-default-login-register {
  width: min(100%, 820px) !important;
  margin-left: auto !important;
  margin-right: auto !important;
}
.latest-hostx-login-register-pg .form-control,
.latest-hostx-login-register-pg select.form-control,
.password-reset-process .form-control,
.password-reset-process select.form-control {
  color: #111827 !important;
  -webkit-text-fill-color: #111827 !important;
}
.latest-hostx-login-register-pg select.form-control option,
.password-reset-process select.form-control option {
  color: #111827 !important;
  background: #ffffff !important;
}
@media (min-width: 992px) {
  .latest-hostx-login-register-pg.latest-register-page-v .register-page-latest-panel,
  .latest-hostx-login-register-pg.latest-register-page-v .register-form-latest-v {
    max-width: 1120px !important;
  }
}

/* Phase C fix 3: default auth template alignment */
body.default__login__page .default-hostx-login-register .left-logo-image,
body.whmcs-templatefile-clientregister .default-hostx-login-register .left-logo-image,
body.whmcs-templatefile-password-reset-container .default-hostx-login-register .left-logo-image {
  text-align: center !important;
}
body.default__login__page .default-hostx-login-register .login-page-captcha,
body.whmcs-templatefile-clientregister .default-hostx-login-register .register-page-captcha,
body.whmcs-templatefile-password-reset-container .default-hostx-login-register .captcha {
  width: min(100%, 320px) !important;
  margin: 16px auto 0 !important;
  text-align: center !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
}
body.default__login__page .default-hostx-login-register .captcha input[type="text"],
body.whmcs-templatefile-clientregister .default-hostx-login-register .captcha input[type="text"],
body.whmcs-templatefile-password-reset-container .default-hostx-login-register .captcha input[type="text"] {
  width: min(100%, 280px) !important;
  min-height: 52px !important;
  margin: 12px auto 0 !important;
  display: block !important;
}
body.default__login__page .default-hostx-login-register .right-section-default-login-register.register-page-hostx-right,
body.whmcs-templatefile-clientregister .default-hostx-login-register .right-section-default-login-register.register-page-hostx-right {
  max-width: 1120px !important;
}
body.default__login__page .default-hostx-login-register .form-control,
body.whmcs-templatefile-clientregister .default-hostx-login-register .form-control,
body.whmcs-templatefile-password-reset-container .default-hostx-login-register .form-control,
body.whmcs-templatefile-clientregister .default-hostx-login-register select.form-control {
  color: #111827 !important;
  -webkit-text-fill-color: #111827 !important;
}
body.whmcs-templatefile-clientregister .default-hostx-login-register select.form-control option,
body.whmcs-templatefile-password-reset-container .default-hostx-login-register select.form-control option {
  color: #111827 !important;
  background: #ffffff !important;
}
body.whmcs-templatefile-clientregister .default-hostx-login-register .intl-tel-input,
body.whmcs-templatefile-clientregister .default-hostx-login-register .iti {
  width: 100% !important;
}
body.whmcs-templatefile-clientregister .default-hostx-login-register .intl-tel-input input[type="tel"],
body.whmcs-templatefile-clientregister .default-hostx-login-register .iti input[type="tel"] {
  padding-left: 110px !important;
}


body.whmcs-templatefile-login .captcha,
body.whmcs-templatefile-clientregister .captcha,
body.whmcs-templatefile-password-reset-container .captcha {
  width: min(100%, 320px) !important;
  margin: 16px auto 0 !important;
  text-align: center !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
}
body.whmcs-templatefile-login .captcha input[type="text"],
body.whmcs-templatefile-clientregister .captcha input[type="text"],
body.whmcs-templatefile-password-reset-container .captcha input[type="text"] {
  width: 280px !important;
  max-width: 100% !important;
  min-height: 54px !important;
  margin: 12px auto 0 !important;
  display: block !important;
  border-radius: 16px !important;
}


body.whmcs-templatefile-login .captcha-default-view,
body.whmcs-templatefile-clientregister .captcha-default-view,
body.whmcs-templatefile-password-reset-container .captcha-default-view {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 12px !important;
}
body.whmcs-templatefile-login .captcha-default-view .col-6-hx,
body.whmcs-templatefile-clientregister .captcha-default-view .col-6-hx,
body.whmcs-templatefile-password-reset-container .captcha-default-view .col-6-hx {
  width: 100% !important;
  max-width: 320px !important;
  float: none !important;
  text-align: center !important;
}
body.whmcs-templatefile-login .captcha-default-view #inputCaptcha,
body.whmcs-templatefile-clientregister .captcha-default-view #inputCaptcha,
body.whmcs-templatefile-password-reset-container .captcha-default-view #inputCaptcha {
  width: 280px !important;
  max-width: 100% !important;
  margin: 0 auto !important;
  float: none !important;
}


/* Phase D/E auth and register final alignment */
body.whmcs-templatefile-clientregister .main__login__content,
body.whmcs-templatefile-register .main__login__content {
  max-width: min(100%, 1040px) !important;
}
body.whmcs-templatefile-clientregister .auth__page__inner__wrapper .row,
body.whmcs-templatefile-register .auth__page__inner__wrapper .row {
  row-gap: 16px !important;
}
body.whmcs-templatefile-login .captcha,
body.whmcs-templatefile-login .captchaimage,
body.whmcs-templatefile-password-reset-container .captcha,
body.whmcs-templatefile-password-reset-container .captchaimage,
body.whmcs-templatefile-clientregister .captcha,
body.whmcs-templatefile-clientregister .captchaimage,
body.whmcs-templatefile-register .captcha,
body.whmcs-templatefile-register .captchaimage {
  width: min(100%, 320px) !important;
  margin-left: auto !important;
  margin-right: auto !important;
  text-align: center !important;
}
body.whmcs-templatefile-login .captcha img,
body.whmcs-templatefile-password-reset-container .captcha img,
body.whmcs-templatefile-clientregister .captcha img,
body.whmcs-templatefile-register .captcha img {
  display: block !important;
  margin: 0 auto 12px !important;
}
body.whmcs-templatefile-login .captcha input[type="text"],
body.whmcs-templatefile-password-reset-container .captcha input[type="text"],
body.whmcs-templatefile-clientregister .captcha input[type="text"],
body.whmcs-templatefile-register .captcha input[type="text"] {
  width: min(100%, 280px) !important;
  min-height: 54px !important;
  margin: 0 auto !important;
  border-radius: 16px !important;
  display: block !important;
}
body.whmcs-templatefile-clientregister select.field.form-control,
body.whmcs-templatefile-register select.field.form-control,
body.whmcs-templatefile-clientregister .form-control[name="securityqid"],
body.whmcs-templatefile-register .form-control[name="securityqid"] {
  min-height: 54px !important;
  border-radius: 16px !important;
  border: 1px solid #d8dff0 !important;
  background-color: #ffffff !important;
  color: #111827 !important;
  appearance: none !important;
  -webkit-appearance: none !important;
  padding-right: 46px !important;
  background-image: linear-gradient(45deg, transparent 50%, #667085 50%), linear-gradient(135deg, #667085 50%, transparent 50%) !important;
  background-position: calc(100% - 20px) calc(50% - 3px), calc(100% - 14px) calc(50% - 3px) !important;
  background-size: 6px 6px, 6px 6px !important;
  background-repeat: no-repeat !important;
}
body.whmcs-templatefile-clientregister .iti,
body.whmcs-templatefile-register .iti { width: 100% !important; }
body.whmcs-templatefile-clientregister .iti input[type="tel"],
body.whmcs-templatefile-register .iti input[type="tel"] { padding-left: 116px !important; }
body.whmcs-templatefile-clientregister .iti__selected-country,
body.whmcs-templatefile-register .iti__selected-country { min-width: 88px !important; justify-content: center !important; }
body.whmcs-templatefile-clientregister #inputSecurityQId,
body.whmcs-templatefile-register #inputSecurityQId { font-weight: 500 !important; }
body.whmcs-templatefile-clientregister .terms-section,
body.whmcs-templatefile-register .terms-section { margin-bottom: 22px !important; }

/* Final auth alignment pass */
body.whmcs-templatefile-login .default-hostx-login-register,
body.whmcs-templatefile-clientregister .default-hostx-login-register,
body.whmcs-templatefile-password-reset-container .default-hostx-login-register { max-width:min(100%,1080px) !important; }
body.whmcs-templatefile-login .captcha,
body.whmcs-templatefile-clientregister .captcha,
body.whmcs-templatefile-password-reset-container .captcha,
body.whmcs-templatefile-login .captcha-default-view,
body.whmcs-templatefile-clientregister .captcha-default-view,
body.whmcs-templatefile-password-reset-container .captcha-default-view { display:flex !important; flex-direction:column !important; align-items:center !important; justify-content:center !important; gap:14px !important; text-align:center !important; width:100% !important; }
body.whmcs-templatefile-login .captcha input[type=text],
body.whmcs-templatefile-clientregister .captcha input[type=text],
body.whmcs-templatefile-password-reset-container .captcha input[type=text],
body.whmcs-templatefile-login #inputCaptcha,
body.whmcs-templatefile-clientregister #inputCaptcha,
body.whmcs-templatefile-password-reset-container #inputCaptcha { width:min(100%,320px) !important; min-height:54px !important; margin:0 auto !important; border-radius:18px !important; }
body.whmcs-templatefile-clientregister .row > [class*=col-], body.whmcs-templatefile-register .row > [class*=col-] { margin-bottom:18px !important; }
body.whmcs-templatefile-clientregister .intl-tel-input, body.whmcs-templatefile-register .intl-tel-input { width:100% !important; }
body.whmcs-templatefile-clientregister .selected-dial-code, body.whmcs-templatefile-register .selected-dial-code { display:inline-flex !important; align-items:center !important; gap:8px !important; }
body.whmcs-templatefile-clientregister .intl-tel-input .country-list, body.whmcs-templatefile-register .intl-tel-input .country-list, body.whmcs-templatefile-clientregister select, body.whmcs-templatefile-register select { border-radius:18px !important; }
body.whmcs-templatefile-clientregister #inputSecurityQId, body.whmcs-templatefile-register #inputSecurityQId { background:#f7f8ff !important; color:#121826 !important; border:1.5px solid #d9def7 !important; min-height:54px !important; padding:0 44px 0 16px !important; }
body.whmcs-templatefile-clientregister .on-checkout-acceptance, body.whmcs-templatefile-register .on-checkout-acceptance { margin-bottom:28px !important; }


/* Phase D auth password field alignment */
body.whmcs-templatefile-login .latest-hostx-login-register-pg .input-group.input-group-merge,
body.whmcs-templatefile-clientregister .latest-register-page-v .input-group.input-group-merge {
  display: flex !important;
  align-items: stretch !important;
  flex-wrap: nowrap !important;
  width: 100% !important;
}

body.whmcs-templatefile-login .latest-hostx-login-register-pg .input-group.input-group-merge .form-control,
body.whmcs-templatefile-clientregister .latest-register-page-v .input-group.input-group-merge .form-control {
  flex: 1 1 auto !important;
  width: 1% !important;
  min-width: 0 !important;
}

body.whmcs-templatefile-login .latest-hostx-login-register-pg .input-group.input-group-merge .input-group-append,
body.whmcs-templatefile-clientregister .latest-register-page-v .input-group.input-group-merge .input-group-append {
  display: flex !important;
  align-items: stretch !important;
  flex: 0 0 54px !important;
  width: 54px !important;
  min-width: 54px !important;
  margin-left: -1px !important;
}

body.whmcs-templatefile-login .latest-hostx-login-register-pg .input-group.input-group-merge .input-group-append .btn,
body.whmcs-templatefile-clientregister .latest-register-page-v .input-group.input-group-merge .input-group-append .btn {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 54px !important;
  min-width: 54px !important;
  height: 56px !important;
  padding: 0 !important;
  margin: 0 !important;
  border-left: 0 !important;
  border-top-left-radius: 0 !important;
  border-bottom-left-radius: 0 !important;
  border-top-right-radius: 16px !important;
  border-bottom-right-radius: 16px !important;
  background: #fff !important;
  box-shadow: none !important;
}

body.whmcs-templatefile-login .latest-hostx-login-register-pg .pw-input,
body.whmcs-templatefile-clientregister .latest-register-page-v .register-password-input {
  border-top-right-radius: 0 !important;
  border-bottom-right-radius: 0 !important;
}

body.whmcs-templatefile-clientregister .latest-register-page-v #containerPassword .col-sm-6 .form-group {
  margin-bottom: 18px !important;
}

body.whmcs-templatefile-clientregister .latest-register-page-v .password-strength-meter {
  margin-top: 2px !important;
}

@media (max-width: 767.98px) {
  body.whmcs-templatefile-clientregister .latest-register-page-v #containerPassword .col-sm-6,
  body.whmcs-templatefile-login .latest-hostx-login-register-pg .form-group {
    width: 100% !important;
  }
}


/* Phase D register password wrap fix */
body.whmcs-templatefile-clientregister .latest-register-page-v .register-password-group {
  position: relative !important;
  display: block !important;
  width: 100% !important;
}

body.whmcs-templatefile-clientregister .latest-register-page-v .register-password-group .register-password-input {
  width: 100% !important;
  min-width: 0 !important;
  padding-right: 56px !important;
  border-radius: 16px !important;
}

body.whmcs-templatefile-clientregister .latest-register-page-v .register-password-group .input-group-append {
  position: absolute !important;
  top: 0 !important;
  right: 0 !important;
  display: block !important;
  width: 54px !important;
  min-width: 54px !important;
  height: 56px !important;
  margin: 0 !important;
}

body.whmcs-templatefile-clientregister .latest-register-page-v .register-password-group .register-reveal-pw {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 54px !important;
  min-width: 54px !important;
  height: 56px !important;
  padding: 0 !important;
  margin: 0 !important;
  border-left: 0 !important;
  border-top-left-radius: 0 !important;
  border-bottom-left-radius: 0 !important;
  border-top-right-radius: 16px !important;
  border-bottom-right-radius: 16px !important;
  background: #fff !important;
  box-shadow: none !important;
}


/* Phase D register password nowrap enforcement */
body.whmcs-templatefile-clientregister .latest-register-page-v .input-group.input-group-merge.register-password-group {
  display: flex !important;
  align-items: stretch !important;
  flex-wrap: nowrap !important;
}

body.whmcs-templatefile-clientregister .latest-register-page-v .input-group.input-group-merge.register-password-group .register-password-input {
  flex: 1 1 auto !important;
  width: 1% !important;
  min-width: 0 !important;
  padding-right: 0 !important;
  border-top-right-radius: 0 !important;
  border-bottom-right-radius: 0 !important;
}

body.whmcs-templatefile-clientregister .latest-register-page-v .input-group.input-group-merge.register-password-group .input-group-append {
  position: static !important;
  display: flex !important;
  align-items: stretch !important;
  flex: 0 0 54px !important;
  width: 54px !important;
  min-width: 54px !important;
  height: 56px !important;
  margin-left: -1px !important;
}

/* Phase D reset back-link and tighter login width */
body.whmcs-templatefile-login .latest-hostx-login-register-pg .login-latest-panel {
  width: min(100%, 560px) !important;
  max-width: 560px !important;
  padding: 38px 36px 34px !important;
}

body.whmcs-templatefile-login .latest-hostx-login-register-pg .head-descrp-mn-sec,
body.whmcs-templatefile-login .latest-hostx-login-register-pg .login-panel-social-sign-in,
body.whmcs-templatefile-login .latest-hostx-login-register-pg .create-acc-section,
body.whmcs-templatefile-login .latest-hostx-login-register-pg .login-form-hostx-default {
  width: min(100%, 488px) !important;
  max-width: 488px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

.onenet-reset-back-wrap {
  margin: 18px 0 0 !important;
  text-align: center !important;
}

.onenet-reset-back-link {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 44px !important;
  padding: 0 18px !important;
  border-radius: 9999px !important;
  border: 1.5px solid var(--on-border) !important;
  background: #ffffff !important;
  color: var(--on-text) !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  line-height: 1 !important;
  text-decoration: none !important;
}

.onenet-reset-back-link:hover {
  background: #f7f8ff !important;
  color: var(--on-text) !important;
  text-decoration: none !important;
}


/* 2026-05-04 menu parity pass */
.onenet-lang-wrap,.onenet-mob-aux--language{display:none!important;}
.onenet-dropdown--wide{width:min(92vw,860px)!important;min-width:440px!important;}
.onenet-dd-grid{display:grid!important;grid-template-columns:repeat(2,minmax(220px,1fr))!important;gap:8px!important;}
.onenet-dd-text strong{font-weight:500!important;line-height:1.35!important;}
.onenet-dd-text em{line-height:1.45!important;}
.onenet-right-actions{gap:12px!important;}
.onenet-currency-pill{display:inline-flex!important;align-items:center!important;gap:8px!important;background:rgb(255 255 255 / 94%)!important;border:1px solid var(--on-border)!important;box-shadow:0 1px 2px rgb(15 15 26 / 4%)!important;}
.onenet-currency-opt{display:flex!important;align-items:center!important;gap:8px!important;padding:10px 12px!important;border-radius:12px!important;font-size:12.5px!important;font-weight:400!important;}
.onenet-curr-flag{display:inline-flex!important;align-items:center!important;justify-content:center!important;flex-shrink:0!important;}
.onenet-curr-code{font-size:12px!important;font-weight:400!important;line-height:1!important;}
.onenet-chat-icon-btn,.onenet-cart-icon-btn{position:relative!important;display:flex!important;align-items:center!important;justify-content:center!important;width:42px!important;height:42px!important;border-radius:9999px!important;border:1px solid var(--on-border)!important;background:rgb(255 255 255 / 94%)!important;color:var(--on-text)!important;text-decoration:none!important;box-shadow:0 1px 2px rgb(15 15 26 / 4%)!important;transition:border-color .15s, background .15s, color .15s!important;flex-shrink:0!important;}
.onenet-chat-icon-btn:hover,.onenet-cart-icon-btn:hover{background:var(--on-primary-light)!important;border-color:var(--on-primary)!important;color:var(--on-primary)!important;}
.onenet-mobile-quick{display:grid!important;grid-template-columns:1fr 1fr!important;gap:10px!important;padding:18px 22px 0!important;margin-bottom:20px!important;flex-shrink:0!important;}
.onenet-mobile-cta{display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:6px!important;min-height:46px!important;padding:0 14px!important;border:1px solid rgb(67 67 240 / 14%)!important;border-radius:16px!important;background:var(--on-primary-light)!important;color:var(--on-primary)!important;font-size:13px!important;font-weight:500!important;text-decoration:none!important;}
.onenet-cta-wa,.onenet-cta-wa:hover{background:var(--on-primary-light)!important;border-color:rgb(67 67 240 / 14%)!important;color:var(--on-primary)!important;}
.onenet-cta-wa svg,.onenet-cta-wa i{color:var(--on-primary)!important;}
.onenet-mobile-phones{display:none!important;}
.onenet-mobile-nav{flex:1!important;overflow-y:auto!important;padding:0 22px 28px!important;display:grid!important;gap:10px!important;}
.onenet-mob-group{border:1px solid var(--on-border)!important;border-radius:18px!important;background:rgba(255,255,255,0.76)!important;padding:0 16px!important;}
.onenet-mob-trigger{padding:16px 0!important;font-size:15px!important;font-weight:400!important;}
.onenet-mob-panel{padding:6px 0 14px!important;}
.onenet-mob-link{display:block!important;margin-top:8px!important;border-radius:14px!important;background:var(--on-white)!important;padding:12px 14px!important;font-size:13px!important;color:var(--on-text)!important;box-shadow:0 4px 14px rgba(15,15,26,.06)!important;}
.onenet-mob-link:hover{color:var(--on-primary)!important;background:var(--on-primary-light)!important;}
.onenet-mob-currency{margin-top:auto!important;padding:22px 22px 28px!important;border-top:1px solid var(--on-border)!important;flex-shrink:0!important;}
.onenet-mob-currency-label{display:block!important;margin-bottom:10px!important;color:var(--on-text)!important;font-size:12px!important;font-weight:500!important;letter-spacing:.08em!important;text-transform:uppercase!important;}
.onenet-mob-currency-pills{display:flex!important;gap:8px!important;flex-wrap:wrap!important;}
.onenet-mob-curr-pill{display:inline-flex!important;align-items:center!important;gap:6px!important;padding:8px 12px!important;border-radius:9999px!important;border:1px solid var(--on-border)!important;background:var(--on-white)!important;color:var(--on-text)!important;font-size:12px!important;font-weight:500!important;text-decoration:none!important;}
.onenet-mob-curr-pill.onenet-mob-curr-active{border-color:var(--on-primary)!important;background:var(--on-primary-light)!important;color:var(--on-primary)!important;}
@media (max-width:1024px){.onenet-right-actions{gap:12px!important;}.onenet-currency-wrap{display:none!important;}.onenet-cart-icon-btn,.onenet-chat-icon-btn{display:flex!important;width:42px!important;height:42px!important;}.onenet-mobile-toggle{display:flex!important;width:44px!important;height:44px!important;border-radius:14px!important;}}


/* PHASE4 MENU PARITY OVERRIDES */
.onenet-dd-grid{display:grid!important;grid-template-columns:repeat(2,minmax(180px,1fr))!important;gap:14px 18px!important;}
.onenet-dropdown--wide{width:min(92vw,520px)!important;min-width:520px!important;max-width:520px!important;padding:18px!important;background:rgba(255,255,255,.98)!important;border:1px solid rgba(228,228,240,.9)!important;border-radius:20px!important;box-shadow:0 24px 60px rgba(15,15,26,.12)!important;}
.onenet-dd-item{position:relative!important;align-items:flex-start!important;min-height:66px!important;padding:10px 8px 10px 42px!important;background:transparent!important;border-radius:14px!important;}
.onenet-dd-item::before{content:"";position:absolute;left:8px;top:11px;width:22px;height:22px;border-radius:999px;background:var(--on-primary-light)!important;box-shadow:inset 0 0 0 1px rgba(67,67,240,.14)!important;}
.onenet-dd-item:nth-child(1)::after,.onenet-dd-item:nth-child(2)::after,.onenet-dd-item:nth-child(3)::after,.onenet-dd-item:nth-child(4)::after,.onenet-dd-item:nth-child(5)::after{content:"";position:absolute;left:14px;top:17px;width:10px;height:10px;background:var(--on-primary)!important;mask-size:contain;mask-repeat:no-repeat;mask-position:center;-webkit-mask-size:contain;-webkit-mask-repeat:no-repeat;-webkit-mask-position:center;}
.onenet-dd-item:nth-child(1)::after{-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2'%3E%3Crect x='3' y='4' width='18' height='6' rx='1'/%3E%3Crect x='3' y='14' width='18' height='6' rx='1'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2'%3E%3Crect x='3' y='4' width='18' height='6' rx='1'/%3E%3Crect x='3' y='14' width='18' height='6' rx='1'/%3E%3C/svg%3E");}
.onenet-dd-item:nth-child(2)::after{-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2'%3E%3Ccircle cx='12' cy='12' r='8'/%3E%3Cpath d='M4 12h16M12 4a16 16 0 0 1 0 16M12 4a16 16 0 0 0 0 16'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2'%3E%3Ccircle cx='12' cy='12' r='8'/%3E%3Cpath d='M4 12h16M12 4a16 16 0 0 1 0 16M12 4a16 16 0 0 0 0 16'/%3E%3C/svg%3E");}
.onenet-dd-item:nth-child(3)::after{-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2'%3E%3Cpath d='M7 20v-4a5 5 0 0 1 10 0v4'/%3E%3Ccircle cx='9' cy='8' r='2'/%3E%3Ccircle cx='15' cy='8' r='2'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2'%3E%3Cpath d='M7 20v-4a5 5 0 0 1 10 0v4'/%3E%3Ccircle cx='9' cy='8' r='2'/%3E%3Ccircle cx='15' cy='8' r='2'/%3E%3C/svg%3E");}
.onenet-dd-item:nth-child(4)::after{-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2'%3E%3Crect x='5' y='5' width='14' height='14' rx='2'/%3E%3Cpath d='M9 9h6v6H9z'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2'%3E%3Crect x='5' y='5' width='14' height='14' rx='2'/%3E%3Cpath d='M9 9h6v6H9z'/%3E%3C/svg%3E");}
.onenet-dd-item:nth-child(5)::after{-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2'%3E%3Cpath d='M12 3v6M12 15v6M5.64 5.64l4.24 4.24M14.12 14.12l4.24 4.24M3 12h6M15 12h6M5.64 18.36l4.24-4.24M14.12 9.88l4.24-4.24'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2'%3E%3Cpath d='M12 3v6M12 15v6M5.64 5.64l4.24 4.24M14.12 14.12l4.24 4.24M3 12h6M15 12h6M5.64 18.36l4.24-4.24M14.12 9.88l4.24-4.24'/%3E%3C/svg%3E");}
.onenet-dd-item.onenet-dd-disabled{grid-column:1 / -1!important;opacity:.58!important;}
.onenet-dd-text strong{font-weight:500!important;line-height:1.35!important;font-size:14px!important;}
.onenet-dd-text em{line-height:1.45!important;font-size:12px!important;}
.onenet-right-actions{gap:14px!important;}
.onenet-chat-icon-btn,.onenet-cart-icon-btn,.onenet-currency-pill,.onenet-mobile-toggle{box-shadow:0 1px 2px rgb(15 15 26 / 4%)!important;}
.onenet-chat-icon-btn,.onenet-cart-icon-btn{width:42px!important;height:42px!important;border:1px solid var(--on-border)!important;background:rgb(255 255 255 / 94%)!important;color:var(--on-text)!important;}
.onenet-chat-icon-btn:hover,.onenet-cart-icon-btn:hover,.onenet-currency-pill:hover{background:var(--on-primary-light)!important;border-color:var(--on-primary)!important;color:var(--on-primary)!important;}
.onenet-curr-flag{display:inline-flex!important;align-items:center!important;justify-content:center!important;min-width:14px!important;}
@media (max-width:1024px){.onenet-right-actions{gap:14px!important;}.onenet-currency-wrap,.onenet-login-pill,.onenet-getstarted-pill,.onenet-lang-wrap{display:none!important;}.onenet-cart-icon-btn{order:1!important;}.onenet-chat-icon-btn{order:2!important;display:flex!important;}.onenet-mobile-toggle{order:3!important;display:flex!important;width:44px!important;height:44px!important;border-radius:14px!important;}}
.onenet-mobile-logo{display:none!important;}
.onenet-mobile-sheet{width:min(396px,100vw)!important;}
.onenet-mobile-head{padding:18px 20px!important;justify-content:flex-end!important;}
.onenet-mobile-close{width:48px!important;height:48px!important;border:1px solid var(--on-border)!important;border-radius:14px!important;background:var(--on-primary-light)!important;}
.onenet-mobile-quick{gap:12px!important;padding:18px 20px 12px!important;}
.onenet-mobile-cta,.onenet-cta-wa{background:rgb(245 245 255 / 98%)!important;border:1px solid rgba(67,67,240,.16)!important;color:var(--on-primary)!important;}
.onenet-mobile-cta svg,.onenet-cta-wa svg{color:currentColor!important;}
.onenet-mobile-phones,.onenet-mob-aux,.onenet-mob-aux--language,.onenet-mob-aux--currency{display:none!important;}
.onenet-mobile-nav{padding:8px 20px 0!important;display:grid!important;gap:10px!important;align-content:start!important;flex:1!important;overflow-y:auto!important;}
.onenet-mob-group{border:none!important;padding:0!important;background:transparent!important;box-shadow:none!important;}
.onenet-mob-trigger{padding:16px 18px!important;border:1px solid var(--on-border)!important;border-radius:18px!important;background:var(--on-white)!important;box-shadow:0 6px 20px rgba(15,15,26,.04)!important;font-size:15px!important;font-weight:500!important;}
.onenet-mob-panel{padding:8px 4px 0!important;}
.onenet-mob-link{display:block!important;padding:10px 14px!important;border-radius:14px!important;background:var(--on-white)!important;}
.onenet-mob-link strong{display:block!important;color:var(--on-text)!important;font-size:14px!important;font-weight:500!important;line-height:1.35!important;}
.onenet-mob-link em{display:block!important;margin-top:3px!important;font-style:normal!important;color:var(--on-muted)!important;font-size:12px!important;line-height:1.45!important;}
.onenet-mob-currency{margin-top:auto!important;padding:20px 20px 18px!important;border-top:none!important;}
.onenet-mob-currency-label{margin-bottom:12px!important;color:var(--on-text)!important;font-size:12px!important;font-weight:500!important;letter-spacing:.08em!important;}
.onenet-mob-currency-pills{display:flex!important;gap:8px!important;flex-wrap:wrap!important;}
.onenet-mob-curr-pill{display:inline-flex!important;align-items:center!important;gap:6px!important;padding:8px 14px!important;border-radius:999px!important;background:var(--on-white)!important;border:1px solid var(--on-border)!important;color:var(--on-text)!important;font-size:12px!important;font-weight:500!important;}
.onenet-mob-curr-pill.onenet-mob-curr-active{border-color:var(--on-primary)!important;background:var(--on-primary-light)!important;color:var(--on-primary)!important;}
.onenet-mob-ctas{display:flex!important;flex-direction:column!important;gap:10px!important;padding:16px 20px 20px!important;}
@media (max-width:600px){.onenet-mobile-sheet{width:min(92vw,396px)!important;}.onenet-mobile-quick{padding:16px 18px 10px!important;}.onenet-mobile-nav{padding:8px 18px 0!important;}.onenet-mob-currency{padding:20px 18px 18px!important;}.onenet-dropdown--wide{min-width:0!important;width:min(92vw,520px)!important;}}
