/* =========================================================
   NESCARO CUSTOMER SYSTEM
   Login / Register / OTP UI

   Contexts:
   1. Normal page / WooCommerce My Account
   2. WoodMart account sidebar
   ========================================================= */


/* =========================================================
   VARIABLES / ROOT
   ========================================================= */

.ncs-auth {
  --ncs-bg: #fbf8f1;
  --ncs-white: #ffffff;

  --ncs-text: #292a23;
  --ncs-text-soft: #55574d;
  --ncs-muted: #8a867d;
  --ncs-muted-light: #aaa69d;

  --ncs-border: #ddd8cc;
  --ncs-border-soft: rgba(58, 61, 48, 0.10);

  --ncs-olive: #60684b;
  --ncs-olive-dark: #50573f;
  --ncs-olive-light: #eef0e8;

  --ncs-tabs-bg: #efebe2;
  --ncs-tab-active: #fffdf8;

  --ncs-error-bg: #fff3f1;
  --ncs-error-text: #963c35;
  --ncs-error-border: #eccbc6;

  --ncs-success-bg: #f1f4ec;
  --ncs-success-text: #4d593c;
  --ncs-success-border: #d6dec8;

  width: 100%;
  max-width: 520px;

  margin: 52px auto;
  padding: 14px;

  direction: rtl;

  color: var(--ncs-text);

  font-family: inherit;
}


.ncs-auth *,
.ncs-auth *::before,
.ncs-auth *::after {
  box-sizing: border-box;
}


/* =========================================================
   ACCESSIBILITY HIDDEN TEXT
   ========================================================= */

.ncs-auth__sr-only {
  position: absolute !important;

  width: 1px !important;
  height: 1px !important;

  padding: 0 !important;
  margin: -1px !important;

  overflow: hidden !important;

  clip: rect(0 0 0 0) !important;
  clip-path: inset(50%) !important;

  white-space: nowrap !important;

  border: 0 !important;

  visibility: hidden !important;
}


/* =========================================================
   PAGE BRAND
   ========================================================= */

.ncs-auth__brand {
  margin: 0 0 25px;

  color: #20211c;

  text-align: center;
  direction: ltr;

  font-size: 30px;
  font-weight: 700;
  line-height: 1;

  letter-spacing: 9px;
}


/* =========================================================
   MAIN CARD
   ========================================================= */

.ncs-auth__card {
  position: relative;

  overflow: hidden;

  width: 100%;

  padding: 42px 40px 32px;

  background: rgba(251, 248, 241, 0.97);

  border: 1px solid var(--ncs-border-soft);
  border-radius: 26px;

  box-shadow:
    0 22px 64px rgba(42, 43, 35, 0.075);
}


.ncs-auth__card::before {
  content: "";

  position: absolute;

  top: -110px;
  left: 50%;

  width: 280px;
  height: 190px;

  transform: translateX(-50%);

  background:
    radial-gradient(
      circle,
      rgba(96, 104, 75, 0.085) 0%,
      rgba(96, 104, 75, 0) 70%
    );

  pointer-events: none;
}


/* =========================================================
   HEADER
   ========================================================= */

.ncs-auth__eyebrow {
  position: relative;

  margin: 0 0 11px;

  color: var(--ncs-olive);

  text-align: center;
  direction: ltr;

  font-size: 9px;
  font-weight: 700;

  letter-spacing: 4px;
}


.ncs-auth__title,
.ncs-auth h2.ncs-auth__title {
  position: relative;

  margin: 0 0 8px !important;

  color: var(--ncs-text) !important;

  text-align: center;

  font-family: inherit;

  font-size: 25px !important;
  font-weight: 700 !important;
  line-height: 1.6 !important;
}


.ncs-auth__lead {
  position: relative;

  max-width: 370px;

  margin: 0 auto 27px !important;

  color: var(--ncs-muted);

  text-align: center;

  font-size: 12px;
  font-weight: 400;
  line-height: 2;
}


/* =========================================================
   LOGIN / REGISTER SELECTOR
   ========================================================= */

.ncs-auth__modes {
  position: relative;

  display: grid;

  grid-template-columns:
    repeat(2, minmax(0, 1fr));

  gap: 5px;

  width: 100%;

  margin: 2px 0 30px;
  padding: 5px;

  background: var(--ncs-tabs-bg);

  border:
    1px solid
    rgba(62, 65, 50, 0.065);

  border-radius: 18px;

  box-shadow:
    inset 0 1px 1px
    rgba(255, 255, 255, 0.62);

  overflow: hidden;
}


/* reset WoodMart button styling */

.ncs-auth
.ncs-auth__modes
button.ncs-auth__mode {
  position: relative;

  display: flex !important;

  align-items: center;
  justify-content: center;

  width: 100% !important;
  min-width: 0;
  min-height: 50px;

  margin: 0 !important;
  padding: 10px 12px !important;

  background:
    rgba(255, 255, 255, 0.24) !important;

  color: #74736b !important;

  border: 0 !important;
  border-radius: 13px !important;

  box-shadow: none !important;

  cursor: pointer;

  font-family: inherit !important;

  font-size: 13px !important;
  font-weight: 600 !important;

  text-transform: none !important;

  -webkit-appearance: none;
  appearance: none;

  -webkit-tap-highlight-color: transparent;

  transition:
    background-color 0.18s ease,
    color 0.18s ease,
    box-shadow 0.18s ease,
    transform 0.14s ease;
}


/* old labels are not used anymore */

.ncs-auth__mode-title {
  display: none !important;
}


.ncs-auth__mode-caption {
  display: block !important;

  margin: 0 !important;
  padding: 0 !important;

  color: inherit !important;

  font-family: inherit !important;

  font-size: 13px !important;
  font-weight: 600 !important;
  line-height: 1.6 !important;

  white-space: nowrap;

  opacity: 1 !important;
}


/* inactive hover */

.ncs-auth
.ncs-auth__modes
button.ncs-auth__mode:hover:not(.is-active) {
  background:
    rgba(255, 255, 255, 0.46) !important;

  color:
    #55574e !important;

  box-shadow:
    none !important;
}


/* active */

.ncs-auth
.ncs-auth__modes
button.ncs-auth__mode.is-active {
  background:
    var(--ncs-tab-active) !important;

  color:
    var(--ncs-olive-dark) !important;

  border-radius:
    13px !important;

  box-shadow:
    0 1px 2px rgba(40, 41, 34, 0.03),
    0 5px 14px rgba(40, 41, 34, 0.06) !important;
}


/* olive indicator */

.ncs-auth
.ncs-auth__mode.is-active::after {
  content: "";

  position: absolute;

  bottom: 5px;
  left: 50%;

  width: 18px;
  height: 2px;

  transform:
    translateX(-50%);

  background:
    var(--ncs-olive);

  border-radius: 100px;

  opacity: 0.8;
}


.ncs-auth
.ncs-auth__modes
button.ncs-auth__mode:active {
  transform:
    scale(0.992);
}


/* =========================================================
   MESSAGE
   ========================================================= */

.ncs-auth__message {
  display: none;

  width: 100%;

  margin: 0 0 18px;
  padding: 12px 14px;

  border-radius: 13px;

  text-align: right;

  font-size: 11px;
  line-height: 1.9;
}


.ncs-auth__message.is-error {
  display: block;

  background:
    var(--ncs-error-bg);

  color:
    var(--ncs-error-text);

  border:
    1px solid
    var(--ncs-error-border);
}


.ncs-auth__message.is-success {
  display: block;

  background:
    var(--ncs-success-bg);

  color:
    var(--ncs-success-text);

  border:
    1px solid
    var(--ncs-success-border);
}


/* =========================================================
   FORM
   ========================================================= */

.ncs-auth__form {
  width: 100%;

  margin: 0 !important;
  padding: 0 !important;
}


.ncs-auth__step {
  width: 100%;
}


.ncs-auth__step[hidden] {
  display: none !important;
}


/* =========================================================
   LABEL
   ========================================================= */

.ncs-auth label {
  display: block;

  margin: 0 2px 8px !important;
  padding: 0 !important;

  color: #48493f;

  font-family: inherit;

  font-size: 12px;
  font-weight: 600;
  line-height: 1.7;
}


/* =========================================================
   INPUT
   ========================================================= */

.ncs-auth input {
  display: block;

  width: 100% !important;
  height: 55px !important;

  margin: 0 !important;

  padding: 0 17px !important;

  background:
    var(--ncs-white) !important;

  color:
    var(--ncs-text) !important;

  border:
    1px solid
    var(--ncs-border) !important;

  border-radius:
    14px !important;

  outline: 0 !important;

  box-shadow:
    none !important;

  font-family:
    inherit !important;

  font-size:
    15px !important;

  font-weight:
    400 !important;

  transition:
    border-color 0.18s ease,
    box-shadow 0.18s ease,
    background-color 0.18s ease;
}


.ncs-auth input::placeholder {
  color:
    #b6b2a8 !important;

  opacity: 1 !important;
}


.ncs-auth input:hover {
  border-color:
    #c9c3b7 !important;
}


.ncs-auth input:focus {
  border-color:
    var(--ncs-olive) !important;

  box-shadow:
    0 0 0 3px
    rgba(96, 104, 75, 0.085) !important;
}


/* =========================================================
   MOBILE FIELD
   ========================================================= */

.ncs-auth__phone-row {
  display: grid;

  grid-template-columns:
    58px minmax(0, 1fr);

  gap: 9px;

  width: 100%;

  align-items: center;
}


.ncs-auth__country {
  position: relative;

  display: flex;

  align-items: center;
  justify-content: center;

  width: 58px;
  height: 55px;

  margin: 0;
  padding: 0;

  background:
    #f3efe7;

  border:
    1px solid
    var(--ncs-border);

  border-radius:
    14px;

  overflow: hidden;

  cursor: default;
}


.ncs-auth__flag {
  display: block;

  margin: 0;
  padding: 0;

  font-size: 24px;
  line-height: 1;
}


.ncs-auth #ncs-mobile {
  min-width: 0;

  direction: ltr;

  text-align: left;

  font-size: 16px !important;

  letter-spacing: 1px;

  font-variant-numeric:
    tabular-nums;
}


.ncs-auth__field-help {
  display: block;

  margin: 8px 3px 0 !important;

  color:
    #9a968d;

  text-align: right;

  font-size: 10px;
  font-weight: 400;
  line-height: 1.8;
}


/* =========================================================
   PRIMARY BUTTON
   ========================================================= */

.ncs-auth
button.ncs-auth__primary {
  position: relative;

  display: flex !important;

  align-items: center;
  justify-content: center;

  width: 100% !important;
  min-height: 54px !important;

  margin:
    22px 0 0 !important;

  padding:
    12px 46px !important;

  background:
    var(--ncs-olive) !important;

  background-color:
    var(--ncs-olive) !important;

  color:
    #ffffff !important;

  border:
    1px solid
    var(--ncs-olive) !important;

  border-radius:
    14px !important;

  box-shadow:
    0 8px 20px
    rgba(79, 86, 61, 0.14) !important;

  cursor: pointer;

  font-family:
    inherit !important;

  font-size:
    13px !important;

  font-weight:
    700 !important;

  line-height:
    1.6 !important;

  text-transform:
    none !important;

  letter-spacing:
    0 !important;

  -webkit-appearance: none !important;
  appearance: none !important;

  transition:
    background-color 0.18s ease,
    border-color 0.18s ease,
    box-shadow 0.18s ease,
    transform 0.14s ease,
    opacity 0.18s ease;
}


.ncs-auth
button.ncs-auth__primary:hover:not(:disabled) {
  background:
    var(--ncs-olive-dark) !important;

  background-color:
    var(--ncs-olive-dark) !important;

  border-color:
    var(--ncs-olive-dark) !important;

  color:
    #ffffff !important;

  box-shadow:
    0 10px 24px
    rgba(79, 86, 61, 0.19) !important;
}


.ncs-auth
button.ncs-auth__primary:active:not(:disabled) {
  transform:
    translateY(1px);
}


.ncs-auth
button.ncs-auth__primary:disabled {
  background:
    var(--ncs-olive) !important;

  color:
    #ffffff !important;

  opacity: 0.52;

  cursor:
    not-allowed;

  box-shadow:
    none !important;
}


.ncs-auth__primary-text {
  display: block;

  color:
    inherit !important;

  line-height:
    inherit;
}


.ncs-auth__primary-arrow {
  position: absolute;

  top: 50%;
  left: 18px;

  transform:
    translateY(-50%);

  color:
    inherit;

  font-size:
    16px;

  font-weight:
    400;

  line-height:
    1;

  opacity:
    0.78;
}


/* =========================================================
   BACK / RESEND
   ========================================================= */

.ncs-auth
button.ncs-auth__back,
.ncs-auth
button.ncs-auth__resend {
  background:
    transparent !important;

  background-color:
    transparent !important;

  color:
    var(--ncs-olive) !important;

  border:
    0 !important;

  border-radius:
    0 !important;

  box-shadow:
    none !important;

  cursor:
    pointer;

  font-family:
    inherit !important;

  font-size:
    11px !important;

  font-weight:
    600 !important;

  text-transform:
    none !important;

  -webkit-appearance:
    none !important;

  appearance:
    none !important;
}


.ncs-auth
button.ncs-auth__back {
  display: flex;

  align-items: center;

  gap: 6px;

  width: auto !important;

  margin:
    0 0 18px !important;

  padding:
    0 !important;

  text-align:
    right;
}


.ncs-auth
button.ncs-auth__resend {
  display: block;

  width: 100% !important;

  margin:
    7px 0 0 !important;

  padding:
    12px 5px !important;

  text-align:
    center;
}


.ncs-auth
button.ncs-auth__resend:disabled {
  color:
    #aaa79f !important;

  cursor:
    not-allowed;
}


/* =========================================================
   OTP
   ========================================================= */

.ncs-auth__otp-heading {
  margin:
    0 0 20px;
}


.ncs-auth__otp-icon {
  display: flex;

  align-items: center;
  justify-content: center;

  width: 38px;
  height: 38px;

  margin:
    0 auto 10px;

  background:
    var(--ncs-olive-light);

  color:
    var(--ncs-olive);

  border-radius:
    50%;

  font-size:
    16px;
}


.ncs-auth__otp-description {
  max-width:
    330px;

  margin:
    0 auto !important;

  color:
    var(--ncs-muted);

  text-align:
    center;

  font-size:
    11px;

  line-height:
    2;
}


.ncs-auth__mobile-display {
  display:
    inline-block;

  margin:
    0 4px;

  direction:
    ltr;

  color:
    var(--ncs-text);

  font-weight:
    700;
}


.ncs-auth #ncs-otp {
  direction:
    ltr;

  text-align:
    center;

  font-size:
    21px !important;

  font-weight:
    700 !important;

  letter-spacing:
    7px;

  font-variant-numeric:
    tabular-nums;
}


/* =========================================================
   PROFILE
   ========================================================= */

.ncs-auth__profile-intro {
  display: flex;

  align-items:
    flex-start;

  gap:
    13px;

  margin:
    0 0 24px;

  padding:
    15px 16px;

  background:
    var(--ncs-olive-light);

  border:
    1px solid
    rgba(96, 104, 75, 0.12);

  border-radius:
    15px;
}


.ncs-auth__profile-check {
  display:
    flex;

  flex:
    0 0 33px;

  align-items:
    center;

  justify-content:
    center;

  width:
    33px;

  height:
    33px;

  margin-top:
    1px;

  background:
    var(--ncs-olive);

  color:
    #ffffff;

  border-radius:
    50%;

  font-size:
    14px;
}


.ncs-auth__profile-intro h3 {
  margin:
    0 0 3px !important;

  color:
    var(--ncs-text) !important;

  font-size:
    13px !important;

  font-weight:
    700 !important;

  line-height:
    1.8 !important;
}


.ncs-auth__profile-intro p {
  margin:
    0 !important;

  color:
    #77766c;

  font-size:
    10px;

  line-height:
    1.9;
}


.ncs-auth__profile-grid {
  display: grid;

  grid-template-columns:
    repeat(2, minmax(0, 1fr));

  gap:
    12px;
}


.ncs-auth__field {
  min-width: 0;

  margin: 0;
}


.ncs-auth #ncs-first-name,
.ncs-auth #ncs-last-name {
  direction:
    rtl;

  text-align:
    right;
}


/* =========================================================
   PRIVACY
   ========================================================= */

.ncs-auth__privacy {
  margin:
    24px 0 0 !important;

  color:
    #9b978f;

  text-align:
    center;

  font-size:
    9px;

  font-weight:
    400;

  line-height:
    2;
}


.ncs-auth__privacy a {
  color:
    var(--ncs-olive) !important;

  text-decoration:
    none !important;

  border-bottom:
    1px solid
    rgba(96, 104, 75, 0.25);
}


.ncs-auth__privacy a:hover {
  color:
    var(--ncs-olive-dark) !important;

  border-color:
    var(--ncs-olive-dark);
}


/* =========================================================
   LOGGED-IN NOTE
   ========================================================= */

.ncs-auth-note {
  max-width:
    520px;

  margin:
    30px auto;

  padding:
    17px 20px;

  background:
    var(--ncs-bg);

  border:
    1px solid
    var(--ncs-border);

  border-radius:
    15px;

  text-align:
    center;

  font-size:
    12px;

  line-height:
    1.9;
}


.ncs-auth-note a {
  color:
    var(--ncs-olive);

  font-weight:
    600;

  text-decoration:
    none;
}


/* =========================================================
   WOOCOMMERCE MY ACCOUNT REPLACEMENT
   ========================================================= */

.ncs-replace-woo-login #customer_login {
  display:
    none !important;
}


.ncs-replace-woo-login
.woocommerce-notices-wrapper
+
.woocommerce-form-login {
  display:
    none !important;
}


.ncs-replace-woo-login
form.woocommerce-form-login:not(.ncs-auth__form) {
  display:
    none !important;
}


.ncs-replace-woo-login
.woocommerce-form-register {
  display:
    none !important;
}


/* =========================================================
   WOODMART SIDEBAR
   ========================================================= */


/*
 * Sidebar shell.
 */

.login-form-side.ncs-login-form-side {
  background:
    #fbfaf6 !important;

  color:
    var(--wd-text-color, #292a23);

  overflow:
    hidden;
}


/*
 * Allow vertical scrolling on smaller screens.
 */

.login-form-side.ncs-login-form-side
.ncs-woodmart-sidebar-content {
  width:
    100%;

  height:
    calc(100vh - 62px);

  overflow-y:
    auto;

  overflow-x:
    hidden;

  padding:
    0;

  -webkit-overflow-scrolling:
    touch;
}


/*
 * WoodMart sidebar heading.
 */

.login-form-side.ncs-login-form-side
.wd-heading {
  min-height:
    62px;

  padding:
    0 20px !important;

  background:
    #ffffff;

  border-bottom:
    1px solid
    rgba(50, 52, 43, 0.08);
}


.login-form-side.ncs-login-form-side
.wd-heading
.title {
  color:
    #292a23;

  font-family:
    inherit;

  font-size:
    14px;

  font-weight:
    700;
}


.login-form-side.ncs-login-form-side
.close-side-widget a {
  color:
    #6e6d65 !important;

  font-size:
    11px !important;
}


/*
 * The main critical reset.
 *
 * Do NOT use normal page width/margin/card styles
 * inside WoodMart's narrow sidebar.
 */

.login-form-side.ncs-login-form-side
.ncs-auth--sidebar {
  width:
    100% !important;

  max-width:
    none !important;

  margin:
    0 !important;

  padding:
    0 !important;

  color:
    var(--ncs-text);
}


/*
 * Sidebar card is intentionally flat.
 */

.login-form-side.ncs-login-form-side
.ncs-auth--sidebar
.ncs-auth__card {
  width:
    100%;

  margin:
    0;

  padding:
    27px 22px 30px;

  background:
    transparent;

  border:
    0;

  border-radius:
    0;

  box-shadow:
    none;

  overflow:
    visible;
}


.login-form-side.ncs-login-form-side
.ncs-auth--sidebar
.ncs-auth__card::before {
  display:
    none;
}


/* sidebar header */

.login-form-side.ncs-login-form-side
.ncs-auth--sidebar
.ncs-auth__eyebrow {
  margin-bottom:
    8px;

  font-size:
    8px;

  letter-spacing:
    3px;
}


.login-form-side.ncs-login-form-side
.ncs-auth--sidebar
.ncs-auth__title {
  margin-bottom:
    5px !important;

  font-size:
    20px !important;

  line-height:
    1.65 !important;
}


.login-form-side.ncs-login-form-side
.ncs-auth--sidebar
.ncs-auth__lead {
  max-width:
    270px;

  margin-bottom:
    23px !important;

  font-size:
    10.5px;

  line-height:
    1.9;
}


/* sidebar login/register control */

.login-form-side.ncs-login-form-side
.ncs-auth--sidebar
.ncs-auth__modes {
  gap:
    4px;

  margin:
    0 0 24px;

  padding:
    4px;

  background:
    #efebe2;

  border-radius:
    15px;
}


.login-form-side.ncs-login-form-side
.ncs-auth--sidebar
.ncs-auth__modes
button.ncs-auth__mode {
  min-height:
    44px;

  padding:
    8px 6px !important;

  border-radius:
    11px !important;
}


.login-form-side.ncs-login-form-side
.ncs-auth--sidebar
.ncs-auth__mode-caption {
  font-size:
    11px !important;

  font-weight:
    600 !important;
}


.login-form-side.ncs-login-form-side
.ncs-auth--sidebar
.ncs-auth__mode.is-active::after {
  bottom:
    4px;

  width:
    15px;
}


/* sidebar message */

.login-form-side.ncs-login-form-side
.ncs-auth--sidebar
.ncs-auth__message {
  margin-bottom:
    15px;

  padding:
    10px 11px;

  border-radius:
    11px;

  font-size:
    10px;

  line-height:
    1.8;
}


/* sidebar labels */

.login-form-side.ncs-login-form-side
.ncs-auth--sidebar label {
  margin-bottom:
    6px !important;

  font-size:
    11px;

  font-weight:
    600;
}


/* sidebar fields */

.login-form-side.ncs-login-form-side
.ncs-auth--sidebar input {
  height:
    49px !important;

  padding:
    0 13px !important;

  border-radius:
    12px !important;

  font-size:
    13px !important;
}


/* sidebar phone */

.login-form-side.ncs-login-form-side
.ncs-auth--sidebar
.ncs-auth__phone-row {
  grid-template-columns:
    51px minmax(0, 1fr);

  gap:
    7px;
}


.login-form-side.ncs-login-form-side
.ncs-auth--sidebar
.ncs-auth__country {
  width:
    51px;

  height:
    49px;

  background:
    #f1ede5;

  border-radius:
    12px;
}


.login-form-side.ncs-login-form-side
.ncs-auth--sidebar
.ncs-auth__flag {
  font-size:
    21px;
}


.login-form-side.ncs-login-form-side
.ncs-auth--sidebar
#ncs-mobile {
  font-size:
    14px !important;

  letter-spacing:
    0.7px;
}


.login-form-side.ncs-login-form-side
.ncs-auth--sidebar
.ncs-auth__field-help {
  margin-top:
    6px !important;

  font-size:
    9px;

  line-height:
    1.7;
}


/*
 * Sidebar primary action.
 */

.login-form-side.ncs-login-form-side
.ncs-auth--sidebar
button.ncs-auth__primary {
  min-height:
    49px !important;

  margin-top:
    18px !important;

  padding:
    10px 40px !important;

  background:
    var(--ncs-olive) !important;

  background-color:
    var(--ncs-olive) !important;

  color:
    #ffffff !important;

  border:
    1px solid
    var(--ncs-olive) !important;

  border-radius:
    12px !important;

  font-size:
    11.5px !important;

  box-shadow:
    0 7px 17px
    rgba(79, 86, 61, 0.14) !important;
}


.login-form-side.ncs-login-form-side
.ncs-auth--sidebar
button.ncs-auth__primary:hover:not(:disabled) {
  background:
    var(--ncs-olive-dark) !important;

  background-color:
    var(--ncs-olive-dark) !important;

  border-color:
    var(--ncs-olive-dark) !important;

  color:
    #ffffff !important;
}


.login-form-side.ncs-login-form-side
.ncs-auth--sidebar
.ncs-auth__primary-arrow {
  left:
    15px;

  font-size:
    14px;
}


/* Sidebar privacy */

.login-form-side.ncs-login-form-side
.ncs-auth--sidebar
.ncs-auth__privacy {
  margin-top:
    20px !important;

  padding:
    0 6px;

  font-size:
    8.5px;

  line-height:
    1.9;
}


/* Sidebar OTP */

.login-form-side.ncs-login-form-side
.ncs-auth--sidebar
.ncs-auth__back {
  margin-bottom:
    15px !important;

  font-size:
    10px !important;
}


.login-form-side.ncs-login-form-side
.ncs-auth--sidebar
.ncs-auth__otp-heading {
  margin-bottom:
    17px;
}


.login-form-side.ncs-login-form-side
.ncs-auth--sidebar
.ncs-auth__otp-icon {
  width:
    34px;

  height:
    34px;

  margin-bottom:
    8px;

  font-size:
    14px;
}


.login-form-side.ncs-login-form-side
.ncs-auth--sidebar
.ncs-auth__otp-description {
  max-width:
    250px;

  font-size:
    9.5px;

  line-height:
    1.9;
}


.login-form-side.ncs-login-form-side
.ncs-auth--sidebar
#ncs-otp {
  font-size:
    19px !important;

  letter-spacing:
    5px;
}


/* Sidebar registration profile */

.login-form-side.ncs-login-form-side
.ncs-auth--sidebar
.ncs-auth__profile-intro {
  gap:
    10px;

  margin-bottom:
    18px;

  padding:
    12px;

  border-radius:
    12px;
}


.login-form-side.ncs-login-form-side
.ncs-auth--sidebar
.ncs-auth__profile-check {
  flex-basis:
    29px;

  width:
    29px;

  height:
    29px;

  font-size:
    12px;
}


.login-form-side.ncs-login-form-side
.ncs-auth--sidebar
.ncs-auth__profile-intro h3 {
  font-size:
    11px !important;
}


.login-form-side.ncs-login-form-side
.ncs-auth--sidebar
.ncs-auth__profile-intro p {
  font-size:
    9px;

  line-height:
    1.7;
}


.login-form-side.ncs-login-form-side
.ncs-auth--sidebar
.ncs-auth__profile-grid {
  grid-template-columns:
    1fr;

  gap:
    13px;
}


/* =========================================================
   FOCUS
   ========================================================= */

.ncs-auth button:focus-visible,
.ncs-auth input:focus-visible,
.ncs-auth a:focus-visible {
  outline:
    2px solid
    rgba(96, 104, 75, 0.35);

  outline-offset:
    2px;
}


/* =========================================================
   PAGE RESPONSIVE
   ========================================================= */

@media (max-width: 640px) {

  .ncs-auth:not(.ncs-auth--sidebar) {
    margin:
      24px auto;

    padding:
      9px;
  }


  .ncs-auth__brand {
    margin-bottom:
      18px;

    font-size:
      26px;

    letter-spacing:
      6px;
  }


  .ncs-auth:not(.ncs-auth--sidebar)
  .ncs-auth__card {
    padding:
      31px 20px 25px;

    border-radius:
      22px;
  }


  .ncs-auth:not(.ncs-auth--sidebar)
  .ncs-auth__title {
    font-size:
      22px !important;
  }


  .ncs-auth:not(.ncs-auth--sidebar)
  .ncs-auth__lead {
    margin-bottom:
      22px !important;
  }


  .ncs-auth:not(.ncs-auth--sidebar)
  .ncs-auth__modes {
    gap:
      4px;

    margin-bottom:
      25px;

    padding:
      4px;

    border-radius:
      16px;
  }


  .ncs-auth:not(.ncs-auth--sidebar)
  .ncs-auth__modes
  button.ncs-auth__mode {
    min-height:
      48px;

    padding:
      9px 7px !important;

    border-radius:
      12px !important;
  }


  .ncs-auth:not(.ncs-auth--sidebar)
  .ncs-auth__mode-caption {
    font-size:
      12px !important;
  }


  .ncs-auth:not(.ncs-auth--sidebar)
  .ncs-auth__phone-row {
    grid-template-columns:
      55px minmax(0, 1fr);

    gap:
      7px;
  }


  .ncs-auth:not(.ncs-auth--sidebar)
  .ncs-auth__country {
    width:
      55px;

    height:
      52px;
  }


  .ncs-auth:not(.ncs-auth--sidebar)
  input {
    height:
      52px !important;
  }


  .ncs-auth:not(.ncs-auth--sidebar)
  button.ncs-auth__primary {
    min-height:
      52px !important;
  }


  .ncs-auth:not(.ncs-auth--sidebar)
  .ncs-auth__profile-grid {
    grid-template-columns:
      1fr;

    gap:
      14px;
  }

}


/* =========================================================
   VERY SMALL SCREENS
   ========================================================= */

@media (max-width: 390px) {

  .ncs-auth:not(.ncs-auth--sidebar) {
    padding:
      6px;
  }


  .ncs-auth:not(.ncs-auth--sidebar)
  .ncs-auth__card {
    padding-left:
      16px;

    padding-right:
      16px;
  }


  .ncs-auth__brand {
    font-size:
      25px;

    letter-spacing:
      5px;
  }


  .login-form-side.ncs-login-form-side
  .ncs-auth--sidebar
  .ncs-auth__card {
    padding-left:
      17px;

    padding-right:
      17px;
  }


  .login-form-side.ncs-login-form-side
  .ncs-auth--sidebar
  .ncs-auth__mode-caption {
    font-size:
      10px !important;
  }

}


/* =========================================================
   REDUCED MOTION
   ========================================================= */

@media (prefers-reduced-motion: reduce) {

  .ncs-auth *,
  .ncs-auth *::before,
  .ncs-auth *::after {
    transition:
      none !important;

    animation:
      none !important;
  }

}

/* =========================================================
   NESCARO MY ACCOUNT
   Logged-in WooCommerce account area
   ========================================================= */

body.ncs-my-account {
  --ncs-account-bg: #fbf8f1;
  --ncs-account-panel: #fffdf8;
  --ncs-account-text: #292a23;
  --ncs-account-muted: #8a867d;
  --ncs-account-border: #ddd8cc;
  --ncs-account-border-soft: rgba(58, 61, 48, 0.10);
  --ncs-account-olive: #60684b;
  --ncs-account-olive-dark: #50573f;
  --ncs-account-olive-light: #eef0e8;
  --ncs-account-success: #4d593c;
  --ncs-account-danger: #963c35;
}


/* Hide WoodMart's default English My Account widget title. */
body.ncs-my-account
.widget-my-account
> .widget-title {
  display: none !important;
}


/* Remove the extra spacing left by the hidden widget title. */
body.ncs-my-account
.widget-my-account {
  margin-top: 0 !important;
}


/* Main WoodMart / WooCommerce account wrapper */

body.ncs-my-account
.woocommerce-my-account-wrapper {
  display: flex !important;
  align-items: flex-start;
  gap: 30px;
  width: 100%;
  direction: rtl;
}


/* =========================================================
   ACCOUNT NAVIGATION
   ========================================================= */

