/*.firstgroup_box,*/
/*.secondgroup_box {*/
/*  min-height: 30px;*/
/*  padding: 10px 20px;*/
/*  background-color: #fff;*/
/*  -webkit-box-shadow: 0px 0px 40px rgb(29 58 83 / 10%) !important;*/
/*  box-shadow: 0px 0px 40px rgb(29 58 83 / 10%) !important;*/
/*  border-radius: var(--bs-btn-border-radius);*/
/*}*/

/*.firstgroup_box .firstgroup_box_prov,*/
/*.secondgroup_box .secondgroup_box_area {*/
/*  color: #b074d1;*/
/*  display: inline-block;*/
/*  min-width: 60px;*/
/*}*/

/*.firstgroup_box .firstgroup_box_group,*/
/*.secondgroup_box .secondgroup_box_group {*/
/*  width: 100%;*/
  /* display: grid;
    grid-template-columns: repeat(auto-fit, 110px);
    gap: 10px 0; */
/*}*/

/*.firstgroup_box .firstgroup_item,*/
/*.secondgroup_box .secondgroup_item,*/
/*.pro_box .pro_item {*/
/*  height: 70px;*/
/*  box-shadow: 0px 4px 15px 1px rgba(6, 75, 179, 0.06);*/
/*  border-radius: 1px;*/
/*  border: solid 2px var(--bs-global-o-2);*/
/*  margin-left: -1px;*/
/*  float: left;*/
/*  margin-bottom: 3px;*/
/*}*/

/*.firstgroup_box .firstgroup_item.active,*/
/*.firstgroup_box .firstgroup_item:hover,*/
/*.secondgroup_box .secondgroup_item.active,*/
/*.secondgroup_box .secondgroup_item:hover,*/
/*.pro_box .pro_item.active,*/
/*.pro_box .pro_item:hover {*/
/*  background-color: #b074d121;*/
/*  border-color: var(--white);*/
/*  box-shadow: 0 4px 15px 1px rgba(6, 75, 179, 0.06);*/
/*  border-radius: 1px;*/
/*  color: var(--primary);*/
/*}*/
/*.firstgroup_box a,*/
/*.secondgroup_box a,*/
/*.pro_box a,*/
/*.firstgroup_box .firstgroup_item,*/
/*.secondgroup_box .secondgroup_item,*/
/*.pro_box .pro_item {*/
/*  color: #495057;*/
  /*min-width: 120px;*/
/*  padding: 0 12px;*/
/*  display: flex;*/
/*  align-items: center;*/
/*  justify-content: center;*/
  /*overflow: hidden;*/
/*  white-space: nowrap;*/
/*  text-overflow: ellipsis;*/
/*  font-size: 12px;*/
/*}*/
/*.firstgroup_box a:hover,*/
/*.secondgroup_box a:hover,*/
/*.pro_box a:hover,*/
/*.firstgroup_box .firstgroup_item:hover a,*/
/*.secondgroup_box .secondgroup_item:hover a,*/
/*.pro_box .pro_item:hover a {*/
/*  color: var(--primary);*/
/*}*/


.firstgroup_box a, .secondgroup_box a, .pro_box a, .firstgroup_box .firstgroup_item, .secondgroup_box .secondgroup_item, .pro_box .pro_item {
    text-align: center;
    vertical-align: middle;
    cursor: pointer;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    border-radius: var(--bs-btn-border-radius);
    margin: 0.2em 0.3em;
    /*color: inherit;*/
    /*font-size: 14px;*/
    /*width: 100%;*/
}

/* Tabs text: inactive white, active blue */
.firstgroup_box .firstgroup_item,
.secondgroup_box .secondgroup_item,
.pro_box .pro_item,
.firstgroup_box a,
.secondgroup_box a,
.pro_box a {
  color: #ffffff !important;
}

.firstgroup_box .firstgroup_item.active,
.secondgroup_box .secondgroup_item.active,
.pro_box .pro_item.active,
.firstgroup_box .firstgroup_item.active a,
.secondgroup_box .secondgroup_item.active a,
.pro_box .pro_item.active a {
  color: #ffffff !important;
}

/* Prevent oversized active outline on category tabs */
/* Tabs layout spacing and alignment */
.firstgroup_box_group,
.secondgroup_box_group {
  display: flex;
  flex-wrap: wrap;
  gap: 0.6rem;
  margin-left: 0 !important;
  margin-right: 0 !important;
}