body.ncs-my-account
.woocommerce-MyAccount-navigation {
  position: relative;
  flex: 0 0 245px;
  width: 245px !important;
  float: none !important;
  margin: 0 !important;
  padding: 22px 16px 16px !important;
  background: var(--ncs-account-panel);
  border: 1px solid var(--ncs-account-border-soft);
  border-radius: 22px;
  box-shadow: 0 14px 42px rgba(42, 43, 35, 0.055);
  overflow: hidden;
}


/* Replace the WoodMart English heading with a Persian title */

body.ncs-my-account
.woocommerce-MyAccount-navigation::before {
  content: "حساب من" !important;
  display: block;
  margin: 0 0 14px;
  padding: 0 7px 15px;
  color: var(--ncs-account-text);
  border-bottom: 1px solid rgba(58, 61, 48, 0.09);
  text-align: right;
  direction: rtl;
  font-family: inherit;
  font-size: 16px;
  font-weight: 700;
  line-height: 1.7;
  letter-spacing: 0;
}


/* Hide theme-added duplicate title elements if present */

body.ncs-my-account
.woocommerce-MyAccount-navigation
> h2,
body.ncs-my-account
.woocommerce-MyAccount-navigation
> h3,
body.ncs-my-account
.woocommerce-MyAccount-navigation
.wd-my-account-title,
body.ncs-my-account
.woocommerce-MyAccount-navigation
.wd-heading-title {
  display: none !important;
}


body.ncs-my-account
.woocommerce-MyAccount-navigation
ul {
  display: block !important;
  width: 100%;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
}


body.ncs-my-account
.woocommerce-MyAccount-navigation
li {
  width: 100%;
  margin: 0 0 4px !important;
  padding: 0 !important;
  border: 0 !important;
}


body.ncs-my-account
.woocommerce-MyAccount-navigation
li:last-child {
  margin-bottom: 0 !important;
}


body.ncs-my-account
.woocommerce-MyAccount-navigation
li
a {
  position: relative;
  display: flex !important;
  align-items: center;
  min-height: 44px;
  width: 100%;
  padding: 9px 12px !important;
  color: #5f6057 !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 12px;
  box-shadow: none !important;
  text-align: right;
  font-family: inherit;
  font-size: 12px;
  font-weight: 600;
  line-height: 1.7;
  text-decoration: none !important;
  transition:
    background-color 0.18s ease,
    color 0.18s ease,
    transform 0.14s ease;
}


body.ncs-my-account
.woocommerce-MyAccount-navigation
li
a:hover {
  background: #f3efe7 !important;
  color: var(--ncs-account-olive-dark) !important;
}


body.ncs-my-account
.woocommerce-MyAccount-navigation
li.is-active
a,
body.ncs-my-account
.woocommerce-MyAccount-navigation
li
a[aria-current="page"] {
  background: var(--ncs-account-olive-light) !important;
  color: var(--ncs-account-olive-dark) !important;
}


body.ncs-my-account
.woocommerce-MyAccount-navigation
li.is-active
a::after,
body.ncs-my-account
.woocommerce-MyAccount-navigation
li
a[aria-current="page"]::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 0;
  width: 3px;
  height: 20px;
  transform: translateY(-50%);
  background: var(--ncs-account-olive);
  border-radius: 999px;
}


/* Logout is visually separated from normal account links */

body.ncs-my-account
.woocommerce-MyAccount-navigation-link--customer-logout {
  margin-top: 10px !important;
  padding-top: 10px !important;
  border-top: 1px solid rgba(58, 61, 48, 0.08) !important;
}


body.ncs-my-account
.woocommerce-MyAccount-navigation-link--customer-logout
a {
  color: #81786f !important;
}


body.ncs-my-account
.woocommerce-MyAccount-navigation-link--customer-logout
a:hover {
  color: var(--ncs-account-danger) !important;
  background: #fff4f2 !important;
}


/* =========================================================
   ACCOUNT CONTENT
   ========================================================= */

body.ncs-my-account
.woocommerce-MyAccount-content {
  flex: 1 1 auto;
  min-width: 0;
  width: auto !important;
  float: none !important;
  margin: 0 !important;
  padding: 32px 34px !important;
  background: var(--ncs-account-panel);
  border: 1px solid var(--ncs-account-border-soft);
  border-radius: 24px;
  box-shadow: 0 16px 46px rgba(42, 43, 35, 0.055);
  color: var(--ncs-account-text);
}


/* Generic account copy */

body.ncs-my-account
.woocommerce-MyAccount-content
p {
  color: #66665e;
  line-height: 2;
}


body.ncs-my-account
.woocommerce-MyAccount-content
a {
  color: var(--ncs-account-olive);
}


body.ncs-my-account
.woocommerce-MyAccount-content
a:hover {
  color: var(--ncs-account-olive-dark);
}


/* =========================================================
   DASHBOARD LINK CARDS
   ========================================================= */

body.ncs-my-account
.wd-my-account-links {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 14px !important;
  margin: 28px 0 0 !important;
}


body.ncs-my-account
.wd-my-account-links
> div {
  width: auto !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
}


body.ncs-my-account
.wd-my-account-links
a {
  display: flex !important;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  min-height: 132px;
  width: 100%;
  padding: 22px 16px !important;
  background: #fbfaf6 !important;
  color: #4d4f45 !important;
  border: 1px solid rgba(58, 61, 48, 0.10) !important;
  border-radius: 18px !important;
  box-shadow: none !important;
  text-align: center;
  font-size: 12px !important;
  font-weight: 700 !important;
  text-transform: none !important;
  transition:
    background-color 0.18s ease,
    border-color 0.18s ease,
    transform 0.16s ease,
    box-shadow 0.18s ease;
}


body.ncs-my-account
.wd-my-account-links
a::before {
  margin-bottom: 12px !important;
  color: #a7aa9f !important;
  font-size: 42px !important;
  line-height: 1 !important;
  transition:
    color 0.18s ease;
}


body.ncs-my-account
.wd-my-account-links
a:hover {
  transform: translateY(-2px);
  background: var(--ncs-account-olive-light) !important;
  border-color: rgba(96, 104, 75, 0.18) !important;
  color: var(--ncs-account-olive-dark) !important;
  box-shadow: 0 10px 24px rgba(79, 86, 61, 0.07) !important;
}


body.ncs-my-account
.wd-my-account-links
a:hover::before {
  color: var(--ncs-account-olive) !important;
}


/* =========================================================
   CUSTOM NESCARO ACCOUNT DETAILS
   ========================================================= */

body.ncs-my-account
.ncs-account-details {
  width: 100%;
  margin: 0;
  padding: 0;
  color: var(--ncs-account-text);
}


body.ncs-my-account
.ncs-account-details__header {
  margin: 0 0 28px;
  padding: 0 0 24px;
  border-bottom: 1px solid rgba(58, 61, 48, 0.08);
}


body.ncs-my-account
.ncs-account-details__eyebrow {
  display: block;
  margin: 0 0 8px;
  color: var(--ncs-account-olive);
  direction: ltr;
  text-align: right;
  font-size: 9px;
  font-weight: 700;
  letter-spacing: 3.5px;
}


body.ncs-my-account
.ncs-account-details__header
h2 {
  margin: 0 0 8px !important;
  color: var(--ncs-account-text) !important;
  font-family: inherit !important;
  font-size: 24px !important;
  font-weight: 700 !important;
  line-height: 1.6 !important;
}


body.ncs-my-account
.ncs-account-details__header
p {
  max-width: 680px;
  margin: 0 !important;
  color: var(--ncs-account-muted) !important;
  font-size: 11px;
  line-height: 2;
}


/* Success / Woo notices inside the account card */

body.ncs-my-account
.ncs-account-details
.woocommerce-message,
body.ncs-my-account
.ncs-account-details
.woocommerce-error,
body.ncs-my-account
.ncs-account-details
.woocommerce-info {
  margin: 0 0 20px !important;
  padding: 13px 16px !important;
  border-radius: 14px !important;
  box-shadow: none !important;
  font-size: 11px;
  line-height: 1.9;
}


body.ncs-my-account
.ncs-account-details
.woocommerce-message {
  background: #f1f4ec !important;
  color: var(--ncs-account-success) !important;
  border: 1px solid #d6dec8 !important;
}


body.ncs-my-account
.ncs-account-details
.woocommerce-error {
  background: #fff3f1 !important;
  color: var(--ncs-account-danger) !important;
  border: 1px solid #eccbc6 !important;
}


/* Form reset */

body.ncs-my-account
.ncs-account-details__form {
  width: 100%;
  margin: 0 !important;
  padding: 0 !important;
}


body.ncs-my-account
.ncs-account-details__form
.form-row {
  float: none !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
}


/* First + last name */

body.ncs-my-account
.ncs-account-details__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
  width: 100%;
  margin: 0 0 20px;
}


/* Common field spacing */

body.ncs-my-account
.ncs-account-details__verified-mobile,
body.ncs-my-account
.ncs-account-details__form
.form-row-wide {
  margin: 0 0 20px !important;
}


/* Labels */

body.ncs-my-account
.ncs-account-details__form
label,
body.ncs-my-account
.ncs-account-details__field-heading
label {
  display: block;
  margin: 0 2px 8px !important;
  padding: 0 !important;
  color: #48493f !important;
  font-family: inherit !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  line-height: 1.7 !important;
}


body.ncs-my-account
.ncs-account-details__form
.required {
  color: #aa5048 !important;
}


/* Verified mobile heading row */

body.ncs-my-account
.ncs-account-details__field-heading {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  margin: 0 0 8px;
}


body.ncs-my-account
.ncs-account-details__field-heading
label {
  margin: 0 !important;
}


body.ncs-my-account
.ncs-account-details__verified-badge {
  display: inline-flex;
  align-items: center;
  min-height: 24px;
  padding: 3px 9px;
  background: var(--ncs-account-olive-light);
  color: var(--ncs-account-success);
  border: 1px solid rgba(96, 104, 75, 0.12);
  border-radius: 999px;
  font-size: 9px;
  font-weight: 700;
  line-height: 1.4;
}


/* Optional email label */

body.ncs-my-account
.ncs-account-details__optional {
  margin-right: 5px;
  color: #9b978f;
  font-size: 9px;
  font-weight: 400;
}


/* Inputs */

body.ncs-my-account
.ncs-account-details__form
input[type="text"],
body.ncs-my-account
.ncs-account-details__form
input[type="email"] {
  display: block;
  width: 100% !important;
  height: 54px !important;
  margin: 0 !important;
  padding: 0 16px !important;
  background: #ffffff !important;
  color: var(--ncs-account-text) !important;
  border: 1px solid var(--ncs-account-border) !important;
  border-radius: 14px !important;
  outline: 0 !important;
  box-shadow: none !important;
  font-family: inherit !important;
  font-size: 13px !important;
  font-weight: 400 !important;
  transition:
    border-color 0.18s ease,
    box-shadow 0.18s ease,
    background-color 0.18s ease;
}


body.ncs-my-account
.ncs-account-details__form
input[type="text"]:hover,
body.ncs-my-account
.ncs-account-details__form
input[type="email"]:hover {
  border-color: #c9c3b7 !important;
}


body.ncs-my-account
.ncs-account-details__form
input[type="text"]:focus,
body.ncs-my-account
.ncs-account-details__form
input[type="email"]:focus {
  border-color: var(--ncs-account-olive) !important;
  box-shadow: 0 0 0 3px rgba(96, 104, 75, 0.085) !important;
}


/* Verified phone stays read-only and visually different */

body.ncs-my-account
#ncs-account-mobile[readonly] {
  cursor: default;
  background: #f3efe7 !important;
  color: #5d5f55 !important;
  border-color: #e0dbcf !important;
  text-align: left;
  font-variant-numeric: tabular-nums;
}


/* Email uses LTR but remains visually aligned with the RTL form */

body.ncs-my-account
#ncs-account-email {
  text-align: left;
}


/* Help copy */

body.ncs-my-account
.ncs-account-details__help {
  display: block;
  margin: 7px 3px 0 !important;
  color: #9a968d !important;
  font-size: 9.5px !important;
  font-weight: 400;
  line-height: 1.9 !important;
}


/* Actions */

body.ncs-my-account
.ncs-account-details__actions {
  display: flex;
  justify-content: flex-start;
  margin: 26px 0 0 !important;
}


body.ncs-my-account
button.ncs-account-details__save {
  min-width: 150px;
  min-height: 50px !important;
  margin: 0 !important;
  padding: 10px 24px !important;
  background: var(--ncs-account-olive) !important;
  background-color: var(--ncs-account-olive) !important;
  color: #ffffff !important;
  border: 1px solid var(--ncs-account-olive) !important;
  border-radius: 13px !important;
  box-shadow: 0 8px 20px rgba(79, 86, 61, 0.14) !important;
  font-family: inherit !important;
  font-size: 11.5px !important;
  font-weight: 700 !important;
  line-height: 1.6 !important;
  text-transform: none !important;
  transition:
    background-color 0.18s ease,
    border-color 0.18s ease,
    box-shadow 0.18s ease,
    transform 0.14s ease;
}


body.ncs-my-account
button.ncs-account-details__save:hover {
  background: var(--ncs-account-olive-dark) !important;
  background-color: var(--ncs-account-olive-dark) !important;
  border-color: var(--ncs-account-olive-dark) !important;
  color: #ffffff !important;
  box-shadow: 0 10px 24px rgba(79, 86, 61, 0.19) !important;
}


body.ncs-my-account
button.ncs-account-details__save:active {
  transform: translateY(1px);
}


/* =========================================================
   ORDERS / ADDRESSES
   ========================================================= */

body.ncs-my-account
.woocommerce-MyAccount-content
.woocommerce-orders-table {
  overflow: hidden;
  border: 1px solid rgba(58, 61, 48, 0.10) !important;
  border-radius: 16px;
}


body.ncs-my-account
.woocommerce-MyAccount-content
.woocommerce-orders-table
th {
  background: #f4f1e9;
  color: #4b4d43;
  font-size: 10px;
  font-weight: 700;
}


body.ncs-my-account
.woocommerce-MyAccount-content
.woocommerce-orders-table
td {
  color: #606159;
  font-size: 10.5px;
}


body.ncs-my-account
.woocommerce-MyAccount-content
.woocommerce-Address {
  margin-bottom: 18px;
  padding: 20px;
  background: #fbfaf6;
  border: 1px solid rgba(58, 61, 48, 0.10);
  border-radius: 16px;
}


body.ncs-my-account
.woocommerce-MyAccount-content
.woocommerce-Address-title
h2,
body.ncs-my-account
.woocommerce-MyAccount-content
.woocommerce-Address-title
h3 {
  color: var(--ncs-account-text) !important;
  font-size: 15px !important;
  font-weight: 700 !important;
}


/* =========================================================
   FOCUS
   ========================================================= */

body.ncs-my-account
.woocommerce-MyAccount-navigation
a:focus-visible,
body.ncs-my-account
.ncs-account-details
input:focus-visible,
body.ncs-my-account
.ncs-account-details
button:focus-visible {
  outline: 2px solid rgba(96, 104, 75, 0.35) !important;
  outline-offset: 2px;
}


/* =========================================================
   TABLET
   ========================================================= */

@media (max-width: 1024px) {

  body.ncs-my-account
  .woocommerce-my-account-wrapper {
    gap: 20px;
  }


  body.ncs-my-account
  .woocommerce-MyAccount-navigation {
    flex-basis: 215px;
    width: 215px !important;
  }


  body.ncs-my-account
  .woocommerce-MyAccount-content {
    padding: 26px 24px !important;
  }


  body.ncs-my-account
  .wd-my-account-links {
    grid-template-columns:
      repeat(2, minmax(0, 1fr)) !important;
  }

}


/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 768px) {

  body.ncs-my-account
  .woocommerce-my-account-wrapper {
    display: block !important;
    width: 100%;
  }


  body.ncs-my-account
  .woocommerce-MyAccount-navigation {
    width: 100% !important;
    margin: 0 0 18px !important;
    padding: 15px !important;
    border-radius: 18px;
  }


  body.ncs-my-account
  .woocommerce-MyAccount-navigation::before {
    margin-bottom: 10px;
    padding-bottom: 11px;
    font-size: 14px;
  }


  body.ncs-my-account
  .woocommerce-MyAccount-navigation
  ul {
    display: flex !important;
    gap: 7px;
    overflow-x: auto;
    padding-bottom: 2px !important;
    scrollbar-width: none;
    -webkit-overflow-scrolling: touch;
  }


  body.ncs-my-account
  .woocommerce-MyAccount-navigation
  ul::-webkit-scrollbar {
    display: none;
  }


  body.ncs-my-account
  .woocommerce-MyAccount-navigation
  li {
    flex: 0 0 auto;
    width: auto;
    margin: 0 !important;
  }


  body.ncs-my-account
  .woocommerce-MyAccount-navigation
  li
  a {
    min-height: 40px;
    width: auto;
    padding: 8px 12px !important;
    white-space: nowrap;
    font-size: 10.5px;
  }


  body.ncs-my-account
  .woocommerce-MyAccount-navigation
  li.is-active
  a::after,
  body.ncs-my-account
  .woocommerce-MyAccount-navigation
  li
  a[aria-current="page"]::after {
    top: auto;
    right: 50%;
    bottom: 2px;
    width: 17px;
    height: 2px;
    transform: translateX(50%);
  }


  body.ncs-my-account
  .woocommerce-MyAccount-navigation-link--customer-logout {
    margin-top: 0 !important;
    padding-top: 0 !important;
    border-top: 0 !important;
  }


  body.ncs-my-account
  .woocommerce-MyAccount-content {
    width: 100% !important;
    padding: 24px 18px !important;
    border-radius: 20px;
  }


  body.ncs-my-account
  .ncs-account-details__header {
    margin-bottom: 22px;
    padding-bottom: 19px;
  }


  body.ncs-my-account
  .ncs-account-details__header
  h2 {
    font-size: 21px !important;
  }


  body.ncs-my-account
  .ncs-account-details__grid {
    grid-template-columns: 1fr;
    gap: 18px;
  }


  body.ncs-my-account
  .wd-my-account-links {
    grid-template-columns: 1fr !important;
    gap: 10px !important;
  }


  body.ncs-my-account
  .wd-my-account-links
  a {
    min-height: 104px;
  }


  body.ncs-my-account
  .ncs-account-details__actions {
    display: block;
  }


  body.ncs-my-account
  button.ncs-account-details__save {
    width: 100% !important;
    min-width: 0;
  }

}


/* =========================================================
   VERY SMALL SCREENS
   ========================================================= */

@media (max-width: 390px) {

  body.ncs-my-account
  .woocommerce-MyAccount-content {
    padding: 21px 15px !important;
  }


  body.ncs-my-account
  .woocommerce-MyAccount-navigation {
    padding: 13px !important;
  }


  body.ncs-my-account
  .ncs-account-details__form
  input[type="text"],
  body.ncs-my-account
  .ncs-account-details__form
  input[type="email"] {
    height: 51px !important;
    padding-left: 13px !important;
    padding-right: 13px !important;
  }

}


/* =========================================================
   REDUCED MOTION — MY ACCOUNT
   ========================================================= */

@media (prefers-reduced-motion: reduce) {

  body.ncs-my-account
  .woocommerce-MyAccount-navigation
  *,
  body.ncs-my-account
  .woocommerce-MyAccount-content
  * {
    transition: none !important;
    animation: none !important;
  }

}

/* Hide WoodMart's real My Account heading. */
body.ncs-my-account
.wd-my-account-sidebar
> .woocommerce-MyAccount-title.entry-title {
  display: none !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
}

/* =========================================================
   NESCARO ORDERS EMPTY STATE
   ========================================================= */

body.ncs-my-account
.ncs-orders-empty {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;

  min-height: 360px;
  width: 100%;

  padding: 46px 34px;

  background:
    linear-gradient(
      180deg,
      rgba(255, 253, 248, 0.96) 0%,
      rgba(249, 246, 238, 0.96) 100%
    );

  border:
    1px solid
    rgba(58, 61, 48, 0.10);

  border-radius:
    22px;

  text-align:
    center;

  box-shadow:
    0 16px 42px
    rgba(42, 43, 35, 0.045);
}


body.ncs-my-account
.ncs-orders-empty__icon {
  display: flex;

  align-items:
    center;

  justify-content:
    center;

  width:
    58px;

  height:
    58px;

  margin:
    0 0 18px;

  background:
    var(--ncs-account-olive-light);

  color:
    var(--ncs-account-olive);

  border:
    1px solid
    rgba(96, 104, 75, 0.12);

  border-radius:
    50%;

  font-size:
    21px;

  line-height:
    1;
}


body.ncs-my-account
.ncs-orders-empty__content {
  max-width:
    520px;

  margin:
    0 auto;
}


body.ncs-my-account
.ncs-orders-empty__eyebrow {
  display:
    block;

  margin:
    0 0 9px;

  color:
    var(--ncs-account-olive);

  direction:
    ltr;

  font-size:
    9px;

  font-weight:
    700;

  letter-spacing:
    3.5px;
}


body.ncs-my-account
.ncs-orders-empty
h2 {
  margin:
    0 0 9px !important;

  color:
    var(--ncs-account-text) !important;

  font-family:
    inherit !important;

  font-size:
    23px !important;

  font-weight:
    700 !important;

  line-height:
    1.7 !important;
}


body.ncs-my-account
.ncs-orders-empty
p {
  margin:
    0 !important;

  color:
    var(--ncs-account-muted) !important;

  font-size:
    11px !important;

  line-height:
    2 !important;
}


body.ncs-my-account
a.ncs-orders-empty__button {
  display:
    inline-flex !important;

  align-items:
    center;

  justify-content:
    center;

  min-width:
    156px;

  min-height:
    50px;

  margin:
    24px 0 0 !important;

  padding:
    10px 22px !important;

  background:
    var(--ncs-account-olive) !important;

  background-color:
    var(--ncs-account-olive) !important;

  color:
    #ffffff !important;

  border:
    1px solid
    var(--ncs-account-olive) !important;

  border-radius:
    13px !important;

  box-shadow:
    0 8px 20px
    rgba(79, 86, 61, 0.14) !important;

  font-family:
    inherit !important;

  font-size:
    11.5px !important;

  font-weight:
    700 !important;

  line-height:
    1.6 !important;

  text-decoration:
    none !important;

  text-transform:
    none !important;
}


body.ncs-my-account
a.ncs-orders-empty__button:hover {
  background:
    var(--ncs-account-olive-dark) !important;

  background-color:
    var(--ncs-account-olive-dark) !important;

  border-color:
    var(--ncs-account-olive-dark) !important;

  color:
    #ffffff !important;

  box-shadow:
    0 10px 24px
    rgba(79, 86, 61, 0.19) !important;
}


/* Clean up WooCommerce's orders table when real orders exist. */

body.ncs-my-account
.woocommerce-MyAccount-content
.woocommerce-orders-table {
  overflow:
    hidden;

  background:
    #fffdf8;

  border-collapse:
    separate !important;

  border-spacing:
    0;

  border:
    1px solid
    rgba(58, 61, 48, 0.10) !important;

  border-radius:
    16px;
}


body.ncs-my-account
.woocommerce-MyAccount-content
.woocommerce-orders-table
th {
  padding:
    13px 14px !important;

  background:
    #f4f1e9 !important;

  color:
    #4b4d43 !important;

  border-color:
    rgba(58, 61, 48, 0.08) !important;

  font-size:
    10px !important;

  font-weight:
    700 !important;
}


body.ncs-my-account
.woocommerce-MyAccount-content
.woocommerce-orders-table
td {
  padding:
    14px !important;

  color:
    #606159 !important;

  border-color:
    rgba(58, 61, 48, 0.08) !important;

  font-size:
    10.5px !important;

  line-height:
    1.8;
}


body.ncs-my-account
.woocommerce-MyAccount-content
.woocommerce-orders-table
.button {
  min-height:
    36px;

  padding:
    7px 12px !important;

  background:
    var(--ncs-account-olive) !important;

  color:
    #ffffff !important;

  border:
    1px solid
    var(--ncs-account-olive) !important;

  border-radius:
    10px !important;

  font-size:
    9.5px !important;

  font-weight:
    700 !important;

  text-transform:
    none !important;
}


@media (max-width: 768px) {

  body.ncs-my-account
  .ncs-orders-empty {
    min-height:
      300px;

    padding:
      36px 20px;

    border-radius:
      18px;
  }


  body.ncs-my-account
  .ncs-orders-empty__icon {
    width:
      52px;

    height:
      52px;

    margin-bottom:
      16px;
  }


  body.ncs-my-account
  .ncs-orders-empty
  h2 {
    font-size:
      20px !important;
  }


  body.ncs-my-account
  a.ncs-orders-empty__button {
    width:
      100% !important;

    max-width:
      280px;
  }

}

/* =========================================================
   NESCARO MY ACCOUNT — ADDRESSES
   ========================================================= */

body.ncs-my-account--address
.woocommerce-MyAccount-content {
  padding:
    30px 32px !important;
}


/* Address overview intro */

body.ncs-my-account--address
.woocommerce-MyAccount-content
> p:first-child {
  margin:
    0 0 24px !important;

  color:
    var(--ncs-account-muted) !important;

  font-size:
    11px !important;

  line-height:
    2 !important;
}


/* Billing / shipping overview cards */

body.ncs-my-account--address
.woocommerce-Addresses {
  display:
    grid !important;

  grid-template-columns:
    repeat(2, minmax(0, 1fr));

  gap:
    14px;

  margin:
    0 !important;
}


body.ncs-my-account--address
.woocommerce-Addresses
.woocommerce-Address {
  float:
    none !important;

  width:
    auto !important;

  min-width:
    0;

  margin:
    0 !important;

  padding:
    22px !important;

  background:
    #fbfaf6 !important;

  border:
    1px solid
    rgba(58, 61, 48, 0.10) !important;

  border-radius:
    18px !important;

  box-shadow:
    none !important;
}


body.ncs-my-account--address
.woocommerce-Address-title {
  display:
    flex;

  align-items:
    center;

  justify-content:
    space-between;

  gap:
    12px;

  margin:
    0 0 14px;

  padding:
    0 0 13px;

  border-bottom:
    1px solid
    rgba(58, 61, 48, 0.08);
}


body.ncs-my-account--address
.woocommerce-Address-title
h2,
body.ncs-my-account--address
.woocommerce-Address-title
h3 {
  margin:
    0 !important;

  color:
    var(--ncs-account-text) !important;

  font-family:
    inherit !important;

  font-size:
    14px !important;

  font-weight:
    700 !important;

  line-height:
    1.7 !important;
}


body.ncs-my-account--address
.woocommerce-Address-title
.edit {
  float:
    none !important;

  margin:
    0 !important;

  padding:
    0 !important;

  color:
    var(--ncs-account-olive) !important;

  font-size:
    10.5px !important;

  font-weight:
    600 !important;

  text-decoration:
    none !important;
}


body.ncs-my-account--address
.woocommerce-Address-title
.edit:hover {
  color:
    var(--ncs-account-olive-dark) !important;
}


body.ncs-my-account--address
.woocommerce-Address
address {
  margin:
    0 !important;

  color:
    #67685f;

  font-style:
    normal !important;

  font-size:
    11px;

  line-height:
    2;
}


/* =========================================================
   ADDRESS EDIT FORM
   ========================================================= */

body.ncs-my-account--address
.woocommerce-address-fields {
  width:
    100%;
}


body.ncs-my-account--address
.woocommerce-address-fields
> h3,
body.ncs-my-account--address
.woocommerce-MyAccount-content
form
> h3 {
  margin:
    0 0 26px !important;

  padding:
    0 0 18px;

  color:
    var(--ncs-account-text) !important;

  border-bottom:
    1px solid
    rgba(58, 61, 48, 0.08);

  font-family:
    inherit !important;

  font-size:
    22px !important;

  font-weight:
    700 !important;

  line-height:
    1.6 !important;
}


body.ncs-my-account--address
.woocommerce-address-fields__field-wrapper {
  display:
    grid;

  grid-template-columns:
    repeat(2, minmax(0, 1fr));

  column-gap:
    14px;

  row-gap:
    19px;

  width:
    100%;
}


body.ncs-my-account--address
.woocommerce-address-fields__field-wrapper
.form-row {
  float:
    none !important;

  width:
    100% !important;

  margin:
    0 !important;

  padding:
    0 !important;
}


/* Full-width fields */

body.ncs-my-account--address
.woocommerce-address-fields__field-wrapper
.form-row-wide,
body.ncs-my-account--address
#billing_company_field,
body.ncs-my-account--address
#shipping_company_field,
body.ncs-my-account--address
#billing_country_field,
body.ncs-my-account--address
#shipping_country_field,
body.ncs-my-account--address
#billing_state_field,
body.ncs-my-account--address
#shipping_state_field,
body.ncs-my-account--address
#billing_city_field,
body.ncs-my-account--address
#shipping_city_field,
body.ncs-my-account--address
#billing_address_1_field,
body.ncs-my-account--address
#shipping_address_1_field,
body.ncs-my-account--address
#billing_address_2_field,
body.ncs-my-account--address
#shipping_address_2_field,
body.ncs-my-account--address
#billing_postcode_field,
body.ncs-my-account--address
#shipping_postcode_field,
body.ncs-my-account--address
#billing_phone_field,
body.ncs-my-account--address
#shipping_phone_field,
body.ncs-my-account--address
#billing_email_field {
  grid-column:
    1 / -1;
}


/* Labels */

body.ncs-my-account--address
.woocommerce-address-fields
label {
  display:
    block;

  margin:
    0 2px 8px !important;

  color:
    #48493f !important;

  font-family:
    inherit !important;

  font-size:
    11px !important;

  font-weight:
    700 !important;

  line-height:
    1.7 !important;
}


body.ncs-my-account--address
.woocommerce-address-fields
.required {
  color:
    #aa5048 !important;
}


/* Inputs / selects */

body.ncs-my-account--address
.woocommerce-address-fields
input.input-text,
body.ncs-my-account--address
.woocommerce-address-fields
select,
body.ncs-my-account--address
.woocommerce-address-fields
.select2-container
.select2-selection--single {
  width:
    100% !important;

  min-height:
    52px !important;

  margin:
    0 !important;

  background:
    #ffffff !important;

  color:
    var(--ncs-account-text) !important;

  border:
    1px solid
    var(--ncs-account-border) !important;

  border-radius:
    13px !important;

  box-shadow:
    none !important;

  font-family:
    inherit !important;

  font-size:
    12px !important;
}


body.ncs-my-account--address
.woocommerce-address-fields
input.input-text {
  height:
    52px !important;

  padding:
    0 15px !important;
}


body.ncs-my-account--address
.woocommerce-address-fields
select {
  padding:
    0 14px !important;
}


body.ncs-my-account--address
.woocommerce-address-fields
.select2-container
.select2-selection--single
.select2-selection__rendered {
  line-height:
    50px !important;

  padding-right:
    14px !important;

  padding-left:
    34px !important;

  color:
    var(--ncs-account-text) !important;
}


body.ncs-my-account--address
.woocommerce-address-fields
.select2-container
.select2-selection--single
.select2-selection__arrow {
  height:
    50px !important;
}


body.ncs-my-account--address
.woocommerce-address-fields
input.input-text:focus,
body.ncs-my-account--address
.woocommerce-address-fields
select:focus,
body.ncs-my-account--address
.woocommerce-address-fields
.select2-container--focus
.select2-selection--single {
  border-color:
    var(--ncs-account-olive) !important;

  box-shadow:
    0 0 0 3px
    rgba(96, 104, 75, 0.085) !important;

  outline:
    0 !important;
}


/* Verified billing mobile */

body.ncs-my-account--address
#billing_phone[readonly] {
  cursor:
    default;

  background:
    #f3efe7 !important;

  color:
    #5d5f55 !important;

  border-color:
    #e0dbcf !important;

  direction:
    ltr;

  text-align:
    left;

  font-variant-numeric:
    tabular-nums;
}


body.ncs-my-account--address
.ncs-verified-mobile-label {
  color:
    var(--ncs-account-olive-dark) !important;
}


body.ncs-my-account--address
#billing_phone_field
.description {
  display:
    block !important;

  margin:
    7px 3px 0 !important;

  color:
    #969289 !important;

  font-size:
    9.5px !important;

  line-height:
    1.9 !important;
}


/* Optional billing email */

body.ncs-my-account--address
#billing_email_field
.optional {
  color:
    #a19d94 !important;

  font-size:
    9px !important;

  font-weight:
    400 !important;
}


body.ncs-my-account--address
#billing_email_field
.description {
  display:
    block !important;

  margin:
    7px 3px 0 !important;

  color:
    #969289 !important;

  font-size:
    9.5px !important;
}


/* Save address button */

body.ncs-my-account--address
.woocommerce-address-fields
button.button,
body.ncs-my-account--address
.woocommerce-address-fields
input.button {
  min-width:
    145px;

  min-height:
    49px;

  margin:
    27px 0 0 !important;

  padding:
    10px 22px !important;

  background:
    var(--ncs-account-olive) !important;

  background-color:
    var(--ncs-account-olive) !important;

  color:
    #ffffff !important;

  border:
    1px solid
    var(--ncs-account-olive) !important;

  border-radius:
    13px !important;

  box-shadow:
    0 8px 20px
    rgba(79, 86, 61, 0.14) !important;

  font-family:
    inherit !important;

  font-size:
    11px !important;

  font-weight:
    700 !important;

  text-transform:
    none !important;
}


body.ncs-my-account--address
.woocommerce-address-fields
button.button:hover,
body.ncs-my-account--address
.woocommerce-address-fields
input.button:hover {
  background:
    var(--ncs-account-olive-dark) !important;

  background-color:
    var(--ncs-account-olive-dark) !important;

  border-color:
    var(--ncs-account-olive-dark) !important;

  color:
    #ffffff !important;
}


/* =========================================================
   ADDRESS RESPONSIVE
   ========================================================= */

@media (max-width: 768px) {

  body.ncs-my-account--address
  .woocommerce-MyAccount-content {
    padding:
      22px 17px !important;
  }


  body.ncs-my-account--address
  .woocommerce-Addresses {
    grid-template-columns:
      1fr;
  }


  body.ncs-my-account--address
  .woocommerce-address-fields__field-wrapper {
    grid-template-columns:
      1fr;

    row-gap:
      17px;
  }


  body.ncs-my-account--address
  .woocommerce-address-fields__field-wrapper
  .form-row {
    grid-column:
      1 !important;
  }


  body.ncs-my-account--address
  .woocommerce-address-fields
  > h3,
  body.ncs-my-account--address
  .woocommerce-MyAccount-content
  form
  > h3 {
    font-size:
      20px !important;
  }


  body.ncs-my-account--address
  .woocommerce-address-fields
  button.button,
  body.ncs-my-account--address
  .woocommerce-address-fields
  input.button {
    width:
      100% !important;
  }

}

/* =========================================================
   NESCARO BILLING LABEL FINAL VISUAL FIX
   ========================================================= */

/*
 * WoodMart/WooCommerce may keep the native Persian "تلفن" label
 * even though the verified billing phone is already readonly.
 * Replace only the visible billing-phone label on My Account address edit.
 */
body.ncs-my-account--address
#billing_phone_field
> label {
  font-size: 0 !important;
}


body.ncs-my-account--address
#billing_phone_field
> label::before {
  content: "شماره موبایل تأییدشده";
  color: var(--ncs-account-olive-dark);
  font-family: inherit;
  font-size: 11px;
  font-weight: 700;
  line-height: 1.7;
}


/* Keep the required star visible after replacing the visual label text. */
body.ncs-my-account--address
#billing_phone_field
> label
.required,
body.ncs-my-account--address
#billing_phone_field
> label
abbr.required {
  margin-right: 4px;
  font-size: 11px !important;
}


/*
 * "اختیاری" is already displayed beside the email label.
 * Hide WooCommerce's duplicate description underneath the field.
 */
body.ncs-my-account--address
#billing_email_field
.description {
  display: none !important;
}

/* =========================================================
   NESCARO MY ACCOUNT — WISHLIST
   ========================================================= */

/* Hide WoodMart's English account heading on all My Account endpoints,
   including third-party/WoodMart wishlist endpoints that may not receive
   the custom ncs-my-account body class. */
.wd-my-account-sidebar
> .woocommerce-MyAccount-title.entry-title {
  display: none !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
}


/* Wishlist empty state */
.woocommerce-MyAccount-content
.wd-empty-wishlist {
  display: flex !important;
  flex-direction: column;
  align-items: center;
  justify-content: center;

  min-height: 360px;
  width: 100%;
  max-width: none !important;

  margin: 0 !important;
  padding: 46px 34px !important;

  background:
    linear-gradient(
      180deg,
      rgba(255, 253, 248, 0.96) 0%,
      rgba(249, 246, 238, 0.96) 100%
    ) !important;

  border:
    1px solid
    rgba(58, 61, 48, 0.10) !important;

  border-radius:
    22px !important;

  box-shadow:
    0 16px 42px
    rgba(42, 43, 35, 0.045) !important;

  text-align: center !important;
}


/* Preserve WoodMart heart icon but bring it into Nescaro palette. */
.woocommerce-MyAccount-content
.wd-empty-wishlist::before {
  color: #d7d8d1 !important;
  opacity: 1 !important;
}


/* Title */
.woocommerce-MyAccount-content
.wd-empty-wishlist
.wd-empty-block-title {
  margin: 10px 0 9px !important;

  color: #292a23 !important;

  font-family: inherit !important;

  font-size: 23px !important;

  font-weight: 700 !important;

  line-height: 1.7 !important;

  text-align: center !important;
}


/* Text */
.woocommerce-MyAccount-content
.wd-empty-wishlist
.wd-empty-block-text {
  max-width: 520px;

  margin: 0 auto !important;

  color: #8a867d !important;

  font-size: 11px !important;

  line-height: 2 !important;

  text-align: center !important;
}


/* CTA */
.woocommerce-MyAccount-content
.wd-empty-wishlist
a.wd-empty-block-btn {
  display: inline-flex !important;

  align-items: center;
  justify-content: center;

  min-width: 156px;
  min-height: 50px;

  margin: 24px 0 0 !important;

  padding: 10px 22px !important;

  background: #60684b !important;
  background-color: #60684b !important;

  color: #ffffff !important;

  border:
    1px solid
    #60684b !important;

  border-radius:
    13px !important;

  box-shadow:
    0 8px 20px
    rgba(79, 86, 61, 0.14) !important;

  font-family: inherit !important;

  font-size: 11.5px !important;

  font-weight: 700 !important;

  line-height: 1.6 !important;

  text-decoration: none !important;

  text-transform: none !important;
}


.woocommerce-MyAccount-content
.wd-empty-wishlist
a.wd-empty-block-btn:hover {
  background: #50573f !important;
  background-color: #50573f !important;

  border-color: #50573f !important;

  color: #ffffff !important;

  box-shadow:
    0 10px 24px
    rgba(79, 86, 61, 0.19) !important;
}


/* Keep wishlist content aligned with the rest of Nescaro account UI. */
.wd-my-account-sidebar
+ .woocommerce-MyAccount-content
.wd-empty-wishlist {
  box-sizing: border-box;
}


/* =========================================================
   WISHLIST RESPONSIVE
   ========================================================= */

@media (max-width: 768px) {

  .woocommerce-MyAccount-content
  .wd-empty-wishlist {
    min-height: 300px;

    padding: 36px 20px !important;

    border-radius: 18px !important;
  }


  .woocommerce-MyAccount-content
  .wd-empty-wishlist
  .wd-empty-block-title {
    font-size: 20px !important;
  }


  .woocommerce-MyAccount-content
  .wd-empty-wishlist
  a.wd-empty-block-btn {
    width: 100% !important;

    max-width: 280px;
  }

}

/* =========================================================
   WISHLIST ACTIVE MENU FIX
   ========================================================= */

/*
 * WoodMart Wishlist is a separate page rather than a native WooCommerce
 * endpoint. WooCommerce can therefore leave Dashboard marked as active.
 * On Wishlist, neutralize Dashboard so only Wishlist stays highlighted.
 */
body.ncs-my-account--wishlist
.woocommerce-MyAccount-navigation-link--dashboard.is-active
> a {
  background: transparent !important;
  color: #5f6057 !important;
}


body.ncs-my-account--wishlist
.woocommerce-MyAccount-navigation-link--dashboard.is-active
> a::after {
  display: none !important;
}


/* Preserve the normal Dashboard hover state while on Wishlist. */
body.ncs-my-account--wishlist
.woocommerce-MyAccount-navigation-link--dashboard.is-active
> a:hover {
  background: #f3efe7 !important;
  color: #50573f !important;
}

/* =========================================================
   WISHLIST ACTIVE MENU FIX — ROBUST
   ========================================================= */

/*
 * WoodMart wishlist is a separate page and WooCommerce may still mark
 * Dashboard as active. On the wishlist page, reset every account link
 * first, then explicitly highlight only the wishlist item.
 */
body.ncs-my-account--wishlist
.woocommerce-MyAccount-navigation
li > a {
  background: transparent !important;
  color: #5f6057 !important;
}


body.ncs-my-account--wishlist
.woocommerce-MyAccount-navigation
li > a::after {
  display: none !important;
}


/* Wishlist item: support WoodMart/plugin variants whose class contains "wishlist". */
body.ncs-my-account--wishlist
.woocommerce-MyAccount-navigation
li[class*="wishlist"] > a {
  background: #eef0e8 !important;
  color: #50573f !important;
}


body.ncs-my-account--wishlist
.woocommerce-MyAccount-navigation
li[class*="wishlist"] > a::after {
  content: "";
  display: block !important;
  position: absolute;
  top: 50%;
  right: 0;
  width: 3px;
  height: 20px;
  transform: translateY(-50%);
  background: #60684b;
  border-radius: 999px;
}


/* Keep hover behavior for non-wishlist items. */
body.ncs-my-account--wishlist
.woocommerce-MyAccount-navigation
li:not([class*="wishlist"]) > a:hover {
  background: #f3efe7 !important;
  color: #50573f !important;
}

/* =========================================================
   WISHLIST ACTIVE MENU FIX — LI BACKGROUND
   ========================================================= */

/*
 * WoodMart applies the active background to the <li> itself.
 * On Wishlist, neutralize Dashboard's active <li> completely.
 */
body.ncs-my-account--wishlist
.woocommerce-MyAccount-navigation
li.woocommerce-MyAccount-navigation-link--dashboard,
body.ncs-my-account--wishlist
.woocommerce-MyAccount-navigation
li.woocommerce-MyAccount-navigation-link--dashboard.is-active {
  background: transparent !important;
  background-color: transparent !important;
  border-color: transparent !important;
  box-shadow: none !important;
}


/* Also neutralize any non-wishlist item that WoodMart/WooCommerce marks active. */
body.ncs-my-account--wishlist
.woocommerce-MyAccount-navigation
li.is-active:not([class*="wishlist"]) {
  background: transparent !important;
  background-color: transparent !important;
  border-color: transparent !important;
  box-shadow: none !important;
}


/* Reset the Dashboard link too. */
body.ncs-my-account--wishlist
.woocommerce-MyAccount-navigation
li.woocommerce-MyAccount-navigation-link--dashboard
> a,
body.ncs-my-account--wishlist
.woocommerce-MyAccount-navigation
li.woocommerce-MyAccount-navigation-link--dashboard.is-active
> a {
  background: transparent !important;
  background-color: transparent !important;
  color: #5f6057 !important;
  box-shadow: none !important;
}


/* Only Wishlist receives the selected background. */
body.ncs-my-account--wishlist
.woocommerce-MyAccount-navigation
li[class*="wishlist"] {
  background: #eef0e8 !important;
  background-color: #eef0e8 !important;
  border-radius: 0 !important;
}


body.ncs-my-account--wishlist
.woocommerce-MyAccount-navigation
li[class*="wishlist"]
> a {
  background: transparent !important;
  background-color: transparent !important;
  color: #50573f !important;
}


/* Remove any active marker from Dashboard. */
body.ncs-my-account--wishlist
.woocommerce-MyAccount-navigation
li.woocommerce-MyAccount-navigation-link--dashboard
> a::after,
body.ncs-my-account--wishlist
.woocommerce-MyAccount-navigation
li.woocommerce-MyAccount-navigation-link--dashboard.is-active
> a::after {
  display: none !important;
  content: none !important;
}


/* Keep the Wishlist marker. */
body.ncs-my-account--wishlist
.woocommerce-MyAccount-navigation
li[class*="wishlist"]
> a::after {
  content: "";
  display: block !important;
  position: absolute;
  top: 50%;
  right: 0;
  width: 3px;
  height: 20px;
  transform: translateY(-50%);
  background: #60684b;
  border-radius: 999px;
}

/* =========================================================
   NESCARO CART
   ========================================================= */

body.woocommerce-cart {
  --ncs-cart-text: #292a23;
  --ncs-cart-muted: #8a867d;
  --ncs-cart-border: #ddd8cc;
  --ncs-cart-border-soft: rgba(58, 61, 48, 0.10);
  --ncs-cart-panel: #fffdf8;
  --ncs-cart-panel-soft: #fbfaf6;
  --ncs-cart-olive: #60684b;
  --ncs-cart-olive-dark: #50573f;
  --ncs-cart-olive-light: #eef0e8;
}


/* Overall cart layout */
body.woocommerce-cart
.cart-content-wrapper {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) minmax(285px, 340px);
  gap: 28px !important;
  align-items: start;
  width: 100%;
}


/* Main cart form/card */
body.woocommerce-cart
.woocommerce-cart-form {
  min-width: 0;
  margin: 0 !important;
  padding: 28px 30px 24px !important;
  background: var(--ncs-cart-panel) !important;
  border: 1px solid var(--ncs-cart-border-soft) !important;
  border-radius: 22px !important;
  box-shadow: 0 16px 46px rgba(42, 43, 35, 0.05) !important;
}


/* Table reset */
body.woocommerce-cart
table.shop_table.cart {
  width: 100% !important;
  margin: 0 !important;
  border: 0 !important;
  border-collapse: separate !important;
  border-spacing: 0 !important;
  background: transparent !important;
}


/* Header */
body.woocommerce-cart
table.shop_table.cart thead th {
  padding: 0 12px 16px !important;
  color: #505248 !important;
  background: transparent !important;
  border: 0 !important;
  border-bottom: 1px solid rgba(58, 61, 48, 0.12) !important;
  font-family: inherit !important;
  font-size: 10.5px !important;
  font-weight: 700 !important;
  line-height: 1.7 !important;
  text-transform: none !important;
}


/* Product row */
body.woocommerce-cart
table.shop_table.cart
tbody
tr.cart_item
td {
  padding: 18px 12px !important;
  background: transparent !important;
  color: #5f6058 !important;
  border: 0 !important;
  border-bottom: 1px solid rgba(58, 61, 48, 0.08) !important;
  vertical-align: middle !important;
}


/* Thumbnail */
body.woocommerce-cart
table.shop_table.cart
.product-thumbnail {
  width: 82px;
}


body.woocommerce-cart
table.shop_table.cart
.product-thumbnail img {
  width: 70px !important;
  height: 82px !important;
  object-fit: contain;
  padding: 6px;
  background: #f6f3ec;
  border: 1px solid rgba(58, 61, 48, 0.08);
  border-radius: 13px;
}


/* Product name */
body.woocommerce-cart
table.shop_table.cart
.product-name a {
  color: var(--ncs-cart-text) !important;
  font-family: inherit !important;
  font-size: 11.5px !important;
  font-weight: 700 !important;
  line-height: 1.9 !important;
  text-decoration: none !important;
}


body.woocommerce-cart
table.shop_table.cart
.product-name a:hover {
  color: var(--ncs-cart-olive-dark) !important;
}


/* Price / subtotal */
body.woocommerce-cart
table.shop_table.cart
.product-price,
body.woocommerce-cart
table.shop_table.cart
.product-subtotal {
  color: #5d5f55 !important;
  font-size: 11px !important;
  font-weight: 600 !important;
  white-space: nowrap;
}


/* Remove product */
body.woocommerce-cart
table.shop_table.cart
.product-remove {
  width: 34px;
}


body.woocommerce-cart
table.shop_table.cart
.product-remove
a.remove {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  width: 28px !important;
  height: 28px !important;
  margin: 0 !important;
  color: #9a948a !important;
  background: transparent !important;
  border: 1px solid rgba(58, 61, 48, 0.10) !important;
  border-radius: 50% !important;
  font-size: 16px !important;
  font-weight: 400 !important;
  line-height: 1 !important;
}


body.woocommerce-cart
table.shop_table.cart
.product-remove
a.remove:hover {
  color: #9b4139 !important;
  background: #fff3f1 !important;
  border-color: #edcbc6 !important;
}


/* Quantity */
body.woocommerce-cart
table.shop_table.cart
.product-quantity {
  min-width: 116px;
}


body.woocommerce-cart
.quantity {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  height: 42px !important;
  overflow: hidden;
  background: #ffffff !important;
  border: 1px solid var(--ncs-cart-border) !important;
  border-radius: 11px !important;
}


body.woocommerce-cart
.quantity
input.qty {
  width: 46px !important;
  height: 40px !important;
  min-height: 40px !important;
  margin: 0 !important;
  padding: 0 4px !important;
  color: var(--ncs-cart-text) !important;
  background: #ffffff !important;
  border: 0 !important;
  border-right: 1px solid rgba(58, 61, 48, 0.09) !important;
  border-left: 1px solid rgba(58, 61, 48, 0.09) !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  text-align: center !important;
  font-size: 11px !important;
  font-weight: 700 !important;
}


body.woocommerce-cart
.quantity
button,
body.woocommerce-cart
.quantity
.minus,
body.woocommerce-cart
.quantity
.plus {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  width: 34px !important;
  height: 40px !important;
  min-width: 34px !important;
  min-height: 40px !important;
  margin: 0 !important;
  padding: 0 !important;
  color: #65675e !important;
  background: #faf8f2 !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  font-size: 14px !important;
  font-weight: 500 !important;
}


body.woocommerce-cart
.quantity
button:hover,
body.woocommerce-cart
.quantity
.minus:hover,
body.woocommerce-cart
.quantity
.plus:hover {
  color: var(--ncs-cart-olive-dark) !important;
  background: var(--ncs-cart-olive-light) !important;
}


/* Cart actions row */
body.woocommerce-cart
table.shop_table.cart
td.actions {
  padding: 22px 0 0 !important;
  border: 0 !important;
}


/* Coupon */
body.woocommerce-cart
table.shop_table.cart
.coupon {
  display: flex !important;
  align-items: stretch;
  gap: 8px;
}


body.woocommerce-cart
table.shop_table.cart
.coupon
.input-text {
  width: 180px !important;
  height: 46px !important;
  min-height: 46px !important;
  padding: 0 14px !important;
  color: var(--ncs-cart-text) !important;
  background: #ffffff !important;
  border: 1px solid var(--ncs-cart-border) !important;
  border-radius: 11px !important;
  box-shadow: none !important;
  font-family: inherit !important;
  font-size: 10.5px !important;
}


body.woocommerce-cart
table.shop_table.cart
.coupon
.input-text:focus {
  border-color: var(--ncs-cart-olive) !important;
  box-shadow: 0 0 0 3px rgba(96, 104, 75, 0.08) !important;
  outline: 0 !important;
}


/* Common cart buttons */
body.woocommerce-cart
table.shop_table.cart
button.button,
body.woocommerce-cart
table.shop_table.cart
input.button {
  min-height: 46px !important;
  padding: 9px 18px !important;
  color: #ffffff !important;
  background: var(--ncs-cart-olive) !important;
  background-color: var(--ncs-cart-olive) !important;
  border: 1px solid var(--ncs-cart-olive) !important;
  border-radius: 11px !important;
  box-shadow: none !important;
  font-family: inherit !important;
  font-size: 10.5px !important;
  font-weight: 700 !important;
  text-transform: none !important;
}


body.woocommerce-cart
table.shop_table.cart
button.button:hover,
body.woocommerce-cart
table.shop_table.cart
input.button:hover {
  color: #ffffff !important;
  background: var(--ncs-cart-olive-dark) !important;
  background-color: var(--ncs-cart-olive-dark) !important;
  border-color: var(--ncs-cart-olive-dark) !important;
}


/* Update cart button – secondary treatment */
body.woocommerce-cart
table.shop_table.cart
button[name="update_cart"] {
  color: #53554c !important;
  background: #f3efe7 !important;
  background-color: #f3efe7 !important;
  border-color: #e1dbcf !important;
}


body.woocommerce-cart
table.shop_table.cart
button[name="update_cart"]:hover {
  color: var(--ncs-cart-olive-dark) !important;
  background: #ece8de !important;
  background-color: #ece8de !important;
  border-color: #d8d1c3 !important;
}


/* =========================================================
   CART TOTALS / SUMMARY
   ========================================================= */

body.woocommerce-cart
.cart-totals-section,
body.woocommerce-cart
.cart_totals {
  min-width: 0;
  margin: 0 !important;
}


body.woocommerce-cart
.cart_totals,
body.woocommerce-cart
.cart-totals-inner {
  padding: 26px 24px !important;
  background: var(--ncs-cart-panel) !important;
  border: 1px solid var(--ncs-cart-border-soft) !important;
  border-radius: 22px !important;
  box-shadow: 0 16px 46px rgba(42, 43, 35, 0.05) !important;
}


body.woocommerce-cart
.cart_totals
h2 {
  margin: 0 0 20px !important;
  padding: 0 0 16px !important;
  color: var(--ncs-cart-text) !important;
  border-bottom: 1px solid rgba(58, 61, 48, 0.09) !important;
  font-family: inherit !important;
  font-size: 18px !important;
  font-weight: 700 !important;
  line-height: 1.7 !important;
}


body.woocommerce-cart
.cart_totals
table.shop_table {
  width: 100% !important;
  margin: 0 !important;
  border: 0 !important;
  background: transparent !important;
}


body.woocommerce-cart
.cart_totals
table.shop_table
th,
body.woocommerce-cart
.cart_totals
table.shop_table
td {
  padding: 13px 0 !important;
  border: 0 !important;
  border-bottom: 1px solid rgba(58, 61, 48, 0.08) !important;
  background: transparent !important;
  font-size: 10.5px !important;
}


body.woocommerce-cart
.cart_totals
table.shop_table
th {
  color: #5d5f56 !important;
  font-weight: 600 !important;
  text-align: right !important;
}


body.woocommerce-cart
.cart_totals
table.shop_table
td {
  color: var(--ncs-cart-text) !important;
  font-weight: 700 !important;
  text-align: left !important;
}


body.woocommerce-cart
.cart_totals
.order-total
th,
body.woocommerce-cart
.cart_totals
.order-total
td {
  padding-top: 17px !important;
  border-bottom: 0 !important;
  color: var(--ncs-cart-olive-dark) !important;
  font-size: 13px !important;
  font-weight: 800 !important;
}


/* Checkout CTA */
body.woocommerce-cart
.wc-proceed-to-checkout {
  margin: 20px 0 0 !important;
  padding: 0 !important;
}


body.woocommerce-cart
.wc-proceed-to-checkout
.checkout-button {
  display: flex !important;
  align-items: center;
  justify-content: center;
  width: 100% !important;
  min-height: 52px !important;
  margin: 0 !important;
  padding: 11px 20px !important;
  color: #ffffff !important;
  background: var(--ncs-cart-olive) !important;
  background-color: var(--ncs-cart-olive) !important;
  border: 1px solid var(--ncs-cart-olive) !important;
  border-radius: 13px !important;
  box-shadow: 0 9px 22px rgba(79, 86, 61, 0.16) !important;
  font-family: inherit !important;
  font-size: 11.5px !important;
  font-weight: 700 !important;
  line-height: 1.6 !important;
  text-transform: none !important;
}


body.woocommerce-cart
.wc-proceed-to-checkout
.checkout-button:hover {
  color: #ffffff !important;
  background: var(--ncs-cart-olive-dark) !important;
  background-color: var(--ncs-cart-olive-dark) !important;
  border-color: var(--ncs-cart-olive-dark) !important;
}


/* =========================================================
   EMPTY CART
   ========================================================= */

body.woocommerce-cart
.cart-empty {
  margin: 0 0 18px !important;
  padding: 20px !important;
  color: #696a61 !important;
  background: #f4f2eb !important;
  border: 1px solid rgba(58, 61, 48, 0.10) !important;
  border-radius: 14px !important;
  box-shadow: none !important;
}


/* =========================================================
   CART RESPONSIVE
   ========================================================= */

@media (max-width: 1024px) {

  body.woocommerce-cart
  .cart-content-wrapper {
    grid-template-columns: minmax(0, 1fr) 300px;
    gap: 20px !important;
  }


  body.woocommerce-cart
  .woocommerce-cart-form {
    padding: 24px 22px 20px !important;
  }


  body.woocommerce-cart
  .cart_totals,
  body.woocommerce-cart
  .cart-totals-inner {
    padding: 22px 20px !important;
  }

}


@media (max-width: 768px) {

  body.woocommerce-cart
  .cart-content-wrapper {
    display: block !important;
  }


  body.woocommerce-cart
  .woocommerce-cart-form {
    width: 100% !important;
    margin: 0 0 18px !important;
    padding: 18px 15px !important;
    border-radius: 18px !important;
  }


  /* WooCommerce/WoodMart mobile table becomes stacked. */
  body.woocommerce-cart
  table.shop_table.cart,
  body.woocommerce-cart
  table.shop_table.cart
  tbody,
  body.woocommerce-cart
  table.shop_table.cart
  tr,
  body.woocommerce-cart
  table.shop_table.cart
  td {
    display: block !important;
    width: 100% !important;
  }


  body.woocommerce-cart
  table.shop_table.cart
  thead {
    display: none !important;
  }


  body.woocommerce-cart
  table.shop_table.cart
  tr.cart_item {
    position: relative;
    display: grid !important;
    grid-template-columns: 82px minmax(0, 1fr);
    gap: 6px 14px;
    margin: 0 0 14px !important;
    padding: 14px !important;
    background: var(--ncs-cart-panel-soft) !important;
    border: 1px solid rgba(58, 61, 48, 0.09) !important;
    border-radius: 16px !important;
  }


  body.woocommerce-cart
  table.shop_table.cart
  tr.cart_item
  td {
    min-height: 0;
    padding: 5px 0 !important;
    border: 0 !important;
  }


  body.woocommerce-cart
  table.shop_table.cart
  .product-thumbnail {
    grid-row: 1 / span 4;
    grid-column: 1;
  }


  body.woocommerce-cart
  table.shop_table.cart
  .product-thumbnail img {
    width: 76px !important;
    height: 88px !important;
  }


  body.woocommerce-cart
  table.shop_table.cart
  .product-name,
  body.woocommerce-cart
  table.shop_table.cart
  .product-price,
  body.woocommerce-cart
  table.shop_table.cart
  .product-quantity,
  body.woocommerce-cart
  table.shop_table.cart
  .product-subtotal {
    grid-column: 2;
  }


  body.woocommerce-cart
  table.shop_table.cart
  td[data-title]::before {
    color: #969289 !important;
    font-size: 9px !important;
    font-weight: 600 !important;
  }


  body.woocommerce-cart
  table.shop_table.cart
  .product-remove {
    position: absolute;
    top: 10px;
    left: 10px;
    width: 28px !important;
    padding: 0 !important;
  }


  body.woocommerce-cart
  table.shop_table.cart
  td.actions {
    display: block !important;
    padding-top: 6px !important;
  }


  body.woocommerce-cart
  table.shop_table.cart
  .coupon {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto;
    width: 100% !important;
  }


  body.woocommerce-cart
  table.shop_table.cart
  .coupon
  .input-text {
    width: 100% !important;
  }


  body.woocommerce-cart
  table.shop_table.cart
  button[name="update_cart"] {
    width: 100% !important;
    margin-top: 10px !important;
  }


  body.woocommerce-cart
  .cart_totals,
  body.woocommerce-cart
  .cart-totals-inner {
    width: 100% !important;
    padding: 22px 18px !important;
    border-radius: 18px !important;
  }

}


@media (max-width: 420px) {

  body.woocommerce-cart
  table.shop_table.cart
  .coupon {
    grid-template-columns: 1fr;
  }


  body.woocommerce-cart
  table.shop_table.cart
  .coupon
  button.button {
    width: 100% !important;
  }


  body.woocommerce-cart
  .wc-proceed-to-checkout
  .checkout-button {
    min-height: 50px !important;
  }

}

/* =========================================================
   CART REMOVE ICON — SINGLE X FIX
   ========================================================= */

body.woocommerce-cart
table.shop_table.cart
.product-remove
a.remove {
  font-size: 0 !important;
  line-height: 1 !important;
}


body.woocommerce-cart
table.shop_table.cart
.product-remove
a.remove::before {
  content: "×" !important;
  display: block !important;
  position: static !important;
  width: auto !important;
  height: auto !important;
  margin: 0 !important;
  color: inherit !important;
  background: transparent !important;
  font-family: Arial, sans-serif !important;
  font-size: 17px !important;
  font-weight: 400 !important;
  line-height: 1 !important;
  transform: none !important;
}


body.woocommerce-cart
table.shop_table.cart
.product-remove
a.remove::after {
  content: none !important;
  display: none !important;
}

/* =========================================================
   CART LAYOUT STABILITY FIX — WOODMART
   ========================================================= */

/*
 * WoodMart already controls part of the cart structure.
 * Force a stable two-column flex layout on desktop so cart content
 * and totals stay side-by-side after AJAX/cart refreshes.
 */
body.woocommerce-cart
.cart-content-wrapper {
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: nowrap !important;
  align-items: flex-start !important;
  gap: 28px !important;
  width: 100% !important;
  direction: rtl;
}


/* Main cart area stays on the right and takes available width. */
body.woocommerce-cart
.cart-content-wrapper
> .woocommerce-cart-form {
  flex: 1 1 auto !important;
  width: auto !important;
  min-width: 0 !important;
  max-width: none !important;
  order: 1;
}


/* Totals card stays on the left with a fixed, usable width. */
body.woocommerce-cart
.cart-content-wrapper
> .cart-totals-section,
body.woocommerce-cart
.cart-content-wrapper
> .cart_totals {
  flex: 0 0 340px !important;
  width: 340px !important;
  min-width: 340px !important;
  max-width: 340px !important;
  order: 2;
  align-self: flex-start !important;
}


/* If WoodMart wraps the totals inside another direct child. */
body.woocommerce-cart
.cart-content-wrapper
> div:has(.cart_totals) {
  flex: 0 0 340px !important;
  width: 340px !important;
  min-width: 340px !important;
  max-width: 340px !important;
  order: 2;
}