.yy-bth {
  padding: 0 !important;
  margin: 0.35rem 0.4rem !important;
  width: auto !important;
}

.yy-bth .firstgroup_item,
.yy-bth .secondgroup_item {
  border: 1px solid rgba(255, 255, 255, 0.16) !important;
  box-shadow: none !important;
  height: 56px !important;
  padding: 0 48px !important;
  margin-left: 0 !important;
  border-radius: 10px !important;
  background: rgba(18, 22, 34, 0.45) !important;
}

.firstgroup_box .firstgroup_item,
.secondgroup_box .secondgroup_item {
  margin-left: 0 !important;
}

.yy-bth .firstgroup_item.active,
.yy-bth .secondgroup_item.active {
  box-shadow: none !important;
  border-color: rgba(14, 165, 233, 0.65) !important;
  background: linear-gradient(90deg, #0ea5e9 0%, #3b82f6 70%, #2563eb 100%) !important;
  border-radius: 10px !important;
  overflow: hidden;
}

/* Neutralize topbar.css active styles for product list only */
.pro_box .pro_item.active {
  background: transparent !important;
  box-shadow: none !important;
  border-radius: 10px !important;
}

.yy-bth {
  background: transparent !important;
}

/* Different heights: availability zone a bit taller */
.yy-bth .secondgroup_item {
  height: 64px !important;
}

/* Remove focus/active outer ring on selection buttons */
.firstgroup_box .firstgroup_item:focus,
.secondgroup_box .secondgroup_item:focus,
.pro_box .pro_item:focus,
.firstgroup_box .firstgroup_item:active,
.secondgroup_box .secondgroup_item:active,
.pro_box .pro_item:active {
  outline: none !important;
  box-shadow: none !important;
}

.firstgroup_box .firstgroup_item.active, .firstgroup_box .firstgroup_item:hover, .secondgroup_box .secondgroup_item.active, .secondgroup_box .secondgroup_item:hover, .pro_box .pro_item.active, .pro_box .pro_item:hover {
    text-align: center;
    vertical-align: middle;
    cursor: pointer;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    border-radius: var(--bs-btn-border-radius);
    margin: 0.2em 0.3em;
}

/* Hover effect for product type and availability zone buttons */
.yy-bth .firstgroup_item:hover,
.yy-bth .secondgroup_item:hover {
  border-color: rgba(14, 165, 233, 0.65) !important;
  background: linear-gradient(90deg, #0ea5e9 0%, #3b82f6 70%, #2563eb 100%) !important;
  transition: all 0.3s ease;
}

.yy-stellar{
    right: 4px;
    top: -18px;
    width: 0;
    height: 0;
    color: var(--yellow);
    position: relative;
    transform-origin: 6px 6px;
} 

.yy-img-w{
    height: 48px;
}
.yy-img-w-2{
    height: 72px;
}

.yy-border-l-2{
    border-left:solid 2px;
}

.yy-bth-text-b{
    margin: -6px 0 6px 0 !important;
}

.yy-bth-text{
    font-family: 'DingTalk JinBuTi';
}

.yy-bth{
    width: auto;
}

.yy-bl{
    background-color: var(--bs-primary);
    border-radius: 1em;
    margin-right: 0.5rem;
    padding-left: 0.25rem;
}

.unfold {
    color: #999 !important;
    font-size: 90% !important;
}

.unfold:hover {
    color: var(--bs-btn-active-border-color) !important;
}

.cart-num {
    font-family: DINCondensed-Bold;
    font-size: 22px;
}

@media (max-width: 576px) {
.firstgroup_item,.secondgroup_item{
    min-width:auto!important;
    padding:0;
    }
}

.w-0 {
    width: 0 !important;
}

.fs-24 {
    font-size: 24px !important;
}

.fs-32 {
    font-size: 32px !important;
}

@media (min-width: 1600px) {
  .col-xxl {
    -ms-flex-preferred-size: 0;
    flex-basis: 0;
    -webkit-box-flex: 1;
    -ms-flex-positive: 1;
    flex-grow: 1;
    max-width: 100%;
  }
  .row-cols-xxl-1 > * {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 100%;
    flex: 0 0 100%;
    max-width: 100%;
  }
  .row-cols-xxl-2 > * {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 50%;
    flex: 0 0 50%;
    max-width: 50%;
  }
  .row-cols-xxl-3 > * {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 33.33333%;
    flex: 0 0 33.33333%;
    max-width: 33.33333%;
  }
  .row-cols-xxl-4 > * {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 25%;
    flex: 0 0 25%;
    max-width: 25%;
  }
  .row-cols-xxl-5 > * {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 20%;
    flex: 0 0 20%;
    max-width: 20%;
  }
  .row-cols-xxl-6 > * {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 16.66667%;
    flex: 0 0 16.66667%;
    max-width: 16.66667%;
  }
  .col-xxl-auto {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    width: auto;
    max-width: 100%;
  }
  .col-xxl-1 {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 8.33333%;
    flex: 0 0 8.33333%;
    max-width: 8.33333%;
  }
  .col-xxl-2 {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 16.66667%;
    flex: 0 0 16.66667%;
    max-width: 16.66667%;
  }
  .col-xxl-3 {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 25%;
    flex: 0 0 25%;
    max-width: 25%;
  }
  .col-xxl-4 {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 33.33333%;
    flex: 0 0 33.33333%;
    max-width: 33.33333%;
  }
  .col-xxl-5 {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 41.66667%;
    flex: 0 0 41.66667%;
    max-width: 41.66667%;
  }
  .col-xxl-6 {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 50%;
    flex: 0 0 50%;
    max-width: 50%;
  }
  .col-xxl-7 {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 58.33333%;
    flex: 0 0 58.33333%;
    max-width: 58.33333%;
  }
  .col-xxl-8 {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 66.66667%;
    flex: 0 0 66.66667%;
    max-width: 66.66667%;
  }
  .col-xxl-9 {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 75%;
    flex: 0 0 75%;
    max-width: 75%;
  }
  .col-xxl-10 {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 83.33333%;
    flex: 0 0 83.33333%;
    max-width: 83.33333%;
  }
  .col-xxl-11 {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 91.66667%;
    flex: 0 0 91.66667%;
    max-width: 91.66667%;
  }
  .col-xxl-12 {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 100%;
    flex: 0 0 100%;
    max-width: 100%;
  }
  .order-xxl-first {
    -webkit-box-ordinal-group: 0;
    -ms-flex-order: -1;
    order: -1;
  }
  .order-xxl-last {
    -webkit-box-ordinal-group: 14;
    -ms-flex-order: 13;
    order: 13;
  }
  .order-xxl-0 {
    -webkit-box-ordinal-group: 1;
    -ms-flex-order: 0;
    order: 0;
  }
  .order-xxl-1 {
    -webkit-box-ordinal-group: 2;
    -ms-flex-order: 1;
    order: 1;
  }
  .order-xxl-2 {
    -webkit-box-ordinal-group: 3;
    -ms-flex-order: 2;
    order: 2;
  }
  .order-xxl-3 {
    -webkit-box-ordinal-group: 4;
    -ms-flex-order: 3;
    order: 3;
  }
  .order-xxl-4 {
    -webkit-box-ordinal-group: 5;
    -ms-flex-order: 4;
    order: 4;
  }
  .order-xxl-5 {
    -webkit-box-ordinal-group: 6;
    -ms-flex-order: 5;
    order: 5;
  }
  .order-xxl-6 {
    -webkit-box-ordinal-group: 7;
    -ms-flex-order: 6;
    order: 6;
  }
  .order-xxl-7 {
    -webkit-box-ordinal-group: 8;
    -ms-flex-order: 7;
    order: 7;
  }
  .order-xxl-8 {
    -webkit-box-ordinal-group: 9;
    -ms-flex-order: 8;
    order: 8;
  }
  .order-xxl-9 {
    -webkit-box-ordinal-group: 10;
    -ms-flex-order: 9;
    order: 9;
  }
  .order-xxl-10 {
    -webkit-box-ordinal-group: 11;
    -ms-flex-order: 10;
    order: 10;
  }
  .order-xxl-11 {
    -webkit-box-ordinal-group: 12;
    -ms-flex-order: 11;
    order: 11;
  }
  .order-xxl-12 {
    -webkit-box-ordinal-group: 13;
    -ms-flex-order: 12;
    order: 12;
  }
  .offset-xxl-0 {
    margin-left: 0;
  }
  .offset-xxl-1 {
    margin-left: 8.33333%;
  }
  .offset-xxl-2 {
    margin-left: 16.66667%;
  }
  .offset-xxl-3 {
    margin-left: 25%;
  }
  .offset-xxl-4 {
    margin-left: 33.33333%;
  }
  .offset-xxl-5 {
    margin-left: 41.66667%;
  }
  .offset-xxl-6 {
    margin-left: 50%;
  }
  .offset-xxl-7 {
    margin-left: 58.33333%;
  }
  .offset-xxl-8 {
    margin-left: 66.66667%;
  }
  .offset-xxl-9 {
    margin-left: 75%;
  }
  .offset-xxl-10 {
    margin-left: 83.33333%;
  }
  .offset-xxl-11 {
    margin-left: 91.66667%;
  }
}

.visible {
  visibility: visible !important;
}
.invisible {
  visibility: hidden !important;
}

/* Dark glass theme overrides */
:root {
  --bs-body-bg: #0b0f1a;
  --bs-body-bg-rgb: 11, 15, 26;
  --bs-body-color: #d7dbe4;
  --bs-body-color-rgb: 215, 219, 228;
  --bs-mode: rgba(18, 22, 34, 0.55);
  --bs-mode-rgb: 18, 22, 34;
  --bs-border-color: rgba(255, 255, 255, 0.12);
  --bs-card-border-color: rgba(255, 255, 255, 0.12);
  --bs-global: #0ea5e9;
  --bs-global-rgb: 14, 165, 233;
  --bs-link-color: #38bdf8;
  --bs-link-hover-color: #7dd3fc;
  --bs-primary: #0ea5e9;
  --bs-primary-rgb: 14, 165, 233;
}

body {
  background-color: #0b0f1a;
  background-image:
    linear-gradient(rgba(7, 10, 16, 0.78), rgba(7, 10, 16, 0.6)),
    url("/themes/web/yunyoo/BG.png");
  background-size: cover;
  background-position: center;
  background-attachment: fixed;
  color: var(--bs-body-color);
}

.card,
.card-body,
.card-header,
.card-footer,
.firstgroup_box,
.secondgroup_box,
.pro_box,
.pro_box .pro_item,
.firstgroup_box .firstgroup_item,
.secondgroup_box .secondgroup_item {
  background-color: rgba(18, 22, 34, 0.55) !important;
  border: 1px solid rgba(255, 255, 255, 0.12);
  -webkit-backdrop-filter: blur(14px) saturate(140%);
  backdrop-filter: blur(14px) saturate(140%);
  box-shadow: 0 12px 30px rgba(7, 10, 18, 0.35);
}

/* Prevent double glass layers inside product cards */
.cartitem .card-body,
.cartitem .card-footer {
  background-color: transparent !important;
  border-color: transparent !important;
  box-shadow: none !important;
  -webkit-backdrop-filter: none !important;
  backdrop-filter: none !important;
}

/* Ensure card-footer links are white */
.cartitem .card-footer a,
.card-footer a {
  color: #ffffff !important;
  text-decoration: none;
}

.cartitem .card-footer a:hover,
.card-footer a:hover {
  color: #ffffff !important;
}

.card .card-header,
.card .card-footer {
  border-color: rgba(255, 255, 255, 0.08);
}

.text-muted {
  color: rgba(215, 219, 228, 0.7) !important;
}

.nav-pills .nav-link {
  color: rgba(215, 219, 228, 0.85);
  background-color: rgba(18, 22, 34, 0.35);
}

.nav-pills .nav-link.active,
.nav-pills .show > .nav-link {
  background-color: rgba(14, 165, 233, 0.35);
  color: #e6f7ff;
}

.progress {
  background-color: rgba(255, 255, 255, 0.08);
}

.progress-bar {
  box-shadow: 0 0 12px rgba(14, 165, 233, 0.6);
}

/* Align product cards with top section edges */
.yy-products-wrap {
  padding-left: 0 !important;
  padding-right: 0 !important;
  padding-top: 1.5rem !important;
  padding-bottom: 1.5rem !important;
}

/* Sidebar active/hover text color override (remove purple) */
.sidebar .nav-link.active,
.sidebar .nav-link:hover,
.sidebar .nav .nav-link.active,
.sidebar .nav .nav-link:hover,
.sidebar .sidebar-content .nav-link.active,
.sidebar .sidebar-content .nav-link:hover {
  color: #0ea5e9 !important;
}

/* Product card title + price color override (remove purple) */
.cartitem h4,
.cartitem .card-body > h4,
.cartitem .card-title,
.cartitem .card-text a,
.cartitem .text-right,
.cartitem .text-right small,
.cartitem .cart-num {
  color: #38bdf8 !important;
}

/* Top-right breadcrumb/user links (remove purple) */
.breadcrumb,
.breadcrumb a,
.breadcrumb-item,
.breadcrumb-item a,
.breadcrumb-item.active,
.top-bar a,
.top-bar .nav-link,
.top-bar .text-primary,
.top-bar .text-primary a,
.top-bar .text-primary-hover a {
  color: #38bdf8 !important;
}

/* Glass chrome for layout (top bar, sidebar, footer, main wrapper) */
.top-bar,
.navbar,
.navbar .navbar-collapse,
.sidebar,
.sidebar .offcanvas,
.sidebar .sidebar-content,
.page-content .page-content-wrapper,
footer,
.footer {
  background-color: rgba(18, 22, 34, 0.55) !important;
  border: 1px solid rgba(255, 255, 255, 0.08);
  -webkit-backdrop-filter: blur(14px) saturate(140%);
  backdrop-filter: blur(14px) saturate(140%);
  box-shadow: 0 12px 30px rgba(7, 10, 18, 0.35);
}

/* Global primary color overrides for other pages */
.text-primary,
.link-primary,
.text-primary-hover a {
  color: #38bdf8 !important;
}

.bg-primary,
.btn-primary,
.btn-primary:hover,
.btn-primary:focus,
.btn-primary:active,
.btn-primary.active,
.show > .btn-primary.dropdown-toggle {
  background-color: #0ea5e9 !important;
  border-color: #0ea5e9 !important;
  color: #fff !important;
}

.btn-outline-primary,
.btn-outline-primary:hover,
.btn-outline-primary:focus,
.btn-outline-primary:active,
.btn-outline-primary.active,
.show > .btn-outline-primary.dropdown-toggle {
  color: #0ea5e9 !important;
  border-color: #0ea5e9 !important;
  background-color: transparent !important;
}

.border-primary {
  border-color: rgba(14, 165, 233, 0.7) !important;
}

/* Ordersummary mobile bar glass */
.mobile-bottom-total {
  background-color: rgba(18, 22, 34, 0.75) !important;
  color: #d7dbe4 !important;
  border: 1px solid rgba(255, 255, 255, 0.08);
  -webkit-backdrop-filter: blur(14px) saturate(140%);
  backdrop-filter: blur(14px) saturate(140%);
}

.mobile-bottom-total .total {
  color: #e6f7ff !important;
}

/* Product configuration page dropdown fixes */
.dropdown-menu,
.bootstrap-select .dropdown-menu,
.select2-dropdown {
    background-color: rgba(18, 22, 34, 0.95) !important;
    border: 1px solid rgba(255, 255, 255, 0.12) !important;
    border-radius: 12px !important;
    z-index: 9999 !important;
    -webkit-backdrop-filter: blur(14px) saturate(140%);
    backdrop-filter: blur(14px) saturate(140%);
    overflow-x: hidden !important;
}

/* Fix collapsed dropdown button background (dark theme) - All pages */
.bootstrap-select > .dropdown-toggle,
.bootstrap-select .btn-default,
.bootstrap-select > .btn,
.selectpicker + .dropdown-toggle,
button.btn.dropdown-toggle.btn-default,
button.btn.dropdown-toggle,
.btn.dropdown-toggle.btn-light,
.dropdown-toggle.btn-light,
select.form-control + .dropdown-toggle,
.firstgroup_box .bootstrap-select .dropdown-toggle,
.secondgroup_box .bootstrap-select .dropdown-toggle,
.pro_box .bootstrap-select .dropdown-toggle,
.configoption_os_group + .dropdown-toggle,
.selectpicker_refresh + .dropdown-toggle,
.configoption_os + .dropdown-toggle,
.btn-default.dropdown-toggle {
    background-color: rgba(18, 22, 34, 0.55) !important;
    border: 1px solid rgba(255, 255, 255, 0.12) !important;
    color: #ffffff !important;
    -webkit-backdrop-filter: blur(14px) saturate(140%);
    backdrop-filter: blur(14px) saturate(140%);
}

/* Hover and focus states for dropdown buttons */
.bootstrap-select > .dropdown-toggle:hover,
.bootstrap-select > .dropdown-toggle:focus,
.bootstrap-select > .dropdown-toggle:active {
    background-color: rgba(18, 22, 34, 0.75) !important;
    border-color: rgba(14, 165, 233, 0.5) !important;
    color: #ffffff !important;
}

/* Ensure dropdown menu has highest z-index */
.bootstrap-select.open > .dropdown-menu,
.bootstrap-select.show > .dropdown-menu {
    z-index: 99999 !important;
    position: absolute !important;
}

/* Fix parent containers that might clip dropdown on config page */
.configureproduct .card,
.configureproduct .card-body,
.configureproduct .form-group,
.configureproduct {
    overflow: visible !important;
}

/* Ensure bootstrap-select container doesn't clip */
.bootstrap-select {
    overflow: visible !important;
}

.bootstrap-select.open,
.bootstrap-select.show {
    z-index: 99999 !important;
    position: relative !important;
}

/* Prevent horizontal scrolling in dropdown */
.bootstrap-select .dropdown-menu .inner {
    overflow-x: hidden !important;
    overflow-y: auto !important;
    max-width: 100% !important;
}

/* Remove horizontal scrollbar completely */
.bootstrap-select .dropdown-menu .inner::-webkit-scrollbar-x,
.bootstrap-select .dropdown-menu .inner::-webkit-scrollbar:horizontal {
    display: none !important;
    width: 0 !important;
    height: 0 !important;
}

.dropdown-item,
.bootstrap-select .dropdown-menu li a,
.select2-results__option {
    color: #ffffff !important;
    background-color: transparent !important;
    padding: 10px 16px !important;
    border-radius: 8px !important;
    margin: 2px 4px !important;
}

.dropdown-item:hover,
.dropdown-item:focus,
.bootstrap-select .dropdown-menu li a:hover,
.select2-results__option--highlighted {
    background-color: rgba(14, 165, 233, 0.25) !important;
    color: #ffffff !important;
}

.dropdown-item.active,
.dropdown-item:active,
.bootstrap-select .dropdown-menu li.selected a,
.bootstrap-select .dropdown-menu li.active a,
.select2-results__option[aria-selected=true] {
    background: linear-gradient(90deg, #0ea5e9 0%, #3b82f6 70%, #2563eb 100%) !important;
    color: #ffffff !important;
}

/* Mobile input number centering */
@media (max-width: 768px) {
    input[type="number"],
    input[type="text"].text-center,
    .form-control[type="number"] {
        text-align: center !important;
        padding-left: 0.5rem !important;
        padding-right: 0.5rem !important;
    }

    /* Fix for configuration page input boxes on mobile */
    .configoption_range_val {
        text-align: center !important;
        padding-left: 0.5rem !important;
        padding-right: 0.5rem !important;
        width: 80px !important;
        min-width: 60px !important;
        flex-shrink: 0 !important;
    }

    /* Adjust slider container on mobile - keep items in one row */
    .col-md-10.d-flex.align-items-center {
        flex-wrap: nowrap !important;
        gap: 0.5rem !important;
    }

    /* Make range slider more compact on mobile */
    .configoption_range {
        flex: 1 1 auto !important;
        min-width: 0 !important;
    }

    /* Unit text should not wrap */
    .col-md-10.d-flex.align-items-center > span {
        white-space: nowrap !important;
        flex-shrink: 0 !important;
    }

    /* Fix label width on mobile */
    .form-group.row .col-md-2 {
        flex: 0 0 100% !important;
        max-width: 100% !important;
        margin-bottom: 0.5rem !important;
    }

    .form-group.row .col-md-10 {
        flex: 0 0 100% !important;
        max-width: 100% !important;
    }
}

/* Fix password show/hide button - remove blue background, keep white icon */
.bx-show-alt.text-primary,
.bx-hide.text-primary,
span.bx-show-alt,
span.bx-hide {
    background-color: transparent !important;
    color: #ffffff !important;
    padding: 0.5rem !important;
    border-radius: 8px !important;
    transition: all 0.3s ease !important;
}

.bx-show-alt.text-primary:hover,
.bx-hide.text-primary:hover,
span.bx-show-alt:hover,
span.bx-hide:hover {
    background-color: rgba(255, 255, 255, 0.1) !important;
    color: #ffffff !important;
}

/* Remove blue background from cart price display - keep white text only */
.card-body .text-primary,
.card-body strong.text-primary,
.mobile-bottom-total .text-primary,
.mobile-bottom-total strong.text-primary {
    background-color: transparent !important;
    color: #ffffff !important;
}

/* Remove blue background from invoice/bill page action buttons - keep blue text only */
.btn-primary.btn-sm,
.table .btn-primary,
.table .btn-primary:hover,
.table .btn-primary:focus,
.table .btn-primary:active,
.invoice-list .btn-primary,
.invoice-list .btn-primary:hover,
.invoice-list .btn-primary:focus,
.invoice-list .btn-primary:active {
    background-color: transparent !important;
    border-color: transparent !important;
    color: #0ea5e9 !important;
    box-shadow: none !important;
}

.btn-primary.btn-sm:hover,
.table .btn-primary:hover,
.invoice-list .btn-primary:hover {
    background-color: rgba(14, 165, 233, 0.1) !important;
    color: #38bdf8 !important;
}

/* Invoice detail page - dark theme for white container */
.invoice,
.invoice-container,
.invoice-detail,
.card.bg-white,
.bg-white {
    background-color: rgba(18, 22, 34, 0.55) !important;
    color: #d7dbe4 !important;
    border: 1px solid rgba(255, 255, 255, 0.12) !important;
    -webkit-backdrop-filter: blur(14px) saturate(140%);
    backdrop-filter: blur(14px) saturate(140%);
}

/* Invoice detail page - text colors */
.invoice h1,
.invoice h2,
.invoice h3,
.invoice h4,
.invoice h5,
.invoice h6,
.invoice p,
.invoice td,
.invoice th,
.invoice span,
.invoice div {
    color: #d7dbe4 !important;
}

/* Invoice detail page - table styling */
.invoice table,
.invoice .table {
    background-color: rgba(18, 22, 34, 0.35) !important;
    border-color: rgba(255, 255, 255, 0.12) !important;
}

.invoice table th,
.invoice .table th {
    background-color: rgba(18, 22, 34, 0.55) !important;
    color: #e6f7ff !important;
    border-color: rgba(255, 255, 255, 0.12) !important;
}

.invoice table td,
.invoice .table td {
    border-color: rgba(255, 255, 255, 0.08) !important;
}

/* Invoice detail page - Print and Download buttons spacing and container */
.invoice-actions,
.d-print-none,
.invoice .d-print-none {
    background-color: transparent !important;
    border: none !important;
    padding: 1rem 0 !important;
    gap: 0.75rem !important;
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
}

/* Add spacing between Print and Download buttons */
.invoice .btn + .btn,
.d-print-none .btn + .btn {
    margin-left: 0.75rem !important;
}

/* Remove gray box around buttons */
.invoice .btn-group,
.invoice .button-group,
.d-print-none .btn-group,
.d-print-none .button-group {
    background-color: transparent !important;
    border: none !important;
    box-shadow: none !important;
}

/* Cart page - beautify the separator line between product list and total */
.card-body hr[style*="border-top"] {
    border: none !important;
    height: 2px !important;
    background: linear-gradient(90deg, transparent, #0ea5e9, transparent) !important;
    border-radius: 2px !important;
    margin: 1.5rem 0 !important;
    opacity: 0.6;
}

/* Cart page - checkout section styling */
.card-body .d-print-none.mobile-hide {
    display: block !important;
}

.card-body .payDiv {
    padding: 0 1rem !important;
    display: block !important;
}

/* Cart page - terms checkbox alignment (left align) - override all centering */
.card-body .payDiv .custom-control.custom-checkbox {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    text-align: left !important;
    margin-bottom: 1rem !important;
    margin-right: 0 !important;
}

.card-body .payDiv .custom-control-label {
    text-align: left !important;
    margin-left: 0.5rem !important;
}

/* Cart page - checkout button full width with padding */
.card-body .payDiv .text-sm-right {
    text-align: left !important;
    display: block !important;
}

.card-body .payDiv .submit-btn,
.card-body .payDiv .btn.w-100,
.card-body .payDiv button.btn-primary {
    width: 100% !important;
    padding: 0.75rem 1.5rem !important;
    font-size: 1rem !important;
    display: block !important;
}

/* Additional overrides for cart checkout section */
.col-md-4 .card .card-body .d-print-none {
    text-align: left !important;
}

.col-md-4 .card .card-body .payDiv {
    width: 100% !important;
}

.col-md-4 .card .card-body .payDiv > * {
    width: 100% !important;
}