/* Prevent inner totals from expanding to a new full-width row. */
body.woocommerce-cart
.cart-content-wrapper
.cart_totals,
body.woocommerce-cart
.cart-content-wrapper
.cart-totals-inner {
  width: 100% !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
}


/* Cart updated/success notice */
body.woocommerce-cart
.woocommerce-message,
body.woocommerce-cart
.woocommerce-notices-wrapper
.woocommerce-message {
  width: 100% !important;
  max-width: none !important;
  margin: 0 0 20px !important;
  padding: 14px 18px !important;
  color: #4f593f !important;
  background: #f1f4ec !important;
  border: 1px solid #d4ddc7 !important;
  border-radius: 13px !important;
  box-shadow: none !important;
}


/* Tablet */
@media (max-width: 1024px) {

  body.woocommerce-cart
  .cart-content-wrapper {
    gap: 20px !important;
  }


  body.woocommerce-cart
  .cart-content-wrapper
  > .cart-totals-section,
  body.woocommerce-cart
  .cart-content-wrapper
  > .cart_totals,
  body.woocommerce-cart
  .cart-content-wrapper
  > div:has(.cart_totals) {
    flex-basis: 300px !important;
    width: 300px !important;
    min-width: 300px !important;
    max-width: 300px !important;
  }

}


/* Mobile: stack cart first, totals second. */
@media (max-width: 768px) {

  body.woocommerce-cart
  .cart-content-wrapper {
    display: flex !important;
    flex-direction: column !important;
    flex-wrap: nowrap !important;
    gap: 18px !important;
  }


  body.woocommerce-cart
  .cart-content-wrapper
  > .woocommerce-cart-form,
  body.woocommerce-cart
  .cart-content-wrapper
  > .cart-totals-section,
  body.woocommerce-cart
  .cart-content-wrapper
  > .cart_totals,
  body.woocommerce-cart
  .cart-content-wrapper
  > div:has(.cart_totals) {
    flex: 0 0 auto !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
  }


  body.woocommerce-cart
  .cart-content-wrapper
  > .woocommerce-cart-form {
    order: 1;
  }


  body.woocommerce-cart
  .cart-content-wrapper
  > .cart-totals-section,
  body.woocommerce-cart
  .cart-content-wrapper
  > .cart_totals,
  body.woocommerce-cart
  .cart-content-wrapper
  > div:has(.cart_totals) {
    order: 2;
  }

}

/* =========================================================
   CART UPDATE NOTICE + LAYOUT FIX
   ========================================================= */

/*
 * After cart AJAX/update, WooCommerce inserts notices inside the cart
 * wrapper. Allow wrapping so notices take a full row and the cart form
 * + totals remain side-by-side on the next row.
 */
body.woocommerce-cart
.cart-content-wrapper {
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: wrap !important;
  align-items: flex-start !important;
  gap: 20px 28px !important;
  width: 100% !important;
  direction: rtl;
}


/* Any WooCommerce notices inside the cart wrapper occupy a full row. */
body.woocommerce-cart
.cart-content-wrapper
> .woocommerce-notices-wrapper,
body.woocommerce-cart
.cart-content-wrapper
> .woocommerce-message,
body.woocommerce-cart
.cart-content-wrapper
> .woocommerce-error,
body.woocommerce-cart
.cart-content-wrapper
> .woocommerce-info {
  flex: 0 0 100% !important;
  width: 100% !important;
  max-width: 100% !important;
  order: 0 !important;
  box-sizing: border-box !important;
}


/* Main cart content */
body.woocommerce-cart
.cart-content-wrapper
> .woocommerce-cart-form {
  flex: 1 1 0 !important;
  width: auto !important;
  min-width: 0 !important;
  max-width: none !important;
  order: 1 !important;
}


/* Cart totals */
body.woocommerce-cart
.cart-content-wrapper
> .cart-totals-section,
body.woocommerce-cart
.cart-content-wrapper
> .cart_totals,
body.woocommerce-cart
.cart-content-wrapper
> div:has(.cart_totals) {
  flex: 0 0 340px !important;
  width: 340px !important;
  min-width: 340px !important;
  max-width: 340px !important;
  order: 2 !important;
  align-self: flex-start !important;
}


/* Make sure no miscellaneous direct child steals horizontal space. */
body.woocommerce-cart
.cart-content-wrapper
> script,
body.woocommerce-cart
.cart-content-wrapper
> style {
  display: none !important;
}


/* Tablet */
@media (max-width: 1024px) {

  body.woocommerce-cart
  .cart-content-wrapper
  > .cart-totals-section,
  body.woocommerce-cart
  .cart-content-wrapper
  > .cart_totals,
  body.woocommerce-cart
  .cart-content-wrapper
  > div:has(.cart_totals) {
    flex-basis: 300px !important;
    width: 300px !important;
    min-width: 300px !important;
    max-width: 300px !important;
  }

}


/* Mobile */
@media (max-width: 768px) {

  body.woocommerce-cart
  .cart-content-wrapper {
    display: flex !important;
    flex-direction: column !important;
    flex-wrap: nowrap !important;
    gap: 18px !important;
  }


  body.woocommerce-cart
  .cart-content-wrapper
  > .woocommerce-notices-wrapper,
  body.woocommerce-cart
  .cart-content-wrapper
  > .woocommerce-message,
  body.woocommerce-cart
  .cart-content-wrapper
  > .woocommerce-error,
  body.woocommerce-cart
  .cart-content-wrapper
  > .woocommerce-info,
  body.woocommerce-cart
  .cart-content-wrapper
  > .woocommerce-cart-form,
  body.woocommerce-cart
  .cart-content-wrapper
  > .cart-totals-section,
  body.woocommerce-cart
  .cart-content-wrapper
  > .cart_totals,
  body.woocommerce-cart
  .cart-content-wrapper
  > div:has(.cart_totals) {
    flex: 0 0 auto !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
  }


  body.woocommerce-cart
  .cart-content-wrapper
  > .woocommerce-notices-wrapper,
  body.woocommerce-cart
  .cart-content-wrapper
  > .woocommerce-message,
  body.woocommerce-cart
  .cart-content-wrapper
  > .woocommerce-error,
  body.woocommerce-cart
  .cart-content-wrapper
  > .woocommerce-info {
    order: 0 !important;
  }


  body.woocommerce-cart
  .cart-content-wrapper
  > .woocommerce-cart-form {
    order: 1 !important;
  }


  body.woocommerce-cart
  .cart-content-wrapper
  > .cart-totals-section,
  body.woocommerce-cart
  .cart-content-wrapper
  > .cart_totals,
  body.woocommerce-cart
  .cart-content-wrapper
  > div:has(.cart_totals) {
    order: 2 !important;
  }

}

/* =========================================================
   CART SUCCESS NOTICE ICON FIX
   ========================================================= */

body.woocommerce-cart
.woocommerce-notices-wrapper
.woocommerce-message,
body.woocommerce-cart
.cart-content-wrapper
> .woocommerce-message {
  position: relative !important;
  padding: 14px 48px 14px 18px !important;
  line-height: 1.9 !important;
  text-align: right !important;
}


/* WoodMart/WooCommerce success icon */
body.woocommerce-cart
.woocommerce-notices-wrapper
.woocommerce-message::before,
body.woocommerce-cart
.cart-content-wrapper
> .woocommerce-message::before {
  position: absolute !important;
  top: 50% !important;
  right: 18px !important;
  left: auto !important;
  margin: 0 !important;
  transform: translateY(-50%) !important;
  line-height: 1 !important;
}


/* Prevent a second theme pseudo-icon from overlapping the sentence. */
body.woocommerce-cart
.woocommerce-notices-wrapper
.woocommerce-message::after,
body.woocommerce-cart
.cart-content-wrapper
> .woocommerce-message::after {
  pointer-events: none;
}

/* =========================================================
   NESCARO CHECKOUT
   ========================================================= */

body.woocommerce-checkout {
  --ncs-checkout-text: #292a23;
  --ncs-checkout-muted: #8a867d;
  --ncs-checkout-border: #ddd8cc;
  --ncs-checkout-border-soft: rgba(58, 61, 48, 0.10);
  --ncs-checkout-panel: #fffdf8;
  --ncs-checkout-panel-soft: #fbfaf6;
  --ncs-checkout-olive: #60684b;
  --ncs-checkout-olive-dark: #50573f;
  --ncs-checkout-olive-light: #eef0e8;
}


/* Coupon toggle */
body.woocommerce-checkout
.woocommerce-form-coupon-toggle {
  margin: 0 0 22px !important;
}


body.woocommerce-checkout
.woocommerce-form-coupon-toggle
.woocommerce-info {
  margin: 0 !important;
  padding: 14px 18px !important;
  color: #62645a !important;
  background: #f4f2eb !important;
  border: 1px solid var(--ncs-checkout-border-soft) !important;
  border-radius: 13px !important;
  box-shadow: none !important;
  font-size: 10.5px !important;
  line-height: 1.9 !important;
}


body.woocommerce-checkout
.woocommerce-form-coupon-toggle
.woocommerce-info::before {
  color: var(--ncs-checkout-olive) !important;
}


body.woocommerce-checkout
.woocommerce-form-coupon-toggle
a.showcoupon {
  color: var(--ncs-checkout-olive-dark) !important;
  font-weight: 700 !important;
  text-decoration: none !important;
}


/* Coupon form */
body.woocommerce-checkout
form.checkout_coupon {
  margin: -10px 0 24px !important;
  padding: 18px !important;
  background: var(--ncs-checkout-panel-soft) !important;
  border: 1px solid var(--ncs-checkout-border-soft) !important;
  border-radius: 14px !important;
  box-shadow: none !important;
}


body.woocommerce-checkout
form.checkout_coupon
.form-row {
  margin-bottom: 0 !important;
}


body.woocommerce-checkout
form.checkout_coupon
.input-text {
  min-height: 46px !important;
  padding: 0 14px !important;
  background: #ffffff !important;
  border: 1px solid var(--ncs-checkout-border) !important;
  border-radius: 11px !important;
  box-shadow: none !important;
}


body.woocommerce-checkout
form.checkout_coupon
.button {
  min-height: 46px !important;
  padding: 9px 18px !important;
  color: #ffffff !important;
  background: var(--ncs-checkout-olive) !important;
  border: 1px solid var(--ncs-checkout-olive) !important;
  border-radius: 11px !important;
  box-shadow: none !important;
  font-family: inherit !important;
  font-size: 10.5px !important;
  font-weight: 700 !important;
  text-transform: none !important;
}


/* =========================================================
   MAIN CHECKOUT FORM
   ========================================================= */

body.woocommerce-checkout
form.checkout {
  align-items: flex-start !important;
}


body.woocommerce-checkout
.woocommerce-billing-fields,
body.woocommerce-checkout
.woocommerce-shipping-fields,
body.woocommerce-checkout
.woocommerce-additional-fields {
  margin: 0 0 20px !important;
}


body.woocommerce-checkout
.woocommerce-billing-fields,
body.woocommerce-checkout
.woocommerce-additional-fields {
  padding: 28px 30px !important;
  background: var(--ncs-checkout-panel) !important;
  border: 1px solid var(--ncs-checkout-border-soft) !important;
  border-radius: 22px !important;
  box-shadow: 0 16px 46px rgba(42, 43, 35, 0.045) !important;
}


body.woocommerce-checkout
.woocommerce-billing-fields
> h3,
body.woocommerce-checkout
.woocommerce-additional-fields
> h3,
body.woocommerce-checkout
#order_review_heading {
  margin: 0 0 22px !important;
  padding: 0 0 17px !important;
  color: var(--ncs-checkout-text) !important;
  border-bottom: 1px solid rgba(58, 61, 48, 0.09) !important;
  font-family: inherit !important;
  font-size: 20px !important;
  font-weight: 700 !important;
  line-height: 1.7 !important;
  text-transform: none !important;
}


/* Form field spacing */
body.woocommerce-checkout
.woocommerce-billing-fields__field-wrapper,
body.woocommerce-checkout
.woocommerce-additional-fields__field-wrapper {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  column-gap: 14px;
  row-gap: 18px;
}


body.woocommerce-checkout
.woocommerce-billing-fields__field-wrapper
.form-row,
body.woocommerce-checkout
.woocommerce-additional-fields__field-wrapper
.form-row {
  float: none !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
}


/* Full-width checkout fields */
body.woocommerce-checkout
#billing_company_field,
body.woocommerce-checkout
#billing_country_field,
body.woocommerce-checkout
#billing_state_field,
body.woocommerce-checkout
#billing_city_field,
body.woocommerce-checkout
#billing_address_1_field,
body.woocommerce-checkout
#billing_address_2_field,
body.woocommerce-checkout
#billing_postcode_field,
body.woocommerce-checkout
#billing_phone_field,
body.woocommerce-checkout
#billing_email_field,
body.woocommerce-checkout
#order_comments_field {
  grid-column: 1 / -1;
}


/* Labels */
body.woocommerce-checkout
form.checkout
label {
  display: block;
  margin: 0 2px 8px !important;
  color: #48493f !important;
  font-family: inherit !important;
  font-size: 10.5px !important;
  font-weight: 700 !important;
  line-height: 1.7 !important;
}


body.woocommerce-checkout
form.checkout
.required {
  color: #aa5048 !important;
}


body.woocommerce-checkout
form.checkout
.optional {
  color: #a29d93 !important;
  font-size: 9px !important;
  font-weight: 400 !important;
}


/* Inputs / select2 / textarea */
body.woocommerce-checkout
form.checkout
input.input-text,
body.woocommerce-checkout
form.checkout
select,
body.woocommerce-checkout
form.checkout
textarea,
body.woocommerce-checkout
form.checkout
.select2-container
.select2-selection--single {
  width: 100% !important;
  margin: 0 !important;
  color: var(--ncs-checkout-text) !important;
  background: #ffffff !important;
  border: 1px solid var(--ncs-checkout-border) !important;
  border-radius: 13px !important;
  box-shadow: none !important;
  font-family: inherit !important;
  font-size: 11.5px !important;
}


body.woocommerce-checkout
form.checkout
input.input-text,
body.woocommerce-checkout
form.checkout
select,
body.woocommerce-checkout
form.checkout
.select2-container
.select2-selection--single {
  height: 52px !important;
  min-height: 52px !important;
}


body.woocommerce-checkout
form.checkout
input.input-text {
  padding: 0 15px !important;
}


body.woocommerce-checkout
form.checkout
textarea {
  min-height: 135px !important;
  padding: 14px 15px !important;
  line-height: 1.9 !important;
  resize: vertical;
}


body.woocommerce-checkout
form.checkout
.select2-container
.select2-selection--single
.select2-selection__rendered {
  padding-right: 14px !important;
  padding-left: 36px !important;
  line-height: 50px !important;
  color: var(--ncs-checkout-text) !important;
}


body.woocommerce-checkout
form.checkout
.select2-container
.select2-selection--single
.select2-selection__arrow {
  height: 50px !important;
}


body.woocommerce-checkout
form.checkout
input.input-text:focus,
body.woocommerce-checkout
form.checkout
select:focus,
body.woocommerce-checkout
form.checkout
textarea:focus,
body.woocommerce-checkout
form.checkout
.select2-container--focus
.select2-selection--single {
  border-color: var(--ncs-checkout-olive) !important;
  box-shadow: 0 0 0 3px rgba(96, 104, 75, 0.085) !important;
  outline: 0 !important;
}


/* Verified mobile */
body.woocommerce-checkout
#billing_phone[readonly] {
  cursor: default;
  color: #5d5f55 !important;
  background: #f3efe7 !important;
  border-color: #e0dbcf !important;
  direction: ltr;
  text-align: left;
  font-variant-numeric: tabular-nums;
}


body.woocommerce-checkout
#billing_phone_field
.description {
  display: block !important;
  margin: 7px 3px 0 !important;
  color: #969289 !important;
  font-size: 9.5px !important;
  line-height: 1.9 !important;
}


/* Optional email helper */
body.woocommerce-checkout
#billing_email_field
.description {
  display: block !important;
  margin: 7px 3px 0 !important;
  color: #969289 !important;
  font-size: 9.5px !important;
  line-height: 1.9 !important;
}


/* =========================================================
   ORDER REVIEW CARD
   ========================================================= */

body.woocommerce-checkout
#order_review {
  padding: 28px 26px !important;
  background: var(--ncs-checkout-panel) !important;
  border: 1px solid var(--ncs-checkout-border-soft) !important;
  border-radius: 22px !important;
  box-shadow: 0 16px 46px rgba(42, 43, 35, 0.045) !important;
}


body.woocommerce-checkout
.woocommerce-checkout-review-order-table {
  width: 100% !important;
  margin: 0 !important;
  border: 0 !important;
  border-collapse: separate !important;
  border-spacing: 0 !important;
  background: transparent !important;
}


body.woocommerce-checkout
.woocommerce-checkout-review-order-table
th,
body.woocommerce-checkout
.woocommerce-checkout-review-order-table
td {
  padding: 12px 0 !important;
  border: 0 !important;
  border-bottom: 1px solid rgba(58, 61, 48, 0.08) !important;
  background: transparent !important;
  font-size: 10.5px !important;
  line-height: 1.9 !important;
}


body.woocommerce-checkout
.woocommerce-checkout-review-order-table
thead
th {
  color: #505248 !important;
  font-weight: 700 !important;
}


body.woocommerce-checkout
.woocommerce-checkout-review-order-table
.product-name {
  color: #54564d !important;
  font-weight: 600 !important;
}


body.woocommerce-checkout
.woocommerce-checkout-review-order-table
.product-total {
  color: #5c5e55 !important;
  font-weight: 700 !important;
  white-space: nowrap;
}


body.woocommerce-checkout
.woocommerce-checkout-review-order-table
tfoot
th {
  color: #5d5f56 !important;
  font-weight: 600 !important;
}


body.woocommerce-checkout
.woocommerce-checkout-review-order-table
tfoot
td {
  color: var(--ncs-checkout-text) !important;
  font-weight: 700 !important;
  text-align: left !important;
}


body.woocommerce-checkout
.woocommerce-checkout-review-order-table
.order-total
th,
body.woocommerce-checkout
.woocommerce-checkout-review-order-table
.order-total
td {
  padding-top: 16px !important;
  color: var(--ncs-checkout-olive-dark) !important;
  border-bottom: 0 !important;
  font-size: 13px !important;
  font-weight: 800 !important;
}


/* =========================================================
   PAYMENT
   ========================================================= */

body.woocommerce-checkout
#payment {
  margin: 22px 0 0 !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
}


body.woocommerce-checkout
#payment
ul.payment_methods {
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
}


body.woocommerce-checkout
#payment
ul.payment_methods
li {
  margin: 0 0 12px !important;
  padding: 15px 16px !important;
  background: var(--ncs-checkout-panel-soft) !important;
  border: 1px solid var(--ncs-checkout-border-soft) !important;
  border-radius: 13px !important;
}


body.woocommerce-checkout
#payment
ul.payment_methods
li
label {
  display: inline !important;
  margin: 0 !important;
  color: var(--ncs-checkout-text) !important;
  font-size: 10.5px !important;
  font-weight: 700 !important;
}


body.woocommerce-checkout
#payment
.payment_box {
  margin: 12px 0 0 !important;
  padding: 12px 14px !important;
  color: #77786f !important;
  background: #f5f2ea !important;
  border-radius: 10px !important;
  font-size: 9.5px !important;
  line-height: 1.9 !important;
}


body.woocommerce-checkout
#payment
.payment_box::before {
  border-bottom-color: #f5f2ea !important;
}


/* Privacy / terms text */
body.woocommerce-checkout
.woocommerce-privacy-policy-text,
body.woocommerce-checkout
.woocommerce-terms-and-conditions-wrapper {
  color: #858177 !important;
  font-size: 9.5px !important;
  line-height: 1.9 !important;
}


body.woocommerce-checkout
.woocommerce-privacy-policy-text
a,
body.woocommerce-checkout
.woocommerce-terms-and-conditions-wrapper
a {
  color: var(--ncs-checkout-olive-dark) !important;
}


/* Place order */
body.woocommerce-checkout
#place_order {
  width: 100% !important;
  min-height: 54px !important;
  margin: 18px 0 0 !important;
  padding: 11px 22px !important;
  color: #ffffff !important;
  background: var(--ncs-checkout-olive) !important;
  background-color: var(--ncs-checkout-olive) !important;
  border: 1px solid var(--ncs-checkout-olive) !important;
  border-radius: 13px !important;
  box-shadow: 0 9px 22px rgba(79, 86, 61, 0.16) !important;
  font-family: inherit !important;
  font-size: 11.5px !important;
  font-weight: 700 !important;
  line-height: 1.6 !important;
  text-transform: none !important;
}


body.woocommerce-checkout
#place_order:hover {
  color: #ffffff !important;
  background: var(--ncs-checkout-olive-dark) !important;
  background-color: var(--ncs-checkout-olive-dark) !important;
  border-color: var(--ncs-checkout-olive-dark) !important;
}


/* Checkout validation / notices */
body.woocommerce-checkout
.woocommerce-error,
body.woocommerce-checkout
.woocommerce-message,
body.woocommerce-checkout
.woocommerce-info {
  border-radius: 13px !important;
  box-shadow: none !important;
}


/* =========================================================
   CHECKOUT RESPONSIVE
   ========================================================= */

@media (max-width: 1024px) {

  body.woocommerce-checkout
  .woocommerce-billing-fields,
  body.woocommerce-checkout
  .woocommerce-additional-fields,
  body.woocommerce-checkout
  #order_review {
    padding: 24px 22px !important;
  }

}


@media (max-width: 768px) {

  body.woocommerce-checkout
  .woocommerce-billing-fields,
  body.woocommerce-checkout
  .woocommerce-additional-fields,
  body.woocommerce-checkout
  #order_review {
    padding: 20px 16px !important;
    border-radius: 18px !important;
  }


  body.woocommerce-checkout
  .woocommerce-billing-fields__field-wrapper,
  body.woocommerce-checkout
  .woocommerce-additional-fields__field-wrapper {
    grid-template-columns: 1fr;
    row-gap: 16px;
  }


  body.woocommerce-checkout
  .woocommerce-billing-fields__field-wrapper
  .form-row,
  body.woocommerce-checkout
  .woocommerce-additional-fields__field-wrapper
  .form-row {
    grid-column: 1 !important;
  }


  body.woocommerce-checkout
  .woocommerce-billing-fields
  > h3,
  body.woocommerce-checkout
  .woocommerce-additional-fields
  > h3,
  body.woocommerce-checkout
  #order_review_heading {
    font-size: 18px !important;
  }


  body.woocommerce-checkout
  form.checkout_coupon {
    padding: 15px !important;
  }


  body.woocommerce-checkout
  form.checkout_coupon
  .form-row {
    float: none !important;
    width: 100% !important;
    margin: 0 0 8px !important;
  }


  body.woocommerce-checkout
  form.checkout_coupon
  .button {
    width: 100% !important;
  }

}

/* =========================================================
   NESCARO ORDER RECEIVED / THANK YOU
   ========================================================= */

body.woocommerce-order-received {
  --ncs-order-text: #292a23;
  --ncs-order-muted: #8a867d;
  --ncs-order-border: #ddd8cc;
  --ncs-order-border-soft: rgba(58, 61, 48, 0.10);
  --ncs-order-panel: #fffdf8;
  --ncs-order-panel-soft: #fbfaf6;
  --ncs-order-olive: #60684b;
  --ncs-order-olive-dark: #50573f;
  --ncs-order-olive-light: #eef0e8;
}


/* Main thank-you container */
body.woocommerce-order-received
.woocommerce-order {
  max-width: 930px;
  margin: 0 auto !important;
  padding: 0 0 18px !important;
  direction: rtl;
}


/* Success message */
body.woocommerce-order-received
.woocommerce-thankyou-order-received {
  position: relative;
  margin: 0 0 24px !important;
  padding: 22px 58px 22px 22px !important;
  color: var(--ncs-order-olive-dark) !important;
  background: #f2f5ed !important;
  border: 1px solid #d5dec9 !important;
  border-radius: 16px !important;
  box-shadow: none !important;
  font-family: inherit !important;
  font-size: 17px !important;
  font-weight: 700 !important;
  line-height: 1.9 !important;
  text-align: center !important;
}


body.woocommerce-order-received
.woocommerce-thankyou-order-received::before {
  content: "✓";
  position: absolute;
  top: 50%;
  right: 22px;
  width: 24px;
  height: 24px;
  transform: translateY(-50%);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #ffffff;
  background: var(--ncs-order-olive);
  border-radius: 50%;
  font-size: 13px;
  font-weight: 700;
  line-height: 1;
}


/* Order overview: 4-column summary cards */
body.woocommerce-order-received
ul.woocommerce-order-overview {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px !important;
  margin: 0 0 26px !important;
  padding: 0 !important;
  list-style: none !important;
}


body.woocommerce-order-received
ul.woocommerce-order-overview
li {
  min-width: 0;
  margin: 0 !important;
  padding: 16px 14px !important;
  color: var(--ncs-order-muted) !important;
  background: var(--ncs-order-panel) !important;
  border: 1px solid var(--ncs-order-border-soft) !important;
  border-radius: 14px !important;
  box-shadow: 0 10px 26px rgba(42, 43, 35, 0.035) !important;
  font-size: 9.5px !important;
  line-height: 1.8 !important;
  text-align: center !important;
  text-transform: none !important;
}


body.woocommerce-order-received
ul.woocommerce-order-overview
li
strong {
  display: block !important;
  margin-top: 6px !important;
  color: var(--ncs-order-text) !important;
  font-size: 11.5px !important;
  font-weight: 700 !important;
  line-height: 1.8 !important;
  word-break: break-word;
}


/* Payment method description below overview */
body.woocommerce-order-received
.woocommerce-order
> p:not(.woocommerce-thankyou-order-received) {
  margin: 0 0 24px !important;
  padding: 14px 16px !important;
  color: #77786f !important;
  background: var(--ncs-order-panel-soft) !important;
  border: 1px solid var(--ncs-order-border-soft) !important;
  border-radius: 12px !important;
  font-size: 10px !important;
  line-height: 1.9 !important;
}


/* Shared section card */
body.woocommerce-order-received
.woocommerce-order-details,
body.woocommerce-order-received
.woocommerce-customer-details {
  margin: 0 0 22px !important;
  padding: 26px 28px !important;
  background: var(--ncs-order-panel) !important;
  border: 1px solid var(--ncs-order-border-soft) !important;
  border-radius: 20px !important;
  box-shadow: 0 14px 38px rgba(42, 43, 35, 0.04) !important;
}


/* Headings */
body.woocommerce-order-received
.woocommerce-order-details__title,
body.woocommerce-order-received
.woocommerce-column__title {
  margin: 0 0 18px !important;
  padding: 0 0 15px !important;
  color: var(--ncs-order-text) !important;
  border-bottom: 1px solid rgba(58, 61, 48, 0.09) !important;
  font-family: inherit !important;
  font-size: 19px !important;
  font-weight: 700 !important;
  line-height: 1.8 !important;
}


/* Order table */
body.woocommerce-order-received
table.woocommerce-table--order-details {
  width: 100% !important;
  margin: 0 !important;
  border: 0 !important;
  border-collapse: separate !important;
  border-spacing: 0 !important;
  background: transparent !important;
}


body.woocommerce-order-received
table.woocommerce-table--order-details
th,
body.woocommerce-order-received
table.woocommerce-table--order-details
td {
  padding: 13px 0 !important;
  border: 0 !important;
  border-bottom: 1px solid rgba(58, 61, 48, 0.08) !important;
  background: transparent !important;
  font-size: 10.5px !important;
  line-height: 1.9 !important;
}


body.woocommerce-order-received
table.woocommerce-table--order-details
thead
th {
  color: #505248 !important;
  font-weight: 700 !important;
}


body.woocommerce-order-received
table.woocommerce-table--order-details
.product-name {
  color: #55574e !important;
  font-weight: 600 !important;
}


body.woocommerce-order-received
table.woocommerce-table--order-details
.product-name
a {
  color: var(--ncs-order-text) !important;
  text-decoration: none !important;
}


body.woocommerce-order-received
table.woocommerce-table--order-details
.product-total {
  color: #5c5e55 !important;
  font-weight: 700 !important;
  white-space: nowrap;
}


body.woocommerce-order-received
table.woocommerce-table--order-details
tfoot
th {
  color: #5d5f56 !important;
  font-weight: 600 !important;
}


body.woocommerce-order-received
table.woocommerce-table--order-details
tfoot
td {
  color: var(--ncs-order-text) !important;
  font-weight: 700 !important;
  text-align: left !important;
}


body.woocommerce-order-received
table.woocommerce-table--order-details
tfoot
tr:last-child
th,
body.woocommerce-order-received
table.woocommerce-table--order-details
tfoot
tr:last-child
td {
  padding-top: 17px !important;
  color: var(--ncs-order-olive-dark) !important;
  border-bottom: 0 !important;
  font-size: 13px !important;
  font-weight: 800 !important;
}


/* Customer addresses */
body.woocommerce-order-received
.woocommerce-customer-details
.woocommerce-columns {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px !important;
}


body.woocommerce-order-received
.woocommerce-customer-details
.woocommerce-column {
  float: none !important;
  width: auto !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 20px !important;
  background: var(--ncs-order-panel-soft) !important;
  border: 1px solid var(--ncs-order-border-soft) !important;
  border-radius: 14px !important;
}


body.woocommerce-order-received
.woocommerce-customer-details
address {
  margin: 0 !important;
  padding: 0 !important;
  color: #66685e !important;
  background: transparent !important;
  border: 0 !important;
  font-style: normal !important;
  font-size: 10.5px !important;
  line-height: 2 !important;
}


body.woocommerce-order-received
.woocommerce-customer-details
.woocommerce-customer-details--phone,
body.woocommerce-order-received
.woocommerce-customer-details
.woocommerce-customer-details--email {
  margin: 8px 0 0 !important;
  color: #77786f !important;
  font-size: 10px !important;
}


/* Links */
body.woocommerce-order-received
.woocommerce-order
a {
  color: var(--ncs-order-olive-dark) !important;
}


body.woocommerce-order-received
.woocommerce-order
a:hover {
  color: #3f4631 !important;
}


/* =========================================================
   ORDER RECEIVED RESPONSIVE
   ========================================================= */

@media (max-width: 768px) {

  body.woocommerce-order-received
  .woocommerce-order {
    width: 100% !important;
  }


  body.woocommerce-order-received
  .woocommerce-thankyou-order-received {
    padding: 18px 48px 18px 16px !important;
    font-size: 15px !important;
    text-align: right !important;
  }


  body.woocommerce-order-received
  .woocommerce-thankyou-order-received::before {
    right: 16px;
  }


  body.woocommerce-order-received
  ul.woocommerce-order-overview {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }


  body.woocommerce-order-received
  .woocommerce-order-details,
  body.woocommerce-order-received
  .woocommerce-customer-details {
    padding: 20px 16px !important;
    border-radius: 18px !important;
  }


  body.woocommerce-order-received
  .woocommerce-customer-details
  .woocommerce-columns {
    grid-template-columns: 1fr;
  }


  body.woocommerce-order-received
  table.woocommerce-table--order-details
  th,
  body.woocommerce-order-received
  table.woocommerce-table--order-details
  td {
    font-size: 10px !important;
  }

}


@media (max-width: 420px) {

  body.woocommerce-order-received
  ul.woocommerce-order-overview {
    grid-template-columns: 1fr;
  }

}

/* =========================================================
   NESCARO WOODMART MINI CART SIDEBAR
   ========================================================= */

body {
  --ncs-mini-text: #292a23;
  --ncs-mini-muted: #8a867d;
  --ncs-mini-border: #ddd8cc;
  --ncs-mini-border-soft: rgba(58, 61, 48, 0.10);
  --ncs-mini-panel: #fffdf8;
  --ncs-mini-panel-soft: #fbfaf6;
  --ncs-mini-olive: #60684b;
  --ncs-mini-olive-dark: #50573f;
  --ncs-mini-olive-light: #eef0e8;
}


/* Sidebar shell */
.cart-widget-side,
.wd-cart-side,
.shopping-cart-widget {
  background: var(--ncs-mini-panel) !important;
  color: var(--ncs-mini-text) !important;
}


/* WoodMart side drawer width */
.cart-widget-side.wd-side-hidden,
.wd-cart-side.wd-side-hidden {
  width: min(410px, 92vw) !important;
}


/* Header */
.cart-widget-side .wd-heading,
.wd-cart-side .wd-heading,
.shopping-cart-widget .wd-heading {
  min-height: 76px !important;
  padding: 0 24px !important;
  background: #fffdf8 !important;
  border-bottom: 1px solid rgba(58, 61, 48, 0.09) !important;
}


.cart-widget-side .wd-heading .title,
.wd-cart-side .wd-heading .title,
.shopping-cart-widget .wd-heading .title {
  color: var(--ncs-mini-text) !important;
  font-family: inherit !important;
  font-size: 18px !important;
  font-weight: 700 !important;
  line-height: 1.5 !important;
}


/* Close action */
.cart-widget-side .close-side-widget,
.wd-cart-side .close-side-widget,
.shopping-cart-widget .close-side-widget {
  color: #77786f !important;
}


.cart-widget-side .close-side-widget a,
.wd-cart-side .close-side-widget a,
.shopping-cart-widget .close-side-widget a {
  color: #77786f !important;
  font-size: 11px !important;
  font-weight: 600 !important;
  text-decoration: none !important;
}


.cart-widget-side .close-side-widget a:hover,
.wd-cart-side .close-side-widget a:hover,
.shopping-cart-widget .close-side-widget a:hover {
  color: var(--ncs-mini-olive-dark) !important;
}


/* Body */
.cart-widget-side .shopping-cart-widget-body,
.wd-cart-side .shopping-cart-widget-body,
.shopping-cart-widget .shopping-cart-widget-body {
  padding: 18px 18px 12px !important;
  background: var(--ncs-mini-panel) !important;
}


/* Product list */
.cart-widget-side .woocommerce-mini-cart,
.wd-cart-side .woocommerce-mini-cart,
.shopping-cart-widget .woocommerce-mini-cart {
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
}


/* Product row */
.cart-widget-side .woocommerce-mini-cart-item,
.wd-cart-side .woocommerce-mini-cart-item,
.shopping-cart-widget .woocommerce-mini-cart-item {
  position: relative;
  display: grid !important;
  grid-template-columns: 68px minmax(0, 1fr);
  gap: 6px 12px;
  min-height: 88px;
  margin: 0 0 12px !important;
  padding: 12px 40px 12px 12px !important;
  background: var(--ncs-mini-panel-soft) !important;
  border: 1px solid var(--ncs-mini-border-soft) !important;
  border-radius: 14px !important;
}


/* Product image */
.cart-widget-side .woocommerce-mini-cart-item > a:not(.remove) img,
.wd-cart-side .woocommerce-mini-cart-item > a:not(.remove) img,
.shopping-cart-widget .woocommerce-mini-cart-item > a:not(.remove) img {
  float: none !important;
  width: 64px !important;
  height: 72px !important;
  margin: 0 !important;
  padding: 5px !important;
  object-fit: contain;
  background: #f3efe7 !important;
  border: 1px solid rgba(58, 61, 48, 0.08) !important;
  border-radius: 11px !important;
}


/* Product title */
.cart-widget-side .woocommerce-mini-cart-item > a:not(.remove),
.wd-cart-side .woocommerce-mini-cart-item > a:not(.remove),
.shopping-cart-widget .woocommerce-mini-cart-item > a:not(.remove) {
  display: grid !important;
  grid-template-columns: 68px minmax(0, 1fr);
  grid-column: 1 / -1;
  gap: 12px;
  align-items: center;
  color: var(--ncs-mini-text) !important;
  font-family: inherit !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  line-height: 1.8 !important;
  text-decoration: none !important;
}


/* Quantity / price */
.cart-widget-side .woocommerce-mini-cart-item .quantity,
.wd-cart-side .woocommerce-mini-cart-item .quantity,
.shopping-cart-widget .woocommerce-mini-cart-item .quantity {
  grid-column: 2;
  display: block !important;
  height: auto !important;
  min-height: 0 !important;
  margin: -26px 0 0 !important;
  padding: 0 !important;
  color: #77786f !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  font-size: 10px !important;
  font-weight: 600 !important;
  line-height: 1.8 !important;
}


/* Remove icon */
.cart-widget-side .woocommerce-mini-cart-item .remove,
.wd-cart-side .woocommerce-mini-cart-item .remove,
.shopping-cart-widget .woocommerce-mini-cart-item .remove {
  position: absolute !important;
  top: 12px !important;
  right: auto !important;
  left: 10px !important;
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  width: 26px !important;
  height: 26px !important;
  margin: 0 !important;
  padding: 0 !important;
  color: #9a948a !important;
  background: #fffdf9 !important;
  border: 1px solid rgba(58, 61, 48, 0.10) !important;
  border-radius: 50% !important;
  box-shadow: none !important;
  font-size: 0 !important;
  line-height: 1 !important;
  text-decoration: none !important;
}


.cart-widget-side .woocommerce-mini-cart-item .remove::before,
.wd-cart-side .woocommerce-mini-cart-item .remove::before,
.shopping-cart-widget .woocommerce-mini-cart-item .remove::before {
  content: "×" !important;
  display: block !important;
  position: static !important;
  color: inherit !important;
  font-family: Arial, sans-serif !important;
  font-size: 16px !important;
  font-weight: 400 !important;
  line-height: 1 !important;
  transform: none !important;
}


.cart-widget-side .woocommerce-mini-cart-item .remove::after,
.wd-cart-side .woocommerce-mini-cart-item .remove::after,
.shopping-cart-widget .woocommerce-mini-cart-item .remove::after {
  content: none !important;
  display: none !important;
}


.cart-widget-side .woocommerce-mini-cart-item .remove:hover,
.wd-cart-side .woocommerce-mini-cart-item .remove:hover,
.shopping-cart-widget .woocommerce-mini-cart-item .remove:hover {
  color: #9b4139 !important;
  background: #fff3f1 !important;
  border-color: #edcbc6 !important;
}


/* Footer */
.cart-widget-side .shopping-cart-widget-footer,
.wd-cart-side .shopping-cart-widget-footer,
.shopping-cart-widget .shopping-cart-widget-footer {
  padding: 18px 18px 20px !important;
  background: #fffdf8 !important;
  border-top: 1px solid rgba(58, 61, 48, 0.09) !important;
}


/* Total */
.cart-widget-side .woocommerce-mini-cart__total,
.wd-cart-side .woocommerce-mini-cart__total,
.shopping-cart-widget .woocommerce-mini-cart__total {
  display: flex !important;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  margin: 0 0 14px !important;
  padding: 0 0 14px !important;
  color: var(--ncs-mini-text) !important;
  border-bottom: 1px solid rgba(58, 61, 48, 0.08) !important;
  font-size: 11px !important;
  line-height: 1.8 !important;
}


.cart-widget-side .woocommerce-mini-cart__total strong,
.wd-cart-side .woocommerce-mini-cart__total strong,
.shopping-cart-widget .woocommerce-mini-cart__total strong {
  color: #53554c !important;
  font-size: 11px !important;
  font-weight: 700 !important;
}


.cart-widget-side .woocommerce-mini-cart__total .woocommerce-Price-amount,
.wd-cart-side .woocommerce-mini-cart__total .woocommerce-Price-amount,
.shopping-cart-widget .woocommerce-mini-cart__total .woocommerce-Price-amount {
  color: var(--ncs-mini-olive-dark) !important;
  font-size: 13px !important;
  font-weight: 800 !important;
  white-space: nowrap;
}


/* Buttons wrapper */
.cart-widget-side .woocommerce-mini-cart__buttons,
.wd-cart-side .woocommerce-mini-cart__buttons,
.shopping-cart-widget .woocommerce-mini-cart__buttons {
  display: grid !important;
  grid-template-columns: 1fr;
  gap: 9px !important;
  margin: 0 !important;
}


/* View cart */
.cart-widget-side .woocommerce-mini-cart__buttons .button:not(.checkout),
.wd-cart-side .woocommerce-mini-cart__buttons .button:not(.checkout),
.shopping-cart-widget .woocommerce-mini-cart__buttons .button:not(.checkout) {
  display: flex !important;
  align-items: center;
  justify-content: center;
  width: 100% !important;
  min-height: 46px !important;
  margin: 0 !important;
  padding: 9px 18px !important;
  color: #54564d !important;
  background: #f3efe7 !important;
  border: 1px solid #e0dacf !important;
  border-radius: 11px !important;
  box-shadow: none !important;
  font-family: inherit !important;
  font-size: 10.5px !important;
  font-weight: 700 !important;
  text-transform: none !important;
}


.cart-widget-side .woocommerce-mini-cart__buttons .button:not(.checkout):hover,
.wd-cart-side .woocommerce-mini-cart__buttons .button:not(.checkout):hover,
.shopping-cart-widget .woocommerce-mini-cart__buttons .button:not(.checkout):hover {
  color: var(--ncs-mini-olive-dark) !important;
  background: #ece8de !important;
  border-color: #d7d0c3 !important;
}


/* Checkout CTA */
.cart-widget-side .woocommerce-mini-cart__buttons .checkout,
.wd-cart-side .woocommerce-mini-cart__buttons .checkout,
.shopping-cart-widget .woocommerce-mini-cart__buttons .checkout {
  display: flex !important;
  align-items: center;
  justify-content: center;
  width: 100% !important;
  min-height: 50px !important;
  margin: 0 !important;
  padding: 10px 18px !important;
  color: #ffffff !important;
  background: var(--ncs-mini-olive) !important;
  background-color: var(--ncs-mini-olive) !important;
  border: 1px solid var(--ncs-mini-olive) !important;
  border-radius: 11px !important;
  box-shadow: 0 8px 20px rgba(79, 86, 61, 0.14) !important;
  font-family: inherit !important;
  font-size: 10.5px !important;
  font-weight: 700 !important;
  text-transform: none !important;
}


.cart-widget-side .woocommerce-mini-cart__buttons .checkout:hover,
.wd-cart-side .woocommerce-mini-cart__buttons .checkout:hover,
.shopping-cart-widget .woocommerce-mini-cart__buttons .checkout:hover {
  color: #ffffff !important;
  background: var(--ncs-mini-olive-dark) !important;
  background-color: var(--ncs-mini-olive-dark) !important;
  border-color: var(--ncs-mini-olive-dark) !important;
}


/* Empty mini cart */
.cart-widget-side .woocommerce-mini-cart__empty-message,
.wd-cart-side .woocommerce-mini-cart__empty-message,
.shopping-cart-widget .woocommerce-mini-cart__empty-message {
  margin: 18px !important;
  padding: 24px 18px !important;
  color: #77786f !important;
  background: var(--ncs-mini-panel-soft) !important;
  border: 1px solid var(--ncs-mini-border-soft) !important;
  border-radius: 14px !important;
  font-size: 11px !important;
  line-height: 1.9 !important;
  text-align: center !important;
}


/* Mini-cart scrollbar */
.cart-widget-side .shopping-cart-widget-body,
.wd-cart-side .shopping-cart-widget-body,
.shopping-cart-widget .shopping-cart-widget-body {
  scrollbar-width: thin;
  scrollbar-color: #c8c2b6 transparent;
}


/* Mobile */
@media (max-width: 480px) {

  .cart-widget-side.wd-side-hidden,
  .wd-cart-side.wd-side-hidden {
    width: 94vw !important;
    max-width: 390px !important;
  }


  .cart-widget-side .wd-heading,
  .wd-cart-side .wd-heading,
  .shopping-cart-widget .wd-heading {
    min-height: 68px !important;
    padding: 0 18px !important;
  }


  .cart-widget-side .shopping-cart-widget-body,
  .wd-cart-side .shopping-cart-widget-body,
  .shopping-cart-widget .shopping-cart-widget-body {
    padding: 14px 14px 10px !important;
  }


  .cart-widget-side .shopping-cart-widget-footer,
  .wd-cart-side .shopping-cart-widget-footer,
  .shopping-cart-widget .shopping-cart-widget-footer {
    padding: 14px 14px 16px !important;
  }

}

/* =========================================================
   MINI CART PRODUCT ROW FIX — STABLE WOODMART LAYOUT
   ========================================================= */

/* Product card */
.cart-widget-side .woocommerce-mini-cart-item,
.wd-cart-side .woocommerce-mini-cart-item,
.shopping-cart-widget .woocommerce-mini-cart-item {
  position: relative !important;
  display: block !important;
  min-height: 96px !important;
  margin: 0 0 12px !important;
  padding: 12px 42px 12px 12px !important;
  background: var(--ncs-mini-panel-soft) !important;
  border: 1px solid var(--ncs-mini-border-soft) !important;
  border-radius: 14px !important;
  overflow: hidden !important;
  box-sizing: border-box !important;
}


/* Main product link: image + title */
.cart-widget-side .woocommerce-mini-cart-item > a:not(.remove),
.wd-cart-side .woocommerce-mini-cart-item > a:not(.remove),
.shopping-cart-widget .woocommerce-mini-cart-item > a:not(.remove) {
  display: flex !important;
  flex-direction: row !important;
  align-items: flex-start !important;
  gap: 12px !important;
  width: 100% !important;
  min-width: 0 !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
  color: var(--ncs-mini-text) !important;
  font-family: inherit !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  line-height: 1.8 !important;
  text-decoration: none !important;
  white-space: normal !important;
  word-break: normal !important;
  overflow-wrap: break-word !important;
  box-sizing: border-box !important;
}


/* Product image */
.cart-widget-side .woocommerce-mini-cart-item > a:not(.remove) img,
.wd-cart-side .woocommerce-mini-cart-item > a:not(.remove) img,
.shopping-cart-widget .woocommerce-mini-cart-item > a:not(.remove) img {
  float: none !important;
  flex: 0 0 64px !important;
  width: 64px !important;
  min-width: 64px !important;
  max-width: 64px !important;
  height: 72px !important;
  margin: 0 !important;
  padding: 5px !important;
  object-fit: contain !important;
  background: #f3efe7 !important;
  border: 1px solid rgba(58, 61, 48, 0.08) !important;
  border-radius: 11px !important;
  box-sizing: border-box !important;
}


/* Text portion should consume all remaining width */
.cart-widget-side .woocommerce-mini-cart-item > a:not(.remove) > :not(img),
.wd-cart-side .woocommerce-mini-cart-item > a:not(.remove) > :not(img),
.shopping-cart-widget .woocommerce-mini-cart-item > a:not(.remove) > :not(img) {
  flex: 1 1 auto !important;
  min-width: 0 !important;
  max-width: none !important;
}


/* WoodMart can wrap title/meta in cart-info */
.cart-widget-side .woocommerce-mini-cart-item .cart-info,
.wd-cart-side .woocommerce-mini-cart-item .cart-info,
.shopping-cart-widget .woocommerce-mini-cart-item .cart-info {
  display: block !important;
  width: auto !important;
  min-width: 0 !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
}


/* Product title inside WoodMart wrappers */
.cart-widget-side .woocommerce-mini-cart-item .cart-info .wd-entities-title,
.cart-widget-side .woocommerce-mini-cart-item .cart-info .product-title,
.wd-cart-side .woocommerce-mini-cart-item .cart-info .wd-entities-title,
.wd-cart-side .woocommerce-mini-cart-item .cart-info .product-title,
.shopping-cart-widget .woocommerce-mini-cart-item .cart-info .wd-entities-title,
.shopping-cart-widget .woocommerce-mini-cart-item .cart-info .product-title {
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  margin: 0 0 6px !important;
  color: var(--ncs-mini-text) !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  line-height: 1.8 !important;
  white-space: normal !important;
  word-break: normal !important;
  overflow-wrap: break-word !important;
}


/* Quantity / amount sits under the title, not over it */
.cart-widget-side .woocommerce-mini-cart-item .quantity,
.wd-cart-side .woocommerce-mini-cart-item .quantity,
.shopping-cart-widget .woocommerce-mini-cart-item .quantity {
  display: block !important;
  width: auto !important;
  height: auto !important;
  min-height: 0 !important;
  margin: 6px 76px 0 0 !important;
  padding: 0 !important;
  color: #77786f !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  font-size: 10px !important;
  font-weight: 600 !important;
  line-height: 1.8 !important;
  white-space: nowrap !important;
}


/* Price emphasis */
.cart-widget-side .woocommerce-mini-cart-item .quantity .woocommerce-Price-amount,
.wd-cart-side .woocommerce-mini-cart-item .quantity .woocommerce-Price-amount,
.shopping-cart-widget .woocommerce-mini-cart-item .quantity .woocommerce-Price-amount {
  color: var(--ncs-mini-olive-dark) !important;
  font-weight: 700 !important;
}


/* Remove button remains isolated on the left */
.cart-widget-side .woocommerce-mini-cart-item .remove,
.wd-cart-side .woocommerce-mini-cart-item .remove,
.shopping-cart-widget .woocommerce-mini-cart-item .remove {
  position: absolute !important;
  top: 12px !important;
  left: 10px !important;
  right: auto !important;
  z-index: 3 !important;
}


/* Narrow screens */
@media (max-width: 480px) {

  .cart-widget-side .woocommerce-mini-cart-item,
  .wd-cart-side .woocommerce-mini-cart-item,
  .shopping-cart-widget .woocommerce-mini-cart-item {
    padding-right: 40px !important;
  }


  .cart-widget-side .woocommerce-mini-cart-item > a:not(.remove) img,
  .wd-cart-side .woocommerce-mini-cart-item > a:not(.remove) img,
  .shopping-cart-widget .woocommerce-mini-cart-item > a:not(.remove) img {
    flex-basis: 58px !important;
    width: 58px !important;
    min-width: 58px !important;
    max-width: 58px !important;
    height: 66px !important;
  }


  .cart-widget-side .woocommerce-mini-cart-item .quantity,
  .wd-cart-side .woocommerce-mini-cart-item .quantity,
  .shopping-cart-widget .woocommerce-mini-cart-item .quantity {
    margin-right: 70px !important;
  }

}

/* =========================================================
   MINI CART INLINE TITLE + QTY + PRICE
   ========================================================= */

/*
 * Desktop mini-cart row:
 * image + product title on the right,
 * quantity/price inline beside the title,
 * remove button isolated on the left.
 */
.cart-widget-side .woocommerce-mini-cart-item,
.wd-cart-side .woocommerce-mini-cart-item,
.shopping-cart-widget .woocommerce-mini-cart-item {
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  gap: 12px !important;
  min-height: 92px !important;
  padding: 12px 42px 12px 12px !important;
}


/* Main product link gets most of the row */
.cart-widget-side .woocommerce-mini-cart-item > a:not(.remove),
.wd-cart-side .woocommerce-mini-cart-item > a:not(.remove),
.shopping-cart-widget .woocommerce-mini-cart-item > a:not(.remove) {
  flex: 1 1 auto !important;
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  gap: 12px !important;
  min-width: 0 !important;
  width: auto !important;
  margin: 0 !important;
}


/* Product title stays on one clean line when space allows */
.cart-widget-side .woocommerce-mini-cart-item > a:not(.remove),
.wd-cart-side .woocommerce-mini-cart-item > a:not(.remove),
.shopping-cart-widget .woocommerce-mini-cart-item > a:not(.remove),
.cart-widget-side .woocommerce-mini-cart-item .cart-info .wd-entities-title,
.cart-widget-side .woocommerce-mini-cart-item .cart-info .product-title,
.wd-cart-side .woocommerce-mini-cart-item .cart-info .wd-entities-title,
.wd-cart-side .woocommerce-mini-cart-item .cart-info .product-title,
.shopping-cart-widget .woocommerce-mini-cart-item .cart-info .wd-entities-title,
.shopping-cart-widget .woocommerce-mini-cart-item .cart-info .product-title {
  white-space: normal !important;
  word-break: normal !important;
  overflow-wrap: break-word !important;
}


/* Quantity + price inline beside product name */
.cart-widget-side .woocommerce-mini-cart-item .quantity,
.wd-cart-side .woocommerce-mini-cart-item .quantity,
.shopping-cart-widget .woocommerce-mini-cart-item .quantity {
  flex: 0 0 auto !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 4px !important;
  width: auto !important;
  height: auto !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  color: #77786f !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  font-size: 10px !important;
  font-weight: 600 !important;
  line-height: 1.8 !important;
  white-space: nowrap !important;
}


/* Make amount more visible while keeping it secondary to title */
.cart-widget-side .woocommerce-mini-cart-item .quantity .woocommerce-Price-amount,
.wd-cart-side .woocommerce-mini-cart-item .quantity .woocommerce-Price-amount,
.shopping-cart-widget .woocommerce-mini-cart-item .quantity .woocommerce-Price-amount {
  color: var(--ncs-mini-olive-dark) !important;
  font-size: 10.5px !important;
  font-weight: 700 !important;
}


/* Keep image compact */
.cart-widget-side .woocommerce-mini-cart-item > a:not(.remove) img,
.wd-cart-side .woocommerce-mini-cart-item > a:not(.remove) img,
.shopping-cart-widget .woocommerce-mini-cart-item > a:not(.remove) img {
  flex: 0 0 58px !important;
  width: 58px !important;
  min-width: 58px !important;
  max-width: 58px !important;
  height: 66px !important;
}


/* Slightly smaller typography if drawer is narrow */
@media (max-width: 480px) {

  .cart-widget-side .woocommerce-mini-cart-item,
  .wd-cart-side .woocommerce-mini-cart-item,
  .shopping-cart-widget .woocommerce-mini-cart-item {
    gap: 9px !important;
  }


  .cart-widget-side .woocommerce-mini-cart-item > a:not(.remove),
  .wd-cart-side .woocommerce-mini-cart-item > a:not(.remove),
  .shopping-cart-widget .woocommerce-mini-cart-item > a:not(.remove) {
    gap: 9px !important;
    font-size: 10.5px !important;
  }


  .cart-widget-side .woocommerce-mini-cart-item .quantity,
  .wd-cart-side .woocommerce-mini-cart-item .quantity,
  .shopping-cart-widget .woocommerce-mini-cart-item .quantity {
    font-size: 9.5px !important;
  }

}

/* =========================================================
   MINI CART WOODMART OVERLAY LINK FIX
   ========================================================= */

/*
 * WoodMart adds an invisible full-item link:
 * <a class="cart-item-link wd-fill">نمایش</a>
 * Our previous generic anchor rules made its text visible.
 * Restore it as a transparent overlay while keeping the item clickable.
 */
.cart-widget-side
.woocommerce-mini-cart-item
> a.cart-item-link.wd-fill,
.wd-cart-side
.woocommerce-mini-cart-item
> a.cart-item-link.wd-fill,
.shopping-cart-widget
.woocommerce-mini-cart-item
> a.cart-item-link.wd-fill {
  position: absolute !important;
  inset: 0 !important;
  z-index: 1 !important;
  display: block !important;
  width: auto !important;
  min-width: 0 !important;
  max-width: none !important;
  height: auto !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
  color: transparent !important;
  background: transparent !important;
  border: 0 !important;
  font-size: 0 !important;
  line-height: 0 !important;
  text-indent: -9999px !important;
  white-space: nowrap !important;
}


/* Keep actual product content above the overlay visually. */
.cart-widget-side
.woocommerce-mini-cart-item
.cart-info,
.wd-cart-side
.woocommerce-mini-cart-item
.cart-info,
.shopping-cart-widget
.woocommerce-mini-cart-item
.cart-info,
.cart-widget-side
.woocommerce-mini-cart-item
> a:not(.remove):not(.cart-item-link),
.wd-cart-side
.woocommerce-mini-cart-item
> a:not(.remove):not(.cart-item-link),
.shopping-cart-widget
.woocommerce-mini-cart-item
> a:not(.remove):not(.cart-item-link) {
  position: relative !important;
  z-index: 2 !important;
}


/* Remove button must always stay clickable. */
.cart-widget-side
.woocommerce-mini-cart-item
.remove,
.wd-cart-side
.woocommerce-mini-cart-item
.remove,
.shopping-cart-widget
.woocommerce-mini-cart-item
.remove {
  z-index: 4 !important;
}

/* =========================================================
   MINI CART AJAX QUANTITY CONTROLS
   ========================================================= */

.cart-widget-side .ncs-mini-cart-line,
.wd-cart-side .ncs-mini-cart-line,
.shopping-cart-widget .ncs-mini-cart-line {
  position: relative !important;
  z-index: 3 !important;
  flex: 0 0 auto !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 7px !important;
  width: auto !important;
  min-width: 0 !important;
  height: auto !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  color: #77786f !important;
  background: transparent !important;
  border: 0 !important;
  white-space: nowrap !important;
}


.cart-widget-side .ncs-mini-cart-qty-controls,
.wd-cart-side .ncs-mini-cart-qty-controls,
.shopping-cart-widget .ncs-mini-cart-qty-controls {
  display: inline-flex !important;
  align-items: center !important;
  height: 30px !important;
  overflow: hidden;
  background: #ffffff !important;
  border: 1px solid var(--ncs-mini-border) !important;
  border-radius: 9px !important;
}


.cart-widget-side .ncs-mini-cart-qty-btn,
.wd-cart-side .ncs-mini-cart-qty-btn,
.shopping-cart-widget .ncs-mini-cart-qty-btn {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 27px !important;
  min-width: 27px !important;
  height: 28px !important;
  min-height: 28px !important;
  margin: 0 !important;
  padding: 0 !important;
  color: #65675e !important;
  background: #f7f4ed !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  cursor: pointer !important;
  font-family: Arial, sans-serif !important;
  font-size: 13px !important;
  font-weight: 500 !important;
  line-height: 1 !important;
}


.cart-widget-side .ncs-mini-cart-qty-btn:hover:not(:disabled),
.wd-cart-side .ncs-mini-cart-qty-btn:hover:not(:disabled),
.shopping-cart-widget .ncs-mini-cart-qty-btn:hover:not(:disabled) {
  color: var(--ncs-mini-olive-dark) !important;
  background: var(--ncs-mini-olive-light) !important;
}


.cart-widget-side .ncs-mini-cart-qty-btn:disabled,
.wd-cart-side .ncs-mini-cart-qty-btn:disabled,
.shopping-cart-widget .ncs-mini-cart-qty-btn:disabled {
  opacity: 0.38 !important;
  cursor: default !important;
}


.cart-widget-side .ncs-mini-cart-qty-value,
.wd-cart-side .ncs-mini-cart-qty-value,
.shopping-cart-widget .ncs-mini-cart-qty-value {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-width: 25px !important;
  height: 28px !important;
  padding: 0 4px !important;
  color: var(--ncs-mini-text) !important;
  background: #ffffff !important;
  border-right: 1px solid rgba(58, 61, 48, 0.08) !important;
  border-left: 1px solid rgba(58, 61, 48, 0.08) !important;
  font-size: 10px !important;
  font-weight: 700 !important;
  line-height: 1 !important;
  font-variant-numeric: tabular-nums;
}


.cart-widget-side .ncs-mini-cart-unit-price,
.wd-cart-side .ncs-mini-cart-unit-price,
.shopping-cart-widget .ncs-mini-cart-unit-price {
  display: inline-flex !important;
  align-items: center !important;
  gap: 3px !important;
  color: var(--ncs-mini-olive-dark) !important;
  font-size: 9.5px !important;
  font-weight: 700 !important;
  line-height: 1.6 !important;
  white-space: nowrap !important;
}


.cart-widget-side .ncs-mini-cart-multiply,
.wd-cart-side .ncs-mini-cart-multiply,
.shopping-cart-widget .ncs-mini-cart-multiply {
  color: #9a968d !important;
  font-weight: 500 !important;
}


.cart-widget-side .ncs-mini-cart-line.is-loading,
.wd-cart-side .ncs-mini-cart-line.is-loading,
.shopping-cart-widget .ncs-mini-cart-line.is-loading {
  opacity: 0.55 !important;
  pointer-events: none !important;
}


.cart-widget-side .ncs-mini-cart-qty-error,
.wd-cart-side .ncs-mini-cart-qty-error,
.shopping-cart-widget .ncs-mini-cart-qty-error {
  position: absolute;
  right: 76px;
  bottom: 4px;
  left: 42px;
  z-index: 5;
  display: block;
  color: #9b4139;
  font-size: 8.5px;
  line-height: 1.6;
  text-align: right;
}


/* Keep the item link flexible and let controls occupy only their real width. */
.cart-widget-side .woocommerce-mini-cart-item > a:not(.remove):not(.cart-item-link),
.wd-cart-side .woocommerce-mini-cart-item > a:not(.remove):not(.cart-item-link),
.shopping-cart-widget .woocommerce-mini-cart-item > a:not(.remove):not(.cart-item-link) {
  flex: 1 1 auto !important;
  min-width: 0 !important;
}


@media (max-width: 480px) {

  .cart-widget-side .ncs-mini-cart-line,
  .wd-cart-side .ncs-mini-cart-line,
  .shopping-cart-widget .ncs-mini-cart-line {
    gap: 5px !important;
  }


  .cart-widget-side .ncs-mini-cart-qty-btn,
  .wd-cart-side .ncs-mini-cart-qty-btn,
  .shopping-cart-widget .ncs-mini-cart-qty-btn {
    width: 25px !important;
    min-width: 25px !important;
  }


  .cart-widget-side .ncs-mini-cart-qty-value,
  .wd-cart-side .ncs-mini-cart-qty-value,
  .shopping-cart-widget .ncs-mini-cart-qty-value {
    min-width: 23px !important;
  }


  .cart-widget-side .ncs-mini-cart-unit-price,
  .wd-cart-side .ncs-mini-cart-unit-price,
  .shopping-cart-widget .ncs-mini-cart-unit-price {
    font-size: 9px !important;
  }

}

/* =========================================================
   MINI CART QUANTITY VISIBILITY FIX V2
   ========================================================= */

/* Do not let WoodMart's native .quantity rules control our AJAX control. */
.cart-widget-side .ncs-mini-cart-line,
.wd-cart-side .ncs-mini-cart-line,
.shopping-cart-widget .ncs-mini-cart-line {
  position: relative !important;
  z-index: 5 !important;
  flex: 0 0 auto !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: flex-end !important;
  gap: 6px !important;
  width: auto !important;
  max-width: 150px !important;
  height: 30px !important;
  min-height: 30px !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: visible !important;
  color: #77786f !important;
  background: transparent !important;
  border: 0 !important;
  white-space: nowrap !important;
}


/* Let controls have guaranteed visible width. */
.cart-widget-side .ncs-mini-cart-qty-controls,
.wd-cart-side .ncs-mini-cart-qty-controls,
.shopping-cart-widget .ncs-mini-cart-qty-controls {
  flex: 0 0 80px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 80px !important;
  min-width: 80px !important;
  height: 30px !important;
  min-height: 30px !important;
  overflow: visible !important;
  opacity: 1 !important;
  visibility: visible !important;
}


/* Strong reset against WoodMart button rules. */
.cart-widget-side .ncs-mini-cart-qty-controls > .ncs-mini-cart-qty-btn,
.wd-cart-side .ncs-mini-cart-qty-controls > .ncs-mini-cart-qty-btn,
.shopping-cart-widget .ncs-mini-cart-qty-controls > .ncs-mini-cart-qty-btn {
  position: static !important;
  display: inline-flex !important;
  flex: 0 0 26px !important;
  align-items: center !important;
  justify-content: center !important;
  width: 26px !important;
  min-width: 26px !important;
  max-width: 26px !important;
  height: 28px !important;
  min-height: 28px !important;
  max-height: 28px !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: visible !important;
  opacity: 1 !important;
  visibility: visible !important;
  color: #5f6257 !important;
  background: #f5f1e9 !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  text-indent: 0 !important;
  font-family: Arial, sans-serif !important;
  font-size: 14px !important;
  font-weight: 500 !important;
  line-height: 1 !important;
}


.cart-widget-side .ncs-mini-cart-qty-value,
.wd-cart-side .ncs-mini-cart-qty-value,
.shopping-cart-widget .ncs-mini-cart-qty-value {
  position: static !important;
  display: inline-flex !important;
  flex: 0 0 28px !important;
  align-items: center !important;
  justify-content: center !important;
  width: 28px !important;
  min-width: 28px !important;
  max-width: 28px !important;
  height: 28px !important;
  min-height: 28px !important;
  margin: 0 !important;
  padding: 0 !important;
  opacity: 1 !important;
  visibility: visible !important;
  color: var(--ncs-mini-text) !important;
  background: #fff !important;
  font-size: 10px !important;
  font-weight: 700 !important;
  line-height: 1 !important;
}


/* Compact price next to controls. */
.cart-widget-side .ncs-mini-cart-unit-price,
.wd-cart-side .ncs-mini-cart-unit-price,
.shopping-cart-widget .ncs-mini-cart-unit-price {
  flex: 0 1 auto !important;
  display: inline-flex !important;
  align-items: center !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: visible !important;
  opacity: 1 !important;
  visibility: visible !important;
  color: var(--ncs-mini-olive-dark) !important;
  font-size: 9px !important;
  font-weight: 700 !important;
  line-height: 1.4 !important;
  white-space: nowrap !important;
}


/* Give title and controls realistic room inside the drawer. */
.cart-widget-side .woocommerce-mini-cart-item,
.wd-cart-side .woocommerce-mini-cart-item,
.shopping-cart-widget .woocommerce-mini-cart-item {
  overflow: visible !important;
  gap: 8px !important;
}


.cart-widget-side .woocommerce-mini-cart-item > a:not(.remove):not(.cart-item-link),
.wd-cart-side .woocommerce-mini-cart-item > a:not(.remove):not(.cart-item-link),
.shopping-cart-widget .woocommerce-mini-cart-item > a:not(.remove):not(.cart-item-link) {
  flex: 1 1 165px !important;
  min-width: 120px !important;
}


/* Old decorative multiply sign is no longer used. */
.cart-widget-side .ncs-mini-cart-multiply,
.wd-cart-side .ncs-mini-cart-multiply,
.shopping-cart-widget .ncs-mini-cart-multiply {
  display: none !important;
}


@media (max-width: 480px) {

  .cart-widget-side .ncs-mini-cart-line,
  .wd-cart-side .ncs-mini-cart-line,
  .shopping-cart-widget .ncs-mini-cart-line {
    max-width: 142px !important;
    gap: 4px !important;
  }


  .cart-widget-side .ncs-mini-cart-unit-price,
  .wd-cart-side .ncs-mini-cart-unit-price,
  .shopping-cart-widget .ncs-mini-cart-unit-price {
    font-size: 8.5px !important;
  }

}

/* =========================================================
   MINI CART QUANTITY — FINAL COMPACT UI
   ========================================================= */

.cart-widget-side .woocommerce-mini-cart-item,
.wd-cart-side .woocommerce-mini-cart-item,
.shopping-cart-widget .woocommerce-mini-cart-item {
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
  min-height: 82px !important;
  padding: 10px 38px 10px 10px !important;
  overflow: visible !important;
}


/* Product link gets the flexible title/image area. */
.cart-widget-side .woocommerce-mini-cart-item > a:not(.remove):not(.cart-item-link),
.wd-cart-side .woocommerce-mini-cart-item > a:not(.remove):not(.cart-item-link),
.shopping-cart-widget .woocommerce-mini-cart-item > a:not(.remove):not(.cart-item-link) {
  flex: 1 1 auto !important;
  min-width: 0 !important;
  gap: 8px !important;
  font-size: 10px !important;
  line-height: 1.65 !important;
}


.cart-widget-side .woocommerce-mini-cart-item > a:not(.remove):not(.cart-item-link) img,
.wd-cart-side .woocommerce-mini-cart-item > a:not(.remove):not(.cart-item-link) img,
.shopping-cart-widget .woocommerce-mini-cart-item > a:not(.remove):not(.cart-item-link) img {
  flex: 0 0 48px !important;
  width: 48px !important;
  min-width: 48px !important;
  max-width: 48px !important;
  height: 56px !important;
}


/* Compact inline quantity + unit price. */
.cart-widget-side .ncs-mini-cart-line,
.wd-cart-side .ncs-mini-cart-line,
.shopping-cart-widget .ncs-mini-cart-line {
  position: relative !important;
  z-index: 20 !important;
  flex: 0 0 auto !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
  width: auto !important;
  max-width: none !important;
  height: 26px !important;
  min-height: 26px !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: visible !important;
  pointer-events: auto !important;
  background: transparent !important;
  border: 0 !important;
  direction: ltr !important;
  white-space: nowrap !important;
}


.cart-widget-side .ncs-mini-cart-qty-controls,
.wd-cart-side .ncs-mini-cart-qty-controls,
.shopping-cart-widget .ncs-mini-cart-qty-controls {
  flex: 0 0 auto !important;
  display: inline-grid !important;
  grid-template-columns: 22px 25px 22px !important;
  align-items: center !important;
  width: 69px !important;
  min-width: 69px !important;
  height: 26px !important;
  min-height: 26px !important;
  overflow: hidden !important;
  background: #fff !important;
  border: 1px solid #ddd8cc !important;
  border-radius: 8px !important;
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: auto !important;
}


.cart-widget-side .ncs-mini-cart-qty-btn,
.wd-cart-side .ncs-mini-cart-qty-btn,
.shopping-cart-widget .ncs-mini-cart-qty-btn {
  position: static !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 22px !important;
  min-width: 22px !important;
  max-width: 22px !important;
  height: 24px !important;
  min-height: 24px !important;
  max-height: 24px !important;
  margin: 0 !important;
  padding: 0 !important;
  color: #606257 !important;
  background: #f6f3ec !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  cursor: pointer !important;
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: auto !important;
  text-indent: 0 !important;
  font-family: Arial, sans-serif !important;
  font-size: 12px !important;
  font-weight: 500 !important;
  line-height: 1 !important;
}


.cart-widget-side .ncs-mini-cart-qty-btn:hover:not(:disabled),
.wd-cart-side .ncs-mini-cart-qty-btn:hover:not(:disabled),
.shopping-cart-widget .ncs-mini-cart-qty-btn:hover:not(:disabled) {
  color: #50573f !important;
  background: #eef0e8 !important;
}


.cart-widget-side .ncs-mini-cart-qty-btn:disabled,
.wd-cart-side .ncs-mini-cart-qty-btn:disabled,
.shopping-cart-widget .ncs-mini-cart-qty-btn:disabled {
  opacity: .32 !important;
  cursor: default !important;
}


.cart-widget-side .ncs-mini-cart-qty-value,
.wd-cart-side .ncs-mini-cart-qty-value,
.shopping-cart-widget .ncs-mini-cart-qty-value {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 25px !important;
  min-width: 25px !important;
  height: 24px !important;
  min-height: 24px !important;
  margin: 0 !important;
  padding: 0 !important;
  color: #292a23 !important;
  background: #fff !important;
  border-right: 1px solid rgba(58, 61, 48, .08) !important;
  border-left: 1px solid rgba(58, 61, 48, .08) !important;
  font-size: 9.5px !important;
  font-weight: 700 !important;
  line-height: 1 !important;
  font-variant-numeric: tabular-nums;
}


.cart-widget-side .ncs-mini-cart-unit-price,
.wd-cart-side .ncs-mini-cart-unit-price,
.shopping-cart-widget .ncs-mini-cart-unit-price {
  display: inline-flex !important;
  align-items: center !important;
  color: #50573f !important;
  font-size: 8.5px !important;
  font-weight: 700 !important;
  line-height: 1.3 !important;
  direction: rtl !important;
  white-space: nowrap !important;
}


/* Overlay must never steal clicks from controls. */
.cart-widget-side .woocommerce-mini-cart-item > a.cart-item-link.wd-fill,
.wd-cart-side .woocommerce-mini-cart-item > a.cart-item-link.wd-fill,
.shopping-cart-widget .woocommerce-mini-cart-item > a.cart-item-link.wd-fill {
  z-index: 1 !important;
  pointer-events: none !important;
}


.cart-widget-side .woocommerce-mini-cart-item .remove,
.wd-cart-side .woocommerce-mini-cart-item .remove,
.shopping-cart-widget .woocommerce-mini-cart-item .remove {
  z-index: 30 !important;
  pointer-events: auto !important;
}


/* Visible AJAX error. */
.cart-widget-side .ncs-mini-cart-qty-error,
.wd-cart-side .ncs-mini-cart-qty-error,
.shopping-cart-widget .ncs-mini-cart-qty-error {
  position: absolute !important;
  right: 64px !important;
  bottom: -2px !important;
  left: 36px !important;
  z-index: 40 !important;
  display: block !important;
  color: #9b4139 !important;
  font-size: 8px !important;
  line-height: 1.5 !important;
  text-align: right !important;
}


.cart-widget-side .ncs-mini-cart-line.is-loading,
.wd-cart-side .ncs-mini-cart-line.is-loading,
.shopping-cart-widget .ncs-mini-cart-line.is-loading {
  opacity: .55 !important;
}


@media (max-width: 480px) {

  .cart-widget-side .woocommerce-mini-cart-item,
  .wd-cart-side .woocommerce-mini-cart-item,
  .shopping-cart-widget .woocommerce-mini-cart-item {
    gap: 6px !important;
    padding-right: 36px !important;
  }


  .cart-widget-side .woocommerce-mini-cart-item > a:not(.remove):not(.cart-item-link) img,
  .wd-cart-side .woocommerce-mini-cart-item > a:not(.remove):not(.cart-item-link) img,
  .shopping-cart-widget .woocommerce-mini-cart-item > a:not(.remove):not(.cart-item-link) img {
    flex-basis: 44px !important;
    width: 44px !important;
    min-width: 44px !important;
    max-width: 44px !important;
    height: 52px !important;
  }

}

/* =========================================================
   NESCARO MINI CART — EMPTY STATE FINAL
   ========================================================= */

/* Main empty state container */
.cart-widget-side .wd-empty-mini-cart,
.wd-cart-side .wd-empty-mini-cart,
.shopping-cart-widget .wd-empty-mini-cart,
.cart-widget-side .woocommerce-mini-cart__empty-message,
.wd-cart-side .woocommerce-mini-cart__empty-message,
.shopping-cart-widget .woocommerce-mini-cart__empty-message {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  width: auto !important;
  min-height: 280px !important;
  margin: 18px !important;
  padding: 34px 22px !important;
  color: #6f7168 !important;
  background: #fbfaf6 !important;
  border: 1px solid rgba(58, 61, 48, 0.10) !important;
  border-radius: 18px !important;
  box-shadow: 0 12px 34px rgba(42, 43, 35, 0.035) !important;
  text-align: center !important;
}


/* WoodMart empty-cart icon wrappers */
.cart-widget-side .wd-empty-mini-cart-icon,
.wd-cart-side .wd-empty-mini-cart-icon,
.shopping-cart-widget .wd-empty-mini-cart-icon,
.cart-widget-side .empty-cart-icon,
.wd-cart-side .empty-cart-icon,
.shopping-cart-widget .empty-cart-icon {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 72px !important;
  height: 72px !important;
  margin: 0 0 18px !important;
  color: #7b8464 !important;
  background: #eef0e8 !important;
  border: 1px solid #d9decf !important;
  border-radius: 50% !important;
  opacity: 1 !important;
}


/* If WoodMart draws the empty cart via icon-font/pseudo element */
.cart-widget-side .wd-empty-mini-cart::before,
.wd-cart-side .wd-empty-mini-cart::before,
.shopping-cart-widget .wd-empty-mini-cart::before,
.cart-widget-side .woocommerce-mini-cart__empty-message::before,
.wd-cart-side .woocommerce-mini-cart__empty-message::before,
.shopping-cart-widget .woocommerce-mini-cart__empty-message::before {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 72px !important;
  height: 72px !important;
  margin: 0 0 18px !important;
  color: #7b8464 !important;
  background: #eef0e8 !important;
  border: 1px solid #d9decf !important;
  border-radius: 50% !important;
  font-size: 34px !important;
  line-height: 1 !important;
  opacity: 1 !important;
}


/* Actual SVG / i / icon inside empty state */
.cart-widget-side .wd-empty-mini-cart svg,
.wd-cart-side .wd-empty-mini-cart svg,
.shopping-cart-widget .wd-empty-mini-cart svg,
.cart-widget-side .wd-empty-mini-cart i,
.wd-cart-side .wd-empty-mini-cart i,
.shopping-cart-widget .wd-empty-mini-cart i {
  width: 34px !important;
  height: 34px !important;
  max-width: 34px !important;
  max-height: 34px !important;
  color: #7b8464 !important;
  fill: currentColor !important;
  font-size: 34px !important;
  opacity: 1 !important;
}


/* Empty-cart text */
.cart-widget-side .wd-empty-mini-cart p,
.wd-cart-side .wd-empty-mini-cart p,
.shopping-cart-widget .wd-empty-mini-cart p,
.cart-widget-side .woocommerce-mini-cart__empty-message,
.wd-cart-side .woocommerce-mini-cart__empty-message,
.shopping-cart-widget .woocommerce-mini-cart__empty-message {
  color: #6e7067 !important;
  font-family: inherit !important;
  font-size: 11px !important;
  font-weight: 500 !important;
  line-height: 1.95 !important;
}


/* Heading if theme provides one */
.cart-widget-side .wd-empty-mini-cart .title,
.cart-widget-side .wd-empty-mini-cart h3,
.wd-cart-side .wd-empty-mini-cart .title,
.wd-cart-side .wd-empty-mini-cart h3,
.shopping-cart-widget .wd-empty-mini-cart .title,
.shopping-cart-widget .wd-empty-mini-cart h3 {
  margin: 0 0 8px !important;
  color: #292a23 !important;
  font-family: inherit !important;
  font-size: 17px !important;
  font-weight: 700 !important;
  line-height: 1.7 !important;
}


/* Return-to-shop area */
.cart-widget-side .wd-empty-mini-cart .return-to-shop,
.wd-cart-side .wd-empty-mini-cart .return-to-shop,
.shopping-cart-widget .wd-empty-mini-cart .return-to-shop {
  width: 100% !important;
  margin: 20px 0 0 !important;
}


/* Return to shop button */
.cart-widget-side .wd-empty-mini-cart .button,
.cart-widget-side .wd-empty-mini-cart a.button,
.cart-widget-side .return-to-shop .button,
.wd-cart-side .wd-empty-mini-cart .button,
.wd-cart-side .wd-empty-mini-cart a.button,
.wd-cart-side .return-to-shop .button,
.shopping-cart-widget .wd-empty-mini-cart .button,
.shopping-cart-widget .wd-empty-mini-cart a.button,
.shopping-cart-widget .return-to-shop .button {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: min(220px, 100%) !important;
  min-height: 48px !important;
  margin: 0 auto !important;
  padding: 10px 20px !important;
  color: #ffffff !important;
  background: #60684b !important;
  background-color: #60684b !important;
  border: 1px solid #60684b !important;
  border-radius: 12px !important;
  box-shadow: 0 8px 20px rgba(79, 86, 61, 0.14) !important;
  font-family: inherit !important;
  font-size: 10.5px !important;
  font-weight: 700 !important;
  line-height: 1.6 !important;
  text-transform: none !important;
}


.cart-widget-side .wd-empty-mini-cart .button:hover,
.cart-widget-side .return-to-shop .button:hover,
.wd-cart-side .wd-empty-mini-cart .button:hover,
.wd-cart-side .return-to-shop .button:hover,
.shopping-cart-widget .wd-empty-mini-cart .button:hover,
.shopping-cart-widget .return-to-shop .button:hover {
  color: #ffffff !important;
  background: #50573f !important;
  background-color: #50573f !important;
  border-color: #50573f !important;
}


/* Some WoodMart versions place the empty state directly in widget content */
.cart-widget-side .widget_shopping_cart_content > .wd-empty-mini-cart,
.wd-cart-side .widget_shopping_cart_content > .wd-empty-mini-cart,
.shopping-cart-widget .widget_shopping_cart_content > .wd-empty-mini-cart {
  min-height: 300px !important;
}


/* Mobile refinement */
@media (max-width: 480px) {

  .cart-widget-side .wd-empty-mini-cart,
  .wd-cart-side .wd-empty-mini-cart,
  .shopping-cart-widget .wd-empty-mini-cart,
  .cart-widget-side .woocommerce-mini-cart__empty-message,
  .wd-cart-side .woocommerce-mini-cart__empty-message,
  .shopping-cart-widget .woocommerce-mini-cart__empty-message {
    min-height: 250px !important;
    margin: 14px !important;
    padding: 28px 16px !important;
    border-radius: 16px !important;
  }


  .cart-widget-side .wd-empty-mini-cart-icon,
  .wd-cart-side .wd-empty-mini-cart-icon,
  .shopping-cart-widget .wd-empty-mini-cart-icon,
  .cart-widget-side .wd-empty-mini-cart::before,
  .wd-cart-side .wd-empty-mini-cart::before,
  .shopping-cart-widget .wd-empty-mini-cart::before {
    width: 64px !important;
    height: 64px !important;
    font-size: 30px !important;
  }


  .cart-widget-side .wd-empty-mini-cart .button,
  .cart-widget-side .return-to-shop .button,
  .wd-cart-side .wd-empty-mini-cart .button,
  .wd-cart-side .return-to-shop .button,
  .shopping-cart-widget .wd-empty-mini-cart .button,
  .shopping-cart-widget .return-to-shop .button {
    width: 100% !important;
  }

}

/* =========================================================
   MINI CART EMPTY — RETURN BUTTON FIX
   ========================================================= */

/*
 * WoodMart may render the return-to-shop button outside the inner
 * empty-state block. :has() scopes these rules only to an empty Mini Cart.
 */
.cart-widget-side
.widget_shopping_cart_content:has(.wd-empty-mini-cart)
.return-to-shop,
.wd-cart-side
.widget_shopping_cart_content:has(.wd-empty-mini-cart)
.return-to-shop,
.shopping-cart-widget
.widget_shopping_cart_content:has(.wd-empty-mini-cart)
.return-to-shop {
  display: flex !important;
  justify-content: center !important;
  width: 100% !important;
  margin: 18px 0 0 !important;
  padding: 0 !important;
}


.cart-widget-side
.widget_shopping_cart_content:has(.wd-empty-mini-cart)
.return-to-shop
a.button,
.cart-widget-side
.widget_shopping_cart_content:has(.wd-empty-mini-cart)
.return-to-shop
.button,
.wd-cart-side
.widget_shopping_cart_content:has(.wd-empty-mini-cart)
.return-to-shop
a.button,
.wd-cart-side
.widget_shopping_cart_content:has(.wd-empty-mini-cart)
.return-to-shop
.button,
.shopping-cart-widget
.widget_shopping_cart_content:has(.wd-empty-mini-cart)
.return-to-shop
a.button,
.shopping-cart-widget
.widget_shopping_cart_content:has(.wd-empty-mini-cart)
.return-to-shop
.button {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;

  width: 100% !important;
  max-width: 240px !important;
  min-height: 48px !important;

  margin: 0 auto !important;
  padding: 11px 22px !important;

  color: #ffffff !important;
  background: #60684b !important;
  background-color: #60684b !important;

  border: 1px solid #60684b !important;
  border-radius: 12px !important;

  box-shadow: 0 8px 20px rgba(79, 86, 61, 0.15) !important;

  font-family: inherit !important;
  font-size: 10.5px !important;
  font-weight: 700 !important;
  line-height: 1.6 !important;

  text-decoration: none !important;
  text-transform: none !important;
}


.cart-widget-side
.widget_shopping_cart_content:has(.wd-empty-mini-cart)
.return-to-shop
a.button:hover,
.cart-widget-side
.widget_shopping_cart_content:has(.wd-empty-mini-cart)
.return-to-shop
.button:hover,
.wd-cart-side
.widget_shopping_cart_content:has(.wd-empty-mini-cart)
.return-to-shop
a.button:hover,
.wd-cart-side
.widget_shopping_cart_content:has(.wd-empty-mini-cart)
.return-to-shop
.button:hover,
.shopping-cart-widget
.widget_shopping_cart_content:has(.wd-empty-mini-cart)
.return-to-shop
a.button:hover,
.shopping-cart-widget
.widget_shopping_cart_content:has(.wd-empty-mini-cart)
.return-to-shop
.button:hover {
  color: #ffffff !important;
  background: #50573f !important;
  background-color: #50573f !important;
  border-color: #50573f !important;
}


/*
 * Fallback for WoodMart builds that place the empty button directly
 * under widget_shopping_cart_content rather than inside return-to-shop.
 */
.cart-widget-side
.widget_shopping_cart_content:has(.wd-empty-mini-cart)
> a.button,
.wd-cart-side
.widget_shopping_cart_content:has(.wd-empty-mini-cart)
> a.button,
.shopping-cart-widget
.widget_shopping_cart_content:has(.wd-empty-mini-cart)
> a.button {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;

  width: calc(100% - 44px) !important;
  max-width: 240px !important;
  min-height: 48px !important;

  margin: 18px auto 0 !important;
  padding: 11px 22px !important;

  color: #ffffff !important;
  background: #60684b !important;
  background-color: #60684b !important;

  border: 1px solid #60684b !important;
  border-radius: 12px !important;

  box-shadow: 0 8px 20px rgba(79, 86, 61, 0.15) !important;

  font-family: inherit !important;
  font-size: 10.5px !important;
  font-weight: 700 !important;
  line-height: 1.6 !important;

  text-decoration: none !important;
  text-transform: none !important;
}


@media (max-width: 480px) {

  .cart-widget-side
  .widget_shopping_cart_content:has(.wd-empty-mini-cart)
  .return-to-shop
  a.button,
  .wd-cart-side
  .widget_shopping_cart_content:has(.wd-empty-mini-cart)
  .return-to-shop
  a.button,
  .shopping-cart-widget
  .widget_shopping_cart_content:has(.wd-empty-mini-cart)
  .return-to-shop
  a.button,
  .cart-widget-side
  .widget_shopping_cart_content:has(.wd-empty-mini-cart)
  > a.button,
  .wd-cart-side
  .widget_shopping_cart_content:has(.wd-empty-mini-cart)
  > a.button,
  .shopping-cart-widget
  .widget_shopping_cart_content:has(.wd-empty-mini-cart)
  > a.button {
    width: calc(100% - 32px) !important;
    max-width: none !important;
    min-height: 50px !important;
  }

}

/* =========================================================
   MINI CART EMPTY — EXACT WOODMART DOM FIX
   DOM observed:
   .wd-empty-mini-cart
     > p.woocommerce-mini-cart__empty-message.empty.title
     > a.btn.btn-accent.wc-backward
   ========================================================= */

.cart-widget-side .wd-empty-mini-cart,
.wd-cart-side .wd-empty-mini-cart,
.shopping-cart-widget .wd-empty-mini-cart {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: flex-start !important;

  width: calc(100% - 28px) !important;
  min-height: 310px !important;

  margin: 14px auto 0 !important;
  padding: 30px 18px 24px !important;

  background: #fbfaf6 !important;
  border: 1px solid rgba(58, 61, 48, 0.10) !important;
  border-radius: 18px !important;
  box-shadow: 0 12px 34px rgba(42, 43, 35, 0.035) !important;

  text-align: center !important;
}


/* Keep WoodMart empty-cart icon compact. */
.cart-widget-side .wd-empty-mini-cart::before,
.wd-cart-side .wd-empty-mini-cart::before,
.shopping-cart-widget .wd-empty-mini-cart::before {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;

  width: 62px !important;
  height: 62px !important;

  margin: 0 0 22px !important;

  color: #7b8464 !important;
  background: #eef0e8 !important;

  border: 1px solid #d9decf !important;
  border-radius: 50% !important;

  font-size: 30px !important;
  line-height: 1 !important;

  opacity: 1 !important;
}


/* The message itself must NOT become another card. */
.cart-widget-side .wd-empty-mini-cart
> p.woocommerce-mini-cart__empty-message.empty.title,
.wd-cart-side .wd-empty-mini-cart
> p.woocommerce-mini-cart__empty-message.empty.title,
.shopping-cart-widget .wd-empty-mini-cart
> p.woocommerce-mini-cart__empty-message.empty.title {
  display: block !important;

  width: 100% !important;
  min-height: 0 !important;

  margin: 0 0 22px !important;
  padding: 0 !important;

  color: #292a23 !important;
  background: transparent !important;

  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;

  font-family: inherit !important;
  font-size: 12px !important;
  font-weight: 600 !important;
  line-height: 1.9 !important;

  text-align: center !important;
}


/* Exact WoodMart button selector from Inspect. */
.cart-widget-side .wd-empty-mini-cart
> a.btn.btn-accent.wc-backward,
.wd-cart-side .wd-empty-mini-cart
> a.btn.btn-accent.wc-backward,
.shopping-cart-widget .wd-empty-mini-cart
> a.btn.btn-accent.wc-backward {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;

  width: 100% !important;
  max-width: 250px !important;
  min-height: 48px !important;

  margin: 0 auto !important;
  padding: 11px 22px !important;

  color: #ffffff !important;
  background: #60684b !important;
  background-color: #60684b !important;

  border: 1px solid #60684b !important;
  border-radius: 12px !important;

  box-shadow: 0 8px 20px rgba(79, 86, 61, 0.15) !important;

  font-family: inherit !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  line-height: 1.6 !important;

  text-decoration: none !important;
  text-transform: none !important;

  transform: none !important;
}


.cart-widget-side .wd-empty-mini-cart
> a.btn.btn-accent.wc-backward:hover,
.wd-cart-side .wd-empty-mini-cart
> a.btn.btn-accent.wc-backward:hover,
.shopping-cart-widget .wd-empty-mini-cart
> a.btn.btn-accent.wc-backward:hover {
  color: #ffffff !important;
  background: #50573f !important;
  background-color: #50573f !important;
  border-color: #50573f !important;
}


/* Remove WoodMart button-specific geometry. */
.cart-widget-side .wd-empty-mini-cart
> a.btn.btn-accent.wc-backward::before,
.cart-widget-side .wd-empty-mini-cart
> a.btn.btn-accent.wc-backward::after,
.wd-cart-side .wd-empty-mini-cart
> a.btn.btn-accent.wc-backward::before,
.wd-cart-side .wd-empty-mini-cart
> a.btn.btn-accent.wc-backward::after,
.shopping-cart-widget .wd-empty-mini-cart
> a.btn.btn-accent.wc-backward::before,
.shopping-cart-widget .wd-empty-mini-cart
> a.btn.btn-accent.wc-backward::after {
  content: none !important;
  display: none !important;
}


@media (max-width: 480px) {

  .cart-widget-side .wd-empty-mini-cart,
  .wd-cart-side .wd-empty-mini-cart,
  .shopping-cart-widget .wd-empty-mini-cart {
    width: calc(100% - 20px) !important;
    min-height: 270px !important;
    padding: 26px 14px 20px !important;
  }


  .cart-widget-side .wd-empty-mini-cart
  > a.btn.btn-accent.wc-backward,
  .wd-cart-side .wd-empty-mini-cart
  > a.btn.btn-accent.wc-backward,
  .shopping-cart-widget .wd-empty-mini-cart
  > a.btn.btn-accent.wc-backward {
    max-width: none !important;
    min-height: 50px !important;
  }

}

/* =========================================================
   NESCARO MY ACCOUNT — VIEW ORDER
   WooCommerce single order details inside My Account
   ========================================================= */

/*
 * This section is intentionally scoped to My Account only.
 * It reuses the visual language of the Order Received page
 * without affecting Checkout, Cart or the Thank You page.
 */


/* ---------------------------------------------------------
   ORDER SUMMARY / STATUS SENTENCE
   Standard WooCommerce markup contains:
   mark.order-number / mark.order-date / mark.order-status
   --------------------------------------------------------- */

body.ncs-my-account
.woocommerce-MyAccount-content
> p:first-child:has(mark.order-number),
body.ncs-my-account
.woocommerce-MyAccount-content
> p:first-child:has(.order-number) {
  display: flex !important;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px 7px;

  width: 100%;

  margin: 0 0 26px !important;
  padding: 16px 18px !important;

  color: #707169 !important;
  background: #fbfaf6 !important;

  border: 1px solid rgba(58, 61, 48, 0.10) !important;
  border-radius: 14px !important;

  box-shadow: none !important;

  font-family: inherit !important;
  font-size: 10.5px !important;
  line-height: 1.9 !important;
}


/* Remove WooCommerce's marker-like default treatment. */
body.ncs-my-account
.woocommerce-MyAccount-content
mark.order-number,
body.ncs-my-account
.woocommerce-MyAccount-content
mark.order-date,
body.ncs-my-account
.woocommerce-MyAccount-content
mark.order-status {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;

  min-height: 28px;

  margin: 0 2px !important;
  padding: 4px 10px !important;

  color: #505248 !important;
  background: #f0ede5 !important;

  border: 1px solid rgba(58, 61, 48, 0.08) !important;
  border-radius: 999px !important;

  font-family: inherit !important;
  font-size: 10px !important;
  font-style: normal !important;
  font-weight: 700 !important;
  line-height: 1.5 !important;

  white-space: nowrap;
}


/* Status is the most important pill. */
body.ncs-my-account
.woocommerce-MyAccount-content
mark.order-status {
  color: #4d593c !important;
  background: #eef0e8 !important;
  border-color: rgba(96, 104, 75, 0.15) !important;
}


/* ---------------------------------------------------------
   ORDER DETAILS CARD
   --------------------------------------------------------- */

body.ncs-my-account
.woocommerce-MyAccount-content
.woocommerce-order-details {
  width: 100%;

  margin: 0 0 24px !important;
  padding: 26px 28px !important;

  background: #fffdf8 !important;

  border: 1px solid rgba(58, 61, 48, 0.10) !important;
  border-radius: 20px !important;

  box-shadow: 0 14px 38px rgba(42, 43, 35, 0.04) !important;
}


/* Section heading */
body.ncs-my-account
.woocommerce-MyAccount-content
.woocommerce-order-details__title {
  margin: 0 0 18px !important;
  padding: 0 0 15px !important;

  color: var(--ncs-account-text) !important;

  border-bottom: 1px solid rgba(58, 61, 48, 0.09) !important;

  font-family: inherit !important;
  font-size: 20px !important;
  font-weight: 700 !important;
  line-height: 1.8 !important;

  text-transform: none !important;
}


/* ---------------------------------------------------------
   ORDER DETAILS TABLE
   --------------------------------------------------------- */

body.ncs-my-account
.woocommerce-MyAccount-content
table.woocommerce-table--order-details,
body.ncs-my-account
.woocommerce-MyAccount-content
.woocommerce-order-details
table.shop_table {
  width: 100% !important;

  margin: 0 !important;

  background: transparent !important;

  border: 0 !important;
  border-collapse: separate !important;
  border-spacing: 0 !important;

  table-layout: auto;
}


body.ncs-my-account
.woocommerce-MyAccount-content
.woocommerce-order-details
table
th,
body.ncs-my-account
.woocommerce-MyAccount-content
.woocommerce-order-details
table
td {
  padding: 13px 0 !important;

  color: #5f6057 !important;
  background: transparent !important;

  border: 0 !important;
  border-bottom: 1px solid rgba(58, 61, 48, 0.08) !important;

  font-family: inherit !important;
  font-size: 10.5px !important;
  line-height: 1.9 !important;

  vertical-align: middle !important;
}


/* Table header */
body.ncs-my-account
.woocommerce-MyAccount-content
.woocommerce-order-details
table
thead
th {
  padding-top: 0 !important;
  padding-bottom: 14px !important;

  color: #484a40 !important;

  font-size: 10.5px !important;
  font-weight: 700 !important;

  text-transform: none !important;
}


/* Product */
body.ncs-my-account
.woocommerce-MyAccount-content
.woocommerce-order-details
.product-name {
  color: #55574e !important;
  font-weight: 600 !important;
}


body.ncs-my-account
.woocommerce-MyAccount-content
.woocommerce-order-details
.product-name
a {
  color: var(--ncs-account-text) !important;
  font-weight: 700 !important;
  text-decoration: none !important;
}


body.ncs-my-account
.woocommerce-MyAccount-content
.woocommerce-order-details
.product-name
a:hover {
  color: var(--ncs-account-olive-dark) !important;
}


/* Product quantity */
body.ncs-my-account
.woocommerce-MyAccount-content
.woocommerce-order-details
.product-quantity {
  margin-inline-start: 5px;

  color: #7d7e75 !important;

  font-size: 10px !important;
  font-weight: 600 !important;
}


/* Price column */
body.ncs-my-account
.woocommerce-MyAccount-content
.woocommerce-order-details
.product-total {
  color: #56584f !important;
  font-weight: 700 !important;
  white-space: nowrap;
}


/* Footer labels */
body.ncs-my-account
.woocommerce-MyAccount-content
.woocommerce-order-details
table
tfoot
th {
  width: 34%;

  color: #5d5f56 !important;

  font-weight: 600 !important;
  text-align: right !important;
}


/* Footer values */
body.ncs-my-account
.woocommerce-MyAccount-content
.woocommerce-order-details
table
tfoot
td {
  color: var(--ncs-account-text) !important;

  font-weight: 700 !important;
  text-align: left !important;
}


/* Final total: visually stronger than other totals. */
body.ncs-my-account
.woocommerce-MyAccount-content
.woocommerce-order-details
table
tfoot
tr:last-child
th,
body.ncs-my-account
.woocommerce-MyAccount-content
.woocommerce-order-details
table
tfoot
tr:last-child
td {
  padding-top: 17px !important;

  color: var(--ncs-account-olive-dark) !important;

  border-bottom: 0 !important;

  font-size: 13px !important;
  font-weight: 800 !important;
}


/* ---------------------------------------------------------
   ACTION BUTTONS
   Covers WooCommerce "Order again" and custom order actions
   such as product-review / experience buttons.
   --------------------------------------------------------- */

body.ncs-my-account
.woocommerce-MyAccount-content
.woocommerce-order-details
a.button,
body.ncs-my-account
.woocommerce-MyAccount-content
.woocommerce-order-details
button.button,
body.ncs-my-account
.woocommerce-MyAccount-content
p.order-again
a.button,
body.ncs-my-account
.woocommerce-MyAccount-content
.woocommerce-order-again
a.button {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;

  min-width: 132px;
  min-height: 44px;

  margin: 4px 0 !important;
  padding: 9px 18px !important;

  color: #ffffff !important;

  background: var(--ncs-account-olive) !important;
  background-color: var(--ncs-account-olive) !important;

  border: 1px solid var(--ncs-account-olive) !important;
  border-radius: 11px !important;

  box-shadow: 0 7px 17px rgba(79, 86, 61, 0.12) !important;

  font-family: inherit !important;
  font-size: 10px !important;
  font-weight: 700 !important;
  line-height: 1.6 !important;

  text-decoration: none !important;
  text-transform: none !important;

  transition:
    background-color 0.18s ease,
    border-color 0.18s ease,
    box-shadow 0.18s ease,
    transform 0.14s ease;
}


body.ncs-my-account
.woocommerce-MyAccount-content
.woocommerce-order-details
a.button:hover,
body.ncs-my-account
.woocommerce-MyAccount-content
.woocommerce-order-details
button.button:hover,
body.ncs-my-account
.woocommerce-MyAccount-content
p.order-again
a.button:hover,
body.ncs-my-account
.woocommerce-MyAccount-content
.woocommerce-order-again
a.button:hover {
  color: #ffffff !important;

  background: var(--ncs-account-olive-dark) !important;
  background-color: var(--ncs-account-olive-dark) !important;

  border-color: var(--ncs-account-olive-dark) !important;

  box-shadow: 0 9px 22px rgba(79, 86, 61, 0.17) !important;

  transform: translateY(-1px);
}


/* Keep an order-again button separated from the order table. */
body.ncs-my-account
.woocommerce-MyAccount-content
p.order-again,
body.ncs-my-account
.woocommerce-MyAccount-content
.woocommerce-order-again {
  margin: 18px 0 0 !important;
  padding: 0 !important;
}


/* ---------------------------------------------------------
   CUSTOMER / BILLING DETAILS CARD
   --------------------------------------------------------- */

body.ncs-my-account
.woocommerce-MyAccount-content
.woocommerce-customer-details {
  width: 100%;

  margin: 0 !important;
  padding: 26px 28px !important;

  background: #fffdf8 !important;

  border: 1px solid rgba(58, 61, 48, 0.10) !important;
  border-radius: 20px !important;

  box-shadow: 0 14px 38px rgba(42, 43, 35, 0.04) !important;
}


/* Billing / shipping section headings */
body.ncs-my-account
.woocommerce-MyAccount-content
.woocommerce-customer-details
.woocommerce-column__title {
  margin: 0 0 15px !important;
  padding: 0 0 13px !important;

  color: var(--ncs-account-text) !important;

  border-bottom: 1px solid rgba(58, 61, 48, 0.09) !important;

  font-family: inherit !important;
  font-size: 18px !important;
  font-weight: 700 !important;
  line-height: 1.8 !important;
}


/* If billing + shipping both exist, present them as two clean cards. */
body.ncs-my-account
.woocommerce-MyAccount-content
.woocommerce-customer-details
.woocommerce-columns {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px !important;

  width: 100%;

  margin: 0 !important;
}


body.ncs-my-account
.woocommerce-MyAccount-content
.woocommerce-customer-details
.woocommerce-column {
  float: none !important;

  width: auto !important;
  max-width: none !important;

  margin: 0 !important;
  padding: 20px !important;

  background: #fbfaf6 !important;

  border: 1px solid rgba(58, 61, 48, 0.09) !important;
  border-radius: 14px !important;
}


/* Single address should not look unnecessarily narrow. */
body.ncs-my-account
.woocommerce-MyAccount-content
.woocommerce-customer-details
.woocommerce-columns
.woocommerce-column:only-child {
  grid-column: 1 / -1;
}


/* Address typography */
body.ncs-my-account
.woocommerce-MyAccount-content
.woocommerce-customer-details
address {
  margin: 0 !important;
  padding: 0 !important;

  color: #64665d !important;
  background: transparent !important;

  border: 0 !important;

  font-family: inherit !important;
  font-size: 10.5px !important;
  font-style: normal !important;
  font-weight: 400 !important;
  line-height: 2.05 !important;
}


/* Phone / email beneath address */
body.ncs-my-account
.woocommerce-MyAccount-content
.woocommerce-customer-details
.woocommerce-customer-details--phone,
body.ncs-my-account
.woocommerce-MyAccount-content
.woocommerce-customer-details
.woocommerce-customer-details--email {
  margin: 8px 0 0 !important;

  color: #77786f !important;

  font-size: 10px !important;
  line-height: 1.9 !important;
}


/* ---------------------------------------------------------
   VIEW ORDER FOCUS
   --------------------------------------------------------- */

body.ncs-my-account
.woocommerce-MyAccount-content
.woocommerce-order-details
a:focus-visible,
body.ncs-my-account
.woocommerce-MyAccount-content
.woocommerce-order-details
button:focus-visible {
  outline: 2px solid rgba(96, 104, 75, 0.35) !important;
  outline-offset: 2px;
}


/* =========================================================
   VIEW ORDER RESPONSIVE
   ========================================================= */

@media (max-width: 768px) {

  body.ncs-my-account
  .woocommerce-MyAccount-content
  > p:first-child:has(mark.order-number),
  body.ncs-my-account
  .woocommerce-MyAccount-content
  > p:first-child:has(.order-number) {
    gap: 7px 5px;

    margin-bottom: 18px !important;
    padding: 14px 13px !important;

    border-radius: 12px !important;

    font-size: 10px !important;
  }


  body.ncs-my-account
  .woocommerce-MyAccount-content
  mark.order-number,
  body.ncs-my-account
  .woocommerce-MyAccount-content
  mark.order-date,
  body.ncs-my-account
  .woocommerce-MyAccount-content
  mark.order-status {
    min-height: 26px;

    padding: 3px 8px !important;

    font-size: 9.5px !important;
  }


  body.ncs-my-account
  .woocommerce-MyAccount-content
  .woocommerce-order-details,
  body.ncs-my-account
  .woocommerce-MyAccount-content
  .woocommerce-customer-details {
    margin-bottom: 18px !important;
    padding: 20px 16px !important;

    border-radius: 17px !important;
  }


  body.ncs-my-account
  .woocommerce-MyAccount-content
  .woocommerce-order-details__title {
    font-size: 18px !important;
  }


  body.ncs-my-account
  .woocommerce-MyAccount-content
  .woocommerce-customer-details
  .woocommerce-columns {
    grid-template-columns: 1fr;
  }


  body.ncs-my-account
  .woocommerce-MyAccount-content
  .woocommerce-customer-details
  .woocommerce-column {
    grid-column: 1 !important;

    padding: 17px !important;
  }


  body.ncs-my-account
  .woocommerce-MyAccount-content
  .woocommerce-order-details
  table
  th,
  body.ncs-my-account
  .woocommerce-MyAccount-content
  .woocommerce-order-details
  table
  td {
    padding-top: 11px !important;
    padding-bottom: 11px !important;

    font-size: 9.8px !important;
  }


  body.ncs-my-account
  .woocommerce-MyAccount-content
  .woocommerce-order-details
  table
  tfoot
  th {
    width: 42%;
  }


  body.ncs-my-account
  .woocommerce-MyAccount-content
  .woocommerce-order-details
  a.button,
  body.ncs-my-account
  .woocommerce-MyAccount-content
  .woocommerce-order-details
  button.button,
  body.ncs-my-account
  .woocommerce-MyAccount-content
  p.order-again
  a.button,
  body.ncs-my-account
  .woocommerce-MyAccount-content
  .woocommerce-order-again
  a.button {
    min-height: 42px;
    padding: 8px 14px !important;

    font-size: 9.5px !important;
  }

}


@media (max-width: 420px) {

  body.ncs-my-account
  .woocommerce-MyAccount-content
  .woocommerce-order-details,
  body.ncs-my-account
  .woocommerce-MyAccount-content
  .woocommerce-customer-details {
    padding-right: 13px !important;
    padding-left: 13px !important;
  }


  body.ncs-my-account
  .woocommerce-MyAccount-content
  .woocommerce-order-details
  table
  th,
  body.ncs-my-account
  .woocommerce-MyAccount-content
  .woocommerce-order-details
  table
  td {
    font-size: 9.3px !important;
  }


  body.ncs-my-account
  .woocommerce-MyAccount-content
  .woocommerce-order-details
  table
  tfoot
  tr:last-child
  th,
  body.ncs-my-account
  .woocommerce-MyAccount-content
  .woocommerce-order-details
  table
  tfoot
  tr:last-child
  td {
    font-size: 11.5px !important;
  }


  body.ncs-my-account
  .woocommerce-MyAccount-content
  .woocommerce-order-details
  a.button,
  body.ncs-my-account
  .woocommerce-MyAccount-content
  .woocommerce-order-details
  button.button,
  body.ncs-my-account
  .woocommerce-MyAccount-content
  p.order-again
  a.button,
  body.ncs-my-account
  .woocommerce-MyAccount-content
  .woocommerce-order-again
  a.button {
    width: 100% !important;
    min-width: 0;
  }

}

/* =========================================================
   NESCARO VIEW ORDER — POLISH FINAL
   Operations alignment + compact summary + compact address
   ========================================================= */


/* ---------------------------------------------------------
   ORDER SUMMARY — cleaner spacing and clearer pills
   --------------------------------------------------------- */

body.ncs-my-account
.woocommerce-MyAccount-content
> p:first-child:has(mark.order-number),
body.ncs-my-account
.woocommerce-MyAccount-content
> p:first-child:has(.order-number) {
  align-items: center !important;
  gap: 7px 6px !important;

  margin-bottom: 22px !important;
  padding: 14px 16px !important;

  background: #fbfaf6 !important;
  border-radius: 13px !important;

  font-size: 10px !important;
  line-height: 1.8 !important;
}


body.ncs-my-account
.woocommerce-MyAccount-content
mark.order-number,
body.ncs-my-account
.woocommerce-MyAccount-content
mark.order-date,
body.ncs-my-account
.woocommerce-MyAccount-content
mark.order-status {
  min-height: 27px !important;

  margin: 0 1px !important;
  padding: 4px 9px !important;

  border-radius: 999px !important;

  font-size: 9.5px !important;
  line-height: 1.4 !important;
}


/* Order number: neutral */
body.ncs-my-account
.woocommerce-MyAccount-content
mark.order-number {
  color: #4f5147 !important;
  background: #f0ede5 !important;
}


/* Date: slightly warmer neutral */
body.ncs-my-account
.woocommerce-MyAccount-content
mark.order-date {
  color: #625f56 !important;
  background: #f5f1e9 !important;
}


/* Status: olive highlight */
body.ncs-my-account
.woocommerce-MyAccount-content
mark.order-status {
  color: #4d593c !important;
  background: #eef0e8 !important;
  border-color: rgba(96, 104, 75, 0.16) !important;
}


/* ---------------------------------------------------------
   OPERATIONS ROW
   WooCommerce/custom review actions live in the order table.
   Keep label and all action buttons in one coherent row.
   --------------------------------------------------------- */

body.ncs-my-account
.woocommerce-MyAccount-content
.woocommerce-order-details
table
tfoot
tr:last-child:has(.button),
body.ncs-my-account
.woocommerce-MyAccount-content
.woocommerce-order-details
table
tfoot
tr:has(th:first-child:last-child) {
  position: relative;
}


/* If the actions are inside a table cell, align them as one group. */
body.ncs-my-account
.woocommerce-MyAccount-content
.woocommerce-order-details
table
td:has(> .button),
body.ncs-my-account
.woocommerce-MyAccount-content
.woocommerce-order-details
table
td:has(.button) {
  text-align: left !important;
}


/* Multiple actions in one cell */
body.ncs-my-account
.woocommerce-MyAccount-content
.woocommerce-order-details
table
td
> a.button + a.button,
body.ncs-my-account
.woocommerce-MyAccount-content
.woocommerce-order-details
table
td
> button.button + button.button,
body.ncs-my-account
.woocommerce-MyAccount-content
.woocommerce-order-details
table
td
> a.button + button.button,
body.ncs-my-account
.woocommerce-MyAccount-content
.woocommerce-order-details
table
td
> button.button + a.button {
  margin-right: 8px !important;
}


/* "Order again" should sit with the other action visually,
   not float far away at the bottom-right. */
body.ncs-my-account
.woocommerce-MyAccount-content
p.order-again,
body.ncs-my-account
.woocommerce-MyAccount-content
.woocommerce-order-again {
  display: flex !important;
  align-items: center;
  justify-content: flex-end;
  flex-wrap: wrap;
  gap: 8px;

  width: 100%;

  margin: 14px 0 0 !important;
  padding: 14px 0 0 !important;

  border-top: 1px solid rgba(58, 61, 48, 0.08);
}


/* Ensure the button itself has no inherited float. */
body.ncs-my-account
.woocommerce-MyAccount-content
p.order-again
a.button,
body.ncs-my-account
.woocommerce-MyAccount-content
.woocommerce-order-again
a.button {
  float: none !important;
  margin: 0 !important;
}


/* ---------------------------------------------------------
   CUSTOMER DETAILS — reduce excess height
   --------------------------------------------------------- */

body.ncs-my-account
.woocommerce-MyAccount-content
.woocommerce-customer-details {
  padding: 22px 24px !important;
}


body.ncs-my-account
.woocommerce-MyAccount-content
.woocommerce-customer-details
.woocommerce-column__title {
  margin-bottom: 12px !important;
  padding-bottom: 11px !important;

  font-size: 17px !important;
}


body.ncs-my-account
.woocommerce-MyAccount-content
.woocommerce-customer-details
.woocommerce-columns {
  gap: 12px !important;
}


body.ncs-my-account
.woocommerce-MyAccount-content
.woocommerce-customer-details
.woocommerce-column {
  padding: 16px 18px !important;
}


body.ncs-my-account
.woocommerce-MyAccount-content
.woocommerce-customer-details
address {
  line-height: 1.9 !important;
}


body.ncs-my-account
.woocommerce-MyAccount-content
.woocommerce-customer-details
.woocommerce-customer-details--phone,
body.ncs-my-account
.woocommerce-MyAccount-content
.woocommerce-customer-details
.woocommerce-customer-details--email {
  margin-top: 5px !important;
}


/* ---------------------------------------------------------
   Slightly tighten order card vertical rhythm
   --------------------------------------------------------- */

body.ncs-my-account
.woocommerce-MyAccount-content
.woocommerce-order-details {
  padding-bottom: 22px !important;
}


/* =========================================================
   VIEW ORDER POLISH — MOBILE
   ========================================================= */

@media (max-width: 768px) {

  body.ncs-my-account
  .woocommerce-MyAccount-content
  > p:first-child:has(mark.order-number),
  body.ncs-my-account
  .woocommerce-MyAccount-content
  > p:first-child:has(.order-number) {
    gap: 6px 5px !important;

    padding: 13px !important;
  }


  body.ncs-my-account
  .woocommerce-MyAccount-content
  p.order-again,
  body.ncs-my-account
  .woocommerce-MyAccount-content
  .woocommerce-order-again {
    justify-content: stretch;

    margin-top: 12px !important;
  }


  body.ncs-my-account
  .woocommerce-MyAccount-content
  p.order-again
  a.button,
  body.ncs-my-account
  .woocommerce-MyAccount-content
  .woocommerce-order-again
  a.button {
    width: 100% !important;
  }


  body.ncs-my-account
  .woocommerce-MyAccount-content
  .woocommerce-customer-details {
    padding: 18px 15px !important;
  }


  body.ncs-my-account
  .woocommerce-MyAccount-content
  .woocommerce-customer-details
  .woocommerce-column {
    padding: 15px !important;
  }

}

/* =========================================================
   NESCARO MY ACCOUNT — PURCHASE REVIEW
   Custom endpoint: /my-account/purchase-review/{order_id}/
   ========================================================= */

body.ncs-my-account
.woocommerce-MyAccount-content
.nescaro-purchase-review-form {
  width: 100% !important;
  max-width: none !important;

  margin: 0 !important;
  padding: 30px 30px 28px !important;

  color: #292a23 !important;
  background: #fffdf8 !important;

  border: 1px solid rgba(58, 61, 48, 0.10) !important;
  border-radius: 22px !important;

  box-shadow: 0 16px 44px rgba(42, 43, 35, 0.045) !important;

  direction: rtl;
}


/* ---------------------------------------------------------
   HEADER
   --------------------------------------------------------- */

body.ncs-my-account
.woocommerce-MyAccount-content
.nescaro-purchase-review-form
> h2,
body.ncs-my-account
.woocommerce-MyAccount-content
.nescaro-purchase-review-form
> h3 {
  margin: 0 0 8px !important;
  padding: 0 !important;

  color: #292a23 !important;

  font-family: inherit !important;
  font-size: 24px !important;
  font-weight: 800 !important;
  line-height: 1.7 !important;

  text-transform: none !important;
}


body.ncs-my-account
.woocommerce-MyAccount-content
.nescaro-purchase-review-form
.nescaro-review-order {
  display: inline-flex;
  align-items: center;

  min-height: 30px;

  margin: 0 0 26px !important;
  padding: 5px 11px !important;

  color: #74766c !important;
  background: #f3f0e8 !important;

  border: 1px solid rgba(58, 61, 48, 0.08) !important;
  border-radius: 999px !important;

  font-size: 10px !important;
  font-weight: 600 !important;
  line-height: 1.5 !important;
}


/* ---------------------------------------------------------
   FORM RHYTHM
   --------------------------------------------------------- */

body.ncs-my-account
.woocommerce-MyAccount-content
.nescaro-purchase-review-form
form {
  margin: 0 !important;
  padding: 0 !important;
}


body.ncs-my-account
.woocommerce-MyAccount-content
.nescaro-purchase-review-form
form
> p {
  margin: 0 0 22px !important;
  padding: 0 !important;
}


body.ncs-my-account
.woocommerce-MyAccount-content
.nescaro-purchase-review-form
form
> p:last-child {
  margin-bottom: 0 !important;
}


/* ---------------------------------------------------------
   LABELS
   --------------------------------------------------------- */

body.ncs-my-account
.woocommerce-MyAccount-content
.nescaro-purchase-review-form
label {
  display: block !important;

  margin: 0 0 8px !important;

  color: #45473f !important;

  font-family: inherit !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  line-height: 1.8 !important;
}


body.ncs-my-account
.woocommerce-MyAccount-content
.nescaro-purchase-review-form
label
.required,
body.ncs-my-account
.woocommerce-MyAccount-content
.nescaro-purchase-review-form
.required {
  color: #b44d45 !important;
}


/* ---------------------------------------------------------
   SELECT
   --------------------------------------------------------- */

body.ncs-my-account
.woocommerce-MyAccount-content
.nescaro-purchase-review-form
select {
  width: 100% !important;
  min-height: 48px !important;

  margin: 0 !important;
  padding: 9px 14px !important;

  color: #56584f !important;
  background: #fbfaf6 !important;
  background-color: #fbfaf6 !important;

  border: 1px solid #ddd8cc !important;
  border-radius: 12px !important;

  box-shadow: none !important;

  font-family: inherit !important;
  font-size: 11px !important;
  font-weight: 500 !important;
  line-height: 1.6 !important;

  outline: none !important;
}


/* ---------------------------------------------------------
   TEXTAREA
   --------------------------------------------------------- */

body.ncs-my-account
.woocommerce-MyAccount-content
.nescaro-purchase-review-form
textarea {
  width: 100% !important;
  min-height: 180px !important;

  margin: 0 !important;
  padding: 14px 15px !important;

  color: #4f5148 !important;
  background: #fbfaf6 !important;

  border: 1px solid #ddd8cc !important;
  border-radius: 12px !important;

  box-shadow: none !important;

  font-family: inherit !important;
  font-size: 11px !important;
  font-weight: 400 !important;
  line-height: 2 !important;

  resize: vertical;
  outline: none !important;
}


body.ncs-my-account
.woocommerce-MyAccount-content
.nescaro-purchase-review-form
select:focus,
body.ncs-my-account
.woocommerce-MyAccount-content
.nescaro-purchase-review-form
textarea:focus,
body.ncs-my-account
.woocommerce-MyAccount-content
.nescaro-purchase-review-form
input[type="file"]:focus-visible {
  border-color: rgba(96, 104, 75, 0.52) !important;
  box-shadow: 0 0 0 3px rgba(96, 104, 75, 0.08) !important;
}


/* ---------------------------------------------------------
   FILE UPLOAD
   --------------------------------------------------------- */

body.ncs-my-account
.woocommerce-MyAccount-content
.nescaro-purchase-review-form
input[type="file"] {
  display: block;

  width: 100% !important;
  min-height: 48px !important;

  margin: 0 !important;
  padding: 7px 8px !important;

  color: #74766c !important;
  background: #fbfaf6 !important;

  border: 1px dashed #d7d2c6 !important;
  border-radius: 12px !important;

  font-family: inherit !important;
  font-size: 10px !important;
  line-height: 1.6 !important;

  cursor: pointer;
}


body.ncs-my-account
.woocommerce-MyAccount-content
.nescaro-purchase-review-form
input[type="file"]::file-selector-button {
  min-height: 34px;

  margin: 0 0 0 10px !important;
  padding: 6px 12px !important;

  color: #ffffff !important;
  background: #7a8264 !important;

  border: 1px solid #7a8264 !important;
  border-radius: 9px !important;

  font-family: inherit !important;
  font-size: 9.5px !important;
  font-weight: 700 !important;

  cursor: pointer;
}


body.ncs-my-account
.woocommerce-MyAccount-content
.nescaro-purchase-review-form
input[type="file"]::file-selector-button:hover {
  background: #60684b !important;
  border-color: #60684b !important;
}


/* Common helper copy beneath upload fields */
body.ncs-my-account
.woocommerce-MyAccount-content
.nescaro-purchase-review-form
small,
body.ncs-my-account
.woocommerce-MyAccount-content
.nescaro-purchase-review-form
.description {
  display: block;

  margin-top: 7px !important;

  color: #969289 !important;

  font-size: 9px !important;
  font-weight: 400 !important;
  line-height: 1.8 !important;
}


/* ---------------------------------------------------------
   SUBMIT
   --------------------------------------------------------- */

body.ncs-my-account
.woocommerce-MyAccount-content
.nescaro-purchase-review-form
button[type="submit"],
body.ncs-my-account
.woocommerce-MyAccount-content
.nescaro-purchase-review-form
input[type="submit"] {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;

  min-width: 156px !important;
  min-height: 48px !important;

  margin: 2px 0 0 !important;
  padding: 10px 22px !important;

  color: #ffffff !important;

  background: #60684b !important;
  background-color: #60684b !important;

  border: 1px solid #60684b !important;
  border-radius: 12px !important;

  box-shadow: 0 8px 20px rgba(79, 86, 61, 0.14) !important;

  font-family: inherit !important;
  font-size: 10.5px !important;
  font-weight: 700 !important;
  line-height: 1.6 !important;

  text-decoration: none !important;
  text-transform: none !important;

  cursor: pointer;

  transition:
    background-color 0.18s ease,
    border-color 0.18s ease,
    box-shadow 0.18s ease,
    transform 0.14s ease;
}


body.ncs-my-account
.woocommerce-MyAccount-content
.nescaro-purchase-review-form
button[type="submit"]:hover,
body.ncs-my-account
.woocommerce-MyAccount-content
.nescaro-purchase-review-form
input[type="submit"]:hover {
  color: #ffffff !important;

  background: #50573f !important;
  background-color: #50573f !important;

  border-color: #50573f !important;

  box-shadow: 0 10px 24px rgba(79, 86, 61, 0.18) !important;

  transform: translateY(-1px);
}


/* ---------------------------------------------------------
   VALIDATION / NOTICES
   --------------------------------------------------------- */

body.ncs-my-account
.woocommerce-MyAccount-content
.nescaro-purchase-review-form
.woocommerce-error,
body.ncs-my-account
.woocommerce-MyAccount-content
.nescaro-purchase-review-form
.woocommerce-message,
body.ncs-my-account
.woocommerce-MyAccount-content
.nescaro-purchase-review-form
.woocommerce-info {
  margin: 0 0 20px !important;

  border-radius: 12px !important;

  box-shadow: none !important;

  font-size: 10px !important;
  line-height: 1.9 !important;
}


/* ---------------------------------------------------------
   RESPONSIVE
   --------------------------------------------------------- */

@media (max-width: 768px) {

  body.ncs-my-account
  .woocommerce-MyAccount-content
  .nescaro-purchase-review-form {
    padding: 22px 16px 20px !important;
    border-radius: 18px !important;
  }


  body.ncs-my-account
  .woocommerce-MyAccount-content
  .nescaro-purchase-review-form
  > h2,
  body.ncs-my-account
  .woocommerce-MyAccount-content
  .nescaro-purchase-review-form
  > h3 {
    font-size: 20px !important;
  }


  body.ncs-my-account
  .woocommerce-MyAccount-content
  .nescaro-purchase-review-form
  textarea {
    min-height: 160px !important;
  }


  body.ncs-my-account
  .woocommerce-MyAccount-content
  .nescaro-purchase-review-form
  button[type="submit"],
  body.ncs-my-account
  .woocommerce-MyAccount-content
  .nescaro-purchase-review-form
  input[type="submit"] {
    width: 100% !important;
    min-width: 0 !important;
  }

}


@media (max-width: 420px) {

  body.ncs-my-account
  .woocommerce-MyAccount-content
  .nescaro-purchase-review-form {
    padding-right: 13px !important;
    padding-left: 13px !important;
  }


  body.ncs-my-account
  .woocommerce-MyAccount-content
  .nescaro-purchase-review-form
  input[type="file"] {
    font-size: 9px !important;
  }

}

/* =========================================================
   NESCARO PURCHASE REVIEW — CUSTOM RATING + UPLOAD UI
   ========================================================= */

/* Keep the original controls available to form submission and validation,
   but remove their browser-native presentation after JS enhancement. */
body.ncs-my-account--purchase-review
.nescaro-purchase-review-form
select.ncs-review-native-rating,
body.ncs-my-account--purchase-review
.nescaro-purchase-review-form
input.ncs-review-native-file {
  position: absolute !important;

  width: 1px !important;
  height: 1px !important;

  margin: -1px !important;
  padding: 0 !important;

  overflow: hidden !important;

  clip: rect(0, 0, 0, 0) !important;
  clip-path: inset(50%) !important;

  white-space: nowrap !important;

  border: 0 !important;
}


/* ---------------------------------------------------------
   STAR RATING
   --------------------------------------------------------- */

body.ncs-my-account--purchase-review
.nescaro-purchase-review-form
.ncs-review-rating {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 5px;

  min-height: 50px;

  padding: 9px 12px;

  background: #fbfaf6;

  border: 1px solid #ddd8cc;
  border-radius: 12px;
}


body.ncs-my-account--purchase-review
.nescaro-purchase-review-form
.ncs-review-star {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;

  width: 34px !important;
  height: 34px !important;
  min-width: 34px !important;
  min-height: 34px !important;

  margin: 0 !important;
  padding: 0 !important;

  color: #d7d4cb !important;
  background: transparent !important;

  border: 0 !important;
  border-radius: 8px !important;

  box-shadow: none !important;

  font-size: 22px !important;
  line-height: 1 !important;

  cursor: pointer;

  transform: none !important;

  transition:
    color 0.16s ease,
    background-color 0.16s ease,
    transform 0.14s ease;
}


body.ncs-my-account--purchase-review
.nescaro-purchase-review-form
.ncs-review-star:hover,
body.ncs-my-account--purchase-review
.nescaro-purchase-review-form
.ncs-review-star.is-preview {
  color: #8a9270 !important;
  background: #f1f2eb !important;
}


body.ncs-my-account--purchase-review
.nescaro-purchase-review-form
.ncs-review-star.is-active {
  color: #60684b !important;
}


body.ncs-my-account--purchase-review
.nescaro-purchase-review-form
.ncs-review-star:focus-visible {
  outline: 2px solid rgba(96, 104, 75, 0.38) !important;
  outline-offset: 2px;
}


body.ncs-my-account--purchase-review
.nescaro-purchase-review-form
.ncs-review-rating-label {
  margin-inline-start: 7px;

  color: #8a867d;

  font-size: 9.5px;
  font-weight: 600;
  line-height: 1.6;
}


/* ---------------------------------------------------------
   CUSTOM FILE UPLOAD
   --------------------------------------------------------- */

body.ncs-my-account--purchase-review
.nescaro-purchase-review-form
.ncs-review-upload {
  display: flex;
  flex-direction: column;
  gap: 8px;

  width: 100%;

  padding: 12px 13px;

  background: #fbfaf6;

  border: 1px dashed #d7d2c6;
  border-radius: 12px;

  transition:
    border-color 0.16s ease,
    background-color 0.16s ease;
}


body.ncs-my-account--purchase-review
.nescaro-purchase-review-form
.ncs-review-upload.has-file {
  background: #f5f7f0;
  border-color: rgba(96, 104, 75, 0.36);
}


body.ncs-my-account--purchase-review
.nescaro-purchase-review-form
.ncs-review-upload__top {
  display: flex;
  align-items: center;
  gap: 11px;

  min-width: 0;
}


body.ncs-my-account--purchase-review
.nescaro-purchase-review-form
.ncs-review-upload__button {
  flex: 0 0 auto;

  display: inline-flex !important;
  align-items: center;
  justify-content: center;

  min-width: 112px !important;
  min-height: 38px !important;

  margin: 0 !important;
  padding: 7px 14px !important;

  color: #ffffff !important;
  background: #7a8264 !important;

  border: 1px solid #7a8264 !important;
  border-radius: 9px !important;

  box-shadow: none !important;

  font-family: inherit !important;
  font-size: 9.5px !important;
  font-weight: 700 !important;

  cursor: pointer;

  transform: none !important;
}


body.ncs-my-account--purchase-review
.nescaro-purchase-review-form
.ncs-review-upload__button:hover {
  color: #ffffff !important;
  background: #60684b !important;
  border-color: #60684b !important;
}


body.ncs-my-account--purchase-review
.nescaro-purchase-review-form
.ncs-review-upload__filename {
  min-width: 0;

  overflow: hidden;

  color: #74766c;

  font-size: 9.5px;
  font-weight: 500;
  line-height: 1.7;

  text-overflow: ellipsis;
  white-space: nowrap;
}


body.ncs-my-account--purchase-review
.nescaro-purchase-review-form
.ncs-review-upload.has-file
.ncs-review-upload__filename {
  color: #50573f;
  font-weight: 700;
}


body.ncs-my-account--purchase-review
.nescaro-purchase-review-form
.ncs-review-upload__hint {
  color: #969289;

  font-size: 8.8px;
  font-weight: 400;
  line-height: 1.7;
}


/* The plugin's existing upload helper becomes redundant after the
   branded component is mounted. Hide duplicate helper text only here. */
body.ncs-my-account--purchase-review
.nescaro-purchase-review-form
.ncs-review-upload
+ small,
body.ncs-my-account--purchase-review
.nescaro-purchase-review-form
.ncs-review-upload
+ .description {
  display: none !important;
}


/* ---------------------------------------------------------
   ORDER BADGE CLEANUP
   --------------------------------------------------------- */

body.ncs-my-account--purchase-review
.nescaro-purchase-review-form
.nescaro-review-order {
  unicode-bidi: plaintext;
}


@media (max-width: 520px) {

  body.ncs-my-account--purchase-review
  .nescaro-purchase-review-form
  .ncs-review-rating {
    gap: 3px;
  }


  body.ncs-my-account--purchase-review
  .nescaro-purchase-review-form
  .ncs-review-star {
    width: 31px !important;
    height: 31px !important;
    min-width: 31px !important;
    min-height: 31px !important;

    font-size: 20px !important;
  }


  body.ncs-my-account--purchase-review
  .nescaro-purchase-review-form
  .ncs-review-rating-label {
    width: 100%;

    margin: 2px 0 0;

    text-align: right;
  }


  body.ncs-my-account--purchase-review
  .nescaro-purchase-review-form
  .ncs-review-upload__top {
    align-items: stretch;
    flex-direction: column;
  }


  body.ncs-my-account--purchase-review
  .nescaro-purchase-review-form
  .ncs-review-upload__button {
    width: 100% !important;
  }


  body.ncs-my-account--purchase-review
  .nescaro-purchase-review-form
  .ncs-review-upload__filename {
    white-space: normal;
  }

}

/* =========================================================
   NESCARO CART — REORDER FAILURE / EMPTY CART STATE
   ========================================================= */

body.woocommerce-cart {
  --ncs-empty-cart-text: #292a23;
  --ncs-empty-cart-muted: #85877e;
  --ncs-empty-cart-panel: #fffdf8;
  --ncs-empty-cart-soft: #fbfaf6;
  --ncs-empty-cart-border: rgba(58, 61, 48, 0.10);
  --ncs-empty-cart-olive: #60684b;
  --ncs-empty-cart-olive-dark: #50573f;
  --ncs-empty-cart-olive-light: #eef0e8;
}


/* ---------------------------------------------------------
   TOP NOTICE / REORDER ERROR
   --------------------------------------------------------- */

body.woocommerce-cart
.woocommerce-notices-wrapper {
  width: 100%;
  max-width: 1060px;

  margin: 0 auto 18px !important;
}


body.woocommerce-cart
.woocommerce-notices-wrapper
.woocommerce-error,
body.woocommerce-cart
.woocommerce-notices-wrapper
.woocommerce-info,
body.woocommerce-cart
.woocommerce-notices-wrapper
.woocommerce-message {
  position: relative;

  width: 100%;

  margin: 0 !important;
  padding: 16px 52px 16px 18px !important;

  color: #665526 !important;
  background: #fff9e9 !important;

  border: 1px solid #ead9a7 !important;
  border-radius: 14px !important;

  box-shadow: 0 10px 26px rgba(104, 88, 48, 0.055) !important;

  font-family: inherit !important;
  font-size: 10.5px !important;
  font-weight: 600 !important;
  line-height: 1.95 !important;

  text-align: right !important;
}


body.woocommerce-cart
.woocommerce-notices-wrapper
.woocommerce-error::before,
body.woocommerce-cart
.woocommerce-notices-wrapper
.woocommerce-info::before,
body.woocommerce-cart
.woocommerce-notices-wrapper
.woocommerce-message::before {
  position: absolute !important;
  top: 50% !important;
  right: 18px !important;
  left: auto !important;

  width: 22px !important;
  height: 22px !important;

  margin: 0 !important;

  color: #9d7b25 !important;

  transform: translateY(-50%) !important;

  font-size: 17px !important;
  line-height: 22px !important;

  text-align: center !important;
}


/* Remove WoodMart/WooCommerce list geometry when errors render as UL. */
body.woocommerce-cart
.woocommerce-notices-wrapper
ul.woocommerce-error {
  list-style: none !important;
}


body.woocommerce-cart
.woocommerce-notices-wrapper
ul.woocommerce-error
li {
  margin: 0 !important;
  padding: 0 !important;

  color: inherit !important;
  background: transparent !important;

  border: 0 !important;

  font: inherit !important;
}


/* ---------------------------------------------------------
   EMPTY CART WRAPPER
   --------------------------------------------------------- */

body.woocommerce-cart
.woocommerce:has(.cart-empty),
body.woocommerce-cart
.woocommerce:has(.wd-empty-page) {
  width: 100%;
}


body.woocommerce-cart
.cart-empty,
body.woocommerce-cart
.wd-empty-page {
  box-sizing: border-box;

  width: 100%;
  max-width: 1060px;

  margin-right: auto !important;
  margin-left: auto !important;
}


/* Big empty state card */
body.woocommerce-cart
.wd-empty-page,
body.woocommerce-cart
.cart-empty:not(.woocommerce-info) {
  display: flex !important;
  flex-direction: column;
  align-items: center;
  justify-content: center;

  min-height: 220px;

  margin-top: 0 !important;
  margin-bottom: 18px !important;
  padding: 34px 28px !important;

  color: var(--ncs-empty-cart-text) !important;
  background:
    linear-gradient(
      180deg,
      rgba(255, 253, 248, 0.98) 0%,
      rgba(249, 247, 240, 0.98) 100%
    ) !important;

  border: 1px solid var(--ncs-empty-cart-border) !important;
  border-radius: 20px !important;

  box-shadow: 0 14px 38px rgba(42, 43, 35, 0.04) !important;

  text-align: center !important;
}


/* WoodMart empty-cart icon */
body.woocommerce-cart
.wd-empty-page::before,
body.woocommerce-cart
.cart-empty:not(.woocommerce-info)::before {
  color: #d9dbd3 !important;

  opacity: 1 !important;

  font-size: 78px !important;
  line-height: 1 !important;
}


/* Main empty-cart heading */
body.woocommerce-cart
.wd-empty-page
.wd-empty-page-title,
body.woocommerce-cart
.wd-empty-page
.wd-empty-block-title,
body.woocommerce-cart
.cart-empty:not(.woocommerce-info) {
  color: #5d6056 !important;

  font-family: inherit !important;
  font-size: 27px !important;
  font-weight: 800 !important;
  line-height: 1.75 !important;

  text-align: center !important;
}


/* ---------------------------------------------------------
   EMPTY CART HELPER TEXT
   --------------------------------------------------------- */

body.woocommerce-cart
.wd-empty-page-text,
body.woocommerce-cart
.cart-empty
+ p,
body.woocommerce-cart
.woocommerce
> p:not(.return-to-shop):has(+ .return-to-shop) {
  width: min(620px, calc(100% - 32px));

  margin: 0 auto 18px !important;

  color: var(--ncs-empty-cart-muted) !important;

  font-family: inherit !important;
  font-size: 10.5px !important;
  font-weight: 400 !important;
  line-height: 2 !important;

  text-align: center !important;
}


/* ---------------------------------------------------------
   RETURN TO SHOP
   --------------------------------------------------------- */

body.woocommerce-cart
.return-to-shop {
  display: flex !important;
  justify-content: center;

  width: 100%;
  max-width: 1060px;

  margin: 0 auto !important;
  padding: 0 !important;
}


body.woocommerce-cart
.return-to-shop
a.button,
body.woocommerce-cart
a.wc-backward.button,
body.woocommerce-cart
a.btn.wc-backward {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;

  min-width: 160px !important;
  min-height: 48px !important;

  margin: 0 !important;
  padding: 10px 22px !important;

  color: #ffffff !important;
  background: var(--ncs-empty-cart-olive) !important;
  background-color: var(--ncs-empty-cart-olive) !important;

  border: 1px solid var(--ncs-empty-cart-olive) !important;
  border-radius: 12px !important;

  box-shadow: 0 8px 20px rgba(79, 86, 61, 0.14) !important;

  font-family: inherit !important;
  font-size: 10.5px !important;
  font-weight: 700 !important;
  line-height: 1.6 !important;

  text-decoration: none !important;
  text-transform: none !important;

  transition:
    background-color 0.18s ease,
    border-color 0.18s ease,
    box-shadow 0.18s ease,
    transform 0.14s ease;
}


body.woocommerce-cart
.return-to-shop
a.button:hover,
body.woocommerce-cart
a.wc-backward.button:hover,
body.woocommerce-cart
a.btn.wc-backward:hover {
  color: #ffffff !important;

  background: var(--ncs-empty-cart-olive-dark) !important;
  background-color: var(--ncs-empty-cart-olive-dark) !important;

  border-color: var(--ncs-empty-cart-olive-dark) !important;

  box-shadow: 0 10px 24px rgba(79, 86, 61, 0.18) !important;

  transform: translateY(-1px);
}


/* ---------------------------------------------------------
   SPACING BEFORE FOOTER
   --------------------------------------------------------- */

body.woocommerce-cart
.site-content {
  padding-bottom: 42px;
}


/* =========================================================
   EMPTY CART RESPONSIVE
   ========================================================= */

@media (max-width: 768px) {

  body.woocommerce-cart
  .woocommerce-notices-wrapper {
    margin-bottom: 14px !important;
  }


  body.woocommerce-cart
  .woocommerce-notices-wrapper
  .woocommerce-error,
  body.woocommerce-cart
  .woocommerce-notices-wrapper
  .woocommerce-info,
  body.woocommerce-cart
  .woocommerce-notices-wrapper
  .woocommerce-message {
    padding: 14px 44px 14px 14px !important;

    border-radius: 12px !important;

    font-size: 10px !important;
  }


  body.woocommerce-cart
  .wd-empty-page,
  body.woocommerce-cart
  .cart-empty:not(.woocommerce-info) {
    min-height: 200px;

    padding: 28px 18px !important;

    border-radius: 17px !important;
  }


  body.woocommerce-cart
  .wd-empty-page
  .wd-empty-page-title,
  body.woocommerce-cart
  .wd-empty-page
  .wd-empty-block-title,
  body.woocommerce-cart
  .cart-empty:not(.woocommerce-info) {
    font-size: 22px !important;
  }


  body.woocommerce-cart
  .wd-empty-page-text,
  body.woocommerce-cart
  .cart-empty
  + p,
  body.woocommerce-cart
  .woocommerce
  > p:not(.return-to-shop):has(+ .return-to-shop) {
    width: calc(100% - 22px);

    font-size: 10px !important;
  }


  body.woocommerce-cart
  .return-to-shop
  a.button,
  body.woocommerce-cart
  a.wc-backward.button,
  body.woocommerce-cart
  a.btn.wc-backward {
    width: min(100%, 300px) !important;
  }

}

/* =========================================================
   NESCARO MY ACCOUNT — PAYMENT METHODS
   Endpoint: /my-account/payment-methods/
   ========================================================= */

body.ncs-my-account--payment-methods
.woocommerce-MyAccount-content {
  min-height: 370px;
}

body.ncs-my-account--payment-methods
.woocommerce-MyAccount-content
.woocommerce-Message,
body.ncs-my-account--payment-methods
.woocommerce-MyAccount-content
.woocommerce-message,
body.ncs-my-account--payment-methods
.woocommerce-MyAccount-content
.woocommerce-info {
  position: relative;
  display: flex !important;
  align-items: center !important;
  width: 100% !important;
  min-height: 64px !important;
  margin: 0 0 18px !important;
  padding: 16px 54px 16px 18px !important;
  color: #5a5c52 !important;
  background: #fbfaf6 !important;
  border: 1px solid rgba(58, 61, 48, 0.10) !important;
  border-radius: 14px !important;
  box-shadow: 0 10px 28px rgba(42, 43, 35, 0.04) !important;
  font-family: inherit !important;
  font-size: 10.5px !important;
  font-weight: 600 !important;
  line-height: 1.9 !important;
  text-align: right !important;
}

body.ncs-my-account--payment-methods
.woocommerce-MyAccount-content
.woocommerce-Message::before,
body.ncs-my-account--payment-methods
.woocommerce-MyAccount-content
.woocommerce-message::before,
body.ncs-my-account--payment-methods
.woocommerce-MyAccount-content
.woocommerce-info::before {
  position: absolute !important;
  top: 50% !important;
  right: 18px !important;
  left: auto !important;
  width: 24px !important;
  height: 24px !important;
  margin: 0 !important;
  color: #7b8464 !important;
  transform: translateY(-50%) !important;
  font-size: 17px !important;
  line-height: 24px !important;
  text-align: center !important;
}

body.ncs-my-account--payment-methods
.woocommerce-MyAccount-content
a.button,
body.ncs-my-account--payment-methods
.woocommerce-MyAccount-content
button.button {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-width: 170px !important;
  min-height: 48px !important;
  margin: 0 !important;
  padding: 10px 22px !important;
  color: #ffffff !important;
  background: #60684b !important;
  background-color: #60684b !important;
  border: 1px solid #60684b !important;
  border-radius: 12px !important;
  box-shadow: 0 8px 20px rgba(79, 86, 61, 0.14) !important;
  font-family: inherit !important;
  font-size: 10.5px !important;
  font-weight: 700 !important;
  line-height: 1.6 !important;
  text-decoration: none !important;
  text-transform: none !important;
}

body.ncs-my-account--payment-methods
.woocommerce-MyAccount-content
a.button:hover,
body.ncs-my-account--payment-methods
.woocommerce-MyAccount-content
button.button:hover {
  color: #ffffff !important;
  background: #50573f !important;
  background-color: #50573f !important;
  border-color: #50573f !important;
  box-shadow: 0 10px 24px rgba(79, 86, 61, 0.18) !important;
}

body.ncs-my-account--payment-methods
.woocommerce-MyAccount-content
> .woocommerce {
  min-height: 330px;
  padding: 28px 30px !important;
  background: #fffdf8 !important;
  border: 1px solid rgba(58, 61, 48, 0.10) !important;
  border-radius: 20px !important;
  box-shadow: 0 14px 38px rgba(42, 43, 35, 0.04) !important;
}

body.ncs-my-account--payment-methods
.woocommerce-MyAccount-paymentMethods {
  width: 100% !important;
  margin: 0 0 18px !important;
  background: #fffdf8 !important;
  border: 1px solid rgba(58, 61, 48, 0.10) !important;
  border-radius: 16px !important;
  border-collapse: separate !important;
  border-spacing: 0 !important;
  overflow: hidden;
}

body.ncs-my-account--payment-methods
.woocommerce-MyAccount-paymentMethods th,
body.ncs-my-account--payment-methods
.woocommerce-MyAccount-paymentMethods td {
  padding: 13px 14px !important;
  color: #5b5d54 !important;
  background: transparent !important;
  border: 0 !important;
  border-bottom: 1px solid rgba(58, 61, 48, 0.08) !important;
  font-size: 10px !important;
  line-height: 1.8 !important;
}

body.ncs-my-account--payment-methods
.woocommerce-MyAccount-paymentMethods thead th {
  color: #44463e !important;
  background: #fbfaf6 !important;
  font-weight: 700 !important;
}

body.ncs-my-account--payment-methods
.woocommerce-MyAccount-paymentMethods tr:last-child td {
  border-bottom: 0 !important;
}

@media (max-width: 768px) {
  body.ncs-my-account--payment-methods
  .woocommerce-MyAccount-content
  > .woocommerce {
    min-height: 270px;
    padding: 20px 16px !important;
    border-radius: 17px !important;
  }

  body.ncs-my-account--payment-methods
  .woocommerce-MyAccount-content
  .woocommerce-Message,
  body.ncs-my-account--payment-methods
  .woocommerce-MyAccount-content
  .woocommerce-message,
  body.ncs-my-account--payment-methods
  .woocommerce-MyAccount-content
  .woocommerce-info {
    min-height: 58px !important;
    padding: 14px 46px 14px 14px !important;
    border-radius: 12px !important;
    font-size: 10px !important;
  }

  body.ncs-my-account--payment-methods
  .woocommerce-MyAccount-content
  a.button,
  body.ncs-my-account--payment-methods
  .woocommerce-MyAccount-content
  button.button {
    width: 100% !important;
    max-width: 300px !important;
  }
}

/* =========================================================
   NESCARO MY ACCOUNT — ADD PAYMENT METHOD
   Endpoint: /my-account/add-payment-method/
   ========================================================= */

body.ncs-my-account--add-payment-method
.woocommerce-MyAccount-content {
  min-height: 370px;
}


/* Main add-payment card */
body.ncs-my-account--add-payment-method
.woocommerce-MyAccount-content
form#add_payment_method,
body.ncs-my-account--add-payment-method
.woocommerce-MyAccount-content
form.woocommerce-Payment {
  width: 100% !important;

  margin: 0 !important;
  padding: 28px 30px 26px !important;

  background: #fffdf8 !important;

  border: 1px solid rgba(58, 61, 48, 0.10) !important;
  border-radius: 20px !important;

  box-shadow: 0 14px 38px rgba(42, 43, 35, 0.04) !important;
}


/* Payment methods list */
body.ncs-my-account--add-payment-method
.woocommerce-MyAccount-content
ul.woocommerce-PaymentMethods,
body.ncs-my-account--add-payment-method
.woocommerce-MyAccount-content
ul.wc_payment_methods {
  margin: 0 !important;
  padding: 0 !important;

  list-style: none !important;
}


/* Each gateway card */
body.ncs-my-account--add-payment-method
.woocommerce-MyAccount-content
li.woocommerce-PaymentMethod,
body.ncs-my-account--add-payment-method
.woocommerce-MyAccount-content
li.wc_payment_method {
  position: relative;

  margin: 0 0 16px !important;
  padding: 0 !important;

  background: #fbfaf6 !important;

  border: 1px solid rgba(58, 61, 48, 0.10) !important;
  border-radius: 15px !important;

  overflow: hidden;
}


/* Gateway header row */
body.ncs-my-account--add-payment-method
.woocommerce-MyAccount-content
li.woocommerce-PaymentMethod
> label,
body.ncs-my-account--add-payment-method
.woocommerce-MyAccount-content
li.wc_payment_method
> label {
  display: flex !important;
  align-items: center;
  gap: 10px;

  min-height: 58px;

  margin: 0 !important;
  padding: 13px 16px !important;

  color: #42443c !important;
  background: #fbfaf6 !important;

  font-family: inherit !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  line-height: 1.8 !important;

  cursor: pointer;
}


/* Payment radio */
body.ncs-my-account--add-payment-method
.woocommerce-MyAccount-content
input[type="radio"][name="payment_method"] {
  width: 17px !important;
  height: 17px !important;

  margin: 0 !important;

  accent-color: #60684b;

  cursor: pointer;
}


/* ZarinPal / gateway logo */
body.ncs-my-account--add-payment-method
.woocommerce-MyAccount-content
li.wc_payment_method
label
img,
body.ncs-my-account--add-payment-method
.woocommerce-MyAccount-content
li.woocommerce-PaymentMethod
label
img {
  width: auto !important;
  max-width: 54px !important;
  max-height: 34px !important;

  margin: 0 2px !important;

  object-fit: contain;
}


/* Description box */
body.ncs-my-account--add-payment-method
.woocommerce-MyAccount-content
.payment_box {
  position: relative !important;

  width: auto !important;

  margin: 0 14px 14px !important;
  padding: 14px 16px !important;

  color: #77786f !important;
  background: #f5f3ed !important;

  border: 1px solid rgba(58, 61, 48, 0.08) !important;
  border-radius: 11px !important;

  box-shadow: none !important;

  font-family: inherit !important;
  font-size: 10px !important;
  font-weight: 400 !important;
  line-height: 2 !important;

  text-align: right !important;
}


/* Remove Woo/WoodMart speech-bubble arrow */
body.ncs-my-account--add-payment-method
.woocommerce-MyAccount-content
.payment_box::before,
body.ncs-my-account--add-payment-method
.woocommerce-MyAccount-content
.payment_box::after {
  display: none !important;
  content: none !important;
}


body.ncs-my-account--add-payment-method
.woocommerce-MyAccount-content
.payment_box
p {
  margin: 0 !important;

  color: inherit !important;

  font: inherit !important;
}


/* Save/add action area */
body.ncs-my-account--add-payment-method
.woocommerce-MyAccount-content
.form-row,
body.ncs-my-account--add-payment-method
.woocommerce-MyAccount-content
.woocommerce-Payment
.form-row {
  margin: 4px 0 0 !important;
  padding: 0 !important;
}


/* Add payment method CTA */
body.ncs-my-account--add-payment-method
.woocommerce-MyAccount-content
#place_order,
body.ncs-my-account--add-payment-method
.woocommerce-MyAccount-content
button.button,
body.ncs-my-account--add-payment-method
.woocommerce-MyAccount-content
input.button {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;

  min-width: 170px !important;
  min-height: 48px !important;

  margin: 0 !important;
  padding: 10px 22px !important;

  color: #ffffff !important;

  background: #60684b !important;
  background-color: #60684b !important;

  border: 1px solid #60684b !important;
  border-radius: 12px !important;

  box-shadow: 0 8px 20px rgba(79, 86, 61, 0.14) !important;

  font-family: inherit !important;
  font-size: 10.5px !important;
  font-weight: 700 !important;
  line-height: 1.6 !important;

  text-decoration: none !important;
  text-transform: none !important;

  transition:
    background-color 0.18s ease,
    border-color 0.18s ease,
    box-shadow 0.18s ease,
    transform 0.14s ease;
}


body.ncs-my-account--add-payment-method
.woocommerce-MyAccount-content
#place_order:hover,
body.ncs-my-account--add-payment-method
.woocommerce-MyAccount-content
button.button:hover,
body.ncs-my-account--add-payment-method
.woocommerce-MyAccount-content
input.button:hover {
  color: #ffffff !important;

  background: #50573f !important;
  background-color: #50573f !important;

  border-color: #50573f !important;

  box-shadow: 0 10px 24px rgba(79, 86, 61, 0.18) !important;

  transform: translateY(-1px);
}


/* Notices on this endpoint */
body.ncs-my-account--add-payment-method
.woocommerce-MyAccount-content
.woocommerce-error,
body.ncs-my-account--add-payment-method
.woocommerce-MyAccount-content
.woocommerce-message,
body.ncs-my-account--add-payment-method
.woocommerce-MyAccount-content
.woocommerce-info {
  margin: 0 0 18px !important;

  border-radius: 12px !important;

  box-shadow: none !important;

  font-size: 10px !important;
  line-height: 1.9 !important;
}


/* Keep gateway card clean when selected */
body.ncs-my-account--add-payment-method
.woocommerce-MyAccount-content
li.wc_payment_method:has(input[type="radio"]:checked),
body.ncs-my-account--add-payment-method
.woocommerce-MyAccount-content
li.woocommerce-PaymentMethod:has(input[type="radio"]:checked) {
  border-color: rgba(96, 104, 75, 0.28) !important;

  box-shadow: 0 8px 22px rgba(79, 86, 61, 0.055) !important;
}


/* Mobile */
@media (max-width: 768px) {

  body.ncs-my-account--add-payment-method
  .woocommerce-MyAccount-content
  form#add_payment_method,
  body.ncs-my-account--add-payment-method
  .woocommerce-MyAccount-content
  form.woocommerce-Payment {
    padding: 20px 16px !important;

    border-radius: 17px !important;
  }


  body.ncs-my-account--add-payment-method
  .woocommerce-MyAccount-content
  li.woocommerce-PaymentMethod
  > label,
  body.ncs-my-account--add-payment-method
  .woocommerce-MyAccount-content
  li.wc_payment_method
  > label {
    min-height: 54px;

    padding: 12px 13px !important;

    font-size: 10.5px !important;
  }


  body.ncs-my-account--add-payment-method
  .woocommerce-MyAccount-content
  .payment_box {
    margin: 0 10px 10px !important;
    padding: 12px 13px !important;

    font-size: 9.8px !important;
  }


  body.ncs-my-account--add-payment-method
  .woocommerce-MyAccount-content
  #place_order,
  body.ncs-my-account--add-payment-method
  .woocommerce-MyAccount-content
  button.button,
  body.ncs-my-account--add-payment-method
  .woocommerce-MyAccount-content
  input.button {
    width: 100% !important;
    max-width: 300px !important;
  }

}

/* =========================================================
   NESCARO ADD PAYMENT METHOD — RADIO POSITION FIX
   Keep the gateway radio in the same header row as its label/logo.
   ========================================================= */

body.ncs-my-account--add-payment-method
.woocommerce-MyAccount-content
li.wc_payment_method,
body.ncs-my-account--add-payment-method
.woocommerce-MyAccount-content
li.woocommerce-PaymentMethod {
  display: grid !important;
  grid-template-columns: 20px minmax(0, 1fr) !important;
  align-items: center !important;
  column-gap: 10px !important;

  direction: rtl !important;

  padding: 0 16px 14px !important;
}


/* Radio: remove WoodMart absolute/floating positioning. */
body.ncs-my-account--add-payment-method
.woocommerce-MyAccount-content
li.wc_payment_method
> input[type="radio"][name="payment_method"],
body.ncs-my-account--add-payment-method
.woocommerce-MyAccount-content
li.woocommerce-PaymentMethod
> input[type="radio"][name="payment_method"] {
  position: static !important;
  inset: auto !important;
  float: none !important;

  grid-column: 1 !important;
  grid-row: 1 !important;

  align-self: center !important;
  justify-self: center !important;

  width: 16px !important;
  height: 16px !important;

  margin: 0 !important;
  padding: 0 !important;

  transform: none !important;

  accent-color: #60684b !important;
}


/* Gateway title/logo stays beside the radio. */
body.ncs-my-account--add-payment-method
.woocommerce-MyAccount-content
li.wc_payment_method
> label,
body.ncs-my-account--add-payment-method
.woocommerce-MyAccount-content
li.woocommerce-PaymentMethod
> label {
  grid-column: 2 !important;
  grid-row: 1 !important;

  min-height: 58px !important;

  margin: 0 !important;
  padding: 12px 0 !important;

  justify-content: flex-start !important;
}


/* Description spans the full width below the gateway header. */
body.ncs-my-account--add-payment-method
.woocommerce-MyAccount-content
li.wc_payment_method
> .payment_box,
body.ncs-my-account--add-payment-method
.woocommerce-MyAccount-content
li.woocommerce-PaymentMethod
> .payment_box {
  grid-column: 1 / -1 !important;
  grid-row: 2 !important;

  width: 100% !important;

  margin: 0 !important;
}


/* Selected state: subtle olive ring around the whole gateway card. */
body.ncs-my-account--add-payment-method
.woocommerce-MyAccount-content
li.wc_payment_method:has(
  > input[type="radio"][name="payment_method"]:checked
),
body.ncs-my-account--add-payment-method
.woocommerce-MyAccount-content
li.woocommerce-PaymentMethod:has(
  > input[type="radio"][name="payment_method"]:checked
) {
  border-color: rgba(96, 104, 75, 0.34) !important;
  box-shadow: 0 8px 22px rgba(79, 86, 61, 0.06) !important;
}


@media (max-width: 768px) {

  body.ncs-my-account--add-payment-method
  .woocommerce-MyAccount-content
  li.wc_payment_method,
  body.ncs-my-account--add-payment-method
  .woocommerce-MyAccount-content
  li.woocommerce-PaymentMethod {
    grid-template-columns: 18px minmax(0, 1fr) !important;
    column-gap: 8px !important;

    padding: 0 13px 12px !important;
  }


  body.ncs-my-account--add-payment-method
  .woocommerce-MyAccount-content
  li.wc_payment_method
  > label,
  body.ncs-my-account--add-payment-method
  .woocommerce-MyAccount-content
  li.woocommerce-PaymentMethod
  > label {
    min-height: 52px !important;
  }

}

