body.shima-customer-login-ui-page {
  --shima-primary: #3d7958;
  --shima-primary-hover: #356d50;
  --shima-primary-pressed: #2f6248;
  --shima-accent: #649479;
  --shima-page: #f8fafc;
  --shima-card: #ffffff;
  --shima-text: #111827;
  --shima-muted: #6b7280;
  --shima-border: #e5e7eb;
  --shima-border-strong: #d7dce3;
  --shima-radius-button: 12px;
  --shima-radius-card: 24px;
  --shima-radius-input: 12px;
  --shima-focus: 0 0 0 2px rgba(61, 121, 88, .20);
  --shima-shadow-card: 0 1px 2px rgba(0, 0, 0, .04), 0 16px 42px rgba(15, 23, 42, .055);
  --shima-ease: cubic-bezier(.2, .8, .2, 1);
}

html.shima-customer-login-ui-active,
html.shima-customer-login-ui-active body {
  width: 100% !important;
  height: 100% !important;
  min-width: 320px !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
}

html.shima-customer-login-ui-active body {
  font-family: "Vazirmatn", Tahoma, Arial, sans-serif !important;
}

html.shima-customer-login-ui-active button,
html.shima-customer-login-ui-active input,
html.shima-customer-login-ui-active select,
html.shima-customer-login-ui-active textarea {
  font-family: inherit !important;
}

html.shima-customer-login-ui-active .dashicons,
html.shima-customer-login-ui-active .dashicons::before,
html.shima-customer-login-ui-active .dashicons-before::before {
  font-family: dashicons !important;
}

.shima-customer-login-ui[hidden] { display: none !important; }

.shima-customer-login-ui,
.shima-customer-login-ui *,
.shima-customer-login-ui *::before,
.shima-customer-login-ui *::after,
.shima-customer-auth-root,
.shima-customer-auth-root *,
.shima-customer-auth-root *::before,
.shima-customer-auth-root *::after {
  box-sizing: border-box;
}

.shima-customer-login-ui,
.shima-customer-auth-root {
  font-family: "Vazirmatn", Tahoma, Arial, sans-serif !important;
}

.shima-customer-login-ui button,
.shima-customer-login-ui input,
.shima-customer-login-ui select,
.shima-customer-login-ui textarea,
.shima-customer-auth-root button,
.shima-customer-auth-root input,
.shima-customer-auth-root select,
.shima-customer-auth-root textarea {
  font-family: inherit !important;
}

/* Decorative shell. It never owns or intercepts the real authentication form. */
.shima-customer-login-ui {
  position: fixed !important;
  z-index: 2147483000 !important;
  inset: 0 !important;
  width: 100vw !important;
  height: 100vh !important;
  height: 100dvh !important;
  min-width: 320px !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
  color: var(--shima-text) !important;
  background: var(--shima-page) !important;
  direction: rtl !important;
  opacity: 0;
  pointer-events: none !important;
  transition: opacity .16s var(--shima-ease);
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}

.shima-customer-login-ui.is-ready { opacity: 1; }

.shima-customer-login-layout {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  width: 100% !important;
  height: 100% !important;
  min-height: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  direction: ltr !important;
}

.shima-customer-login-form-panel {
  grid-column: 1 !important;
  min-width: 0 !important;
  height: 100vh !important;
  height: 100dvh !important;
  overflow: hidden !important;
  background:
    radial-gradient(circle at 15% 14%, rgba(255, 255, 255, .98), rgba(255, 255, 255, 0) 34%),
    var(--shima-page) !important;
  direction: rtl !important;
}

.shima-customer-login-content {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  min-height: 100% !important;
  margin: 0 !important;
  padding: 48px clamp(44px, 6vw, 108px) !important;
}

.shima-customer-login-intro,
.shima-customer-login-form-host {
  width: min(560px, 100%) !important;
  max-width: 560px !important;
}

.shima-customer-login-intro {
  margin: 0 0 26px !important;
  padding: 0 !important;
  text-align: center !important;
}

.shima-customer-login-intro h1 {
  margin: 0 !important;
  padding: 0 !important;
  color: var(--shima-text) !important;
  font-size: 30px !important;
  line-height: 1.63 !important;
  font-weight: 900 !important;
  letter-spacing: -.02em !important;
}

.shima-customer-login-intro p {
  margin: 8px 0 0 !important;
  padding: 0 !important;
  color: var(--shima-muted) !important;
  font-size: 16px !important;
  line-height: 2 !important;
  font-weight: 400 !important;
}

/* Pure layout placeholder. Its measured rectangle is used to position the native form. */
.shima-customer-login-form-host {
  height: 410px;
  min-height: 120px !important;
  margin: 0 !important;
  padding: 0 !important;
  visibility: hidden !important;
  pointer-events: none !important;
}

/* Keep the native form in its original DOM hierarchy, but remove stacking-context traps. */
html.shima-customer-login-ui-active .shima-auth-ui-ancestor {
  transform: none !important;
  filter: none !important;
  perspective: none !important;
  isolation: auto !important;
  z-index: auto !important;
  contain: none !important;
  will-change: auto !important;
  overflow: visible !important;
}


/* Native OTP state is authoritative. These forms are switched by shima-wholesale-core. */
html.shima-customer-login-ui-active #shima-otp-request-form[hidden],
html.shima-customer-login-ui-active #shima-otp-verify-form[hidden],
html.shima-customer-login-ui-active #shima-otp-alert[hidden],
html.shima-customer-login-ui-active #shima-otp-login [hidden] {
  display: none !important;
}

/* Never force a native OTP form to display. Only #shima-otp-login is the visual root. */
html.shima-customer-login-ui-active #shima-otp-request-form:not([hidden]),
html.shima-customer-login-ui-active #shima-otp-verify-form:not([hidden]) {
  display: block;
}

/* The real native auth root: never cloned, never moved, fully interactive. */
html.shima-customer-login-ui-active .shima-customer-auth-root {
  position: fixed !important;
  z-index: 2147483002 !important;
  top: var(--shima-auth-top, -10000px) !important;
  left: var(--shima-auth-left, -10000px) !important;
  right: auto !important;
  bottom: auto !important;
  display: block !important;
  width: var(--shima-auth-width, 560px) !important;
  max-width: var(--shima-auth-width, 560px) !important;
  min-width: 0 !important;
  height: auto !important;
  min-height: 0 !important;
  max-height: calc(100dvh - 96px) !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow-x: hidden !important;
  overflow-y: auto !important;
  scrollbar-width: thin !important;
  overscroll-behavior: contain !important;
  color: var(--shima-text) !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: auto !important;
  user-select: auto !important;
  direction: rtl !important;
  text-align: right !important;
  transform: none !important;
}

/* v1.3.1: one and only one visible card.
   The stable native OTP root remains untouched; only its shared visual wrapper gets the card skin. */
html.shima-customer-login-ui-active .shima-customer-auth-root .shima-customer-native-card,
html.shima-customer-login-ui-active .shima-customer-auth-root.shima-customer-native-card {
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 28px !important;
  color: var(--shima-text) !important;
  background: var(--shima-card) !important;
  border: .8px solid var(--shima-border) !important;
  border-radius: var(--shima-radius-card) !important;
  box-shadow: var(--shima-shadow-card) !important;
  overflow: hidden !important;
  direction: rtl !important;
  text-align: right !important;
}

html.shima-customer-login-ui-active .shima-customer-auth-root.shima-auth-stage-otp {
  overflow: visible !important;
}

html.shima-customer-login-ui-active .shima-customer-auth-root .shima-customer-auth-form,
html.shima-customer-login-ui-active .shima-customer-auth-root form,
html.shima-customer-login-ui-active .shima-customer-auth-root .woocommerce-form,
html.shima-customer-login-ui-active .shima-customer-auth-root .login,
html.shima-customer-login-ui-active .shima-customer-auth-root .digits-form,
html.shima-customer-login-ui-active .shima-customer-auth-root .dig_login_form {
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  color: var(--shima-text) !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  text-align: right !important;
  direction: rtl !important;
  transform: none !important;
}

html.shima-customer-login-ui-active .shima-auth-hide-duplicate-brand,
html.shima-customer-login-ui-active .shima-auth-hide-duplicate-copy { display: none !important; }

html.shima-customer-login-ui-active .shima-customer-auth-root .shima-auth-field-label {
  width: 100% !important;
  margin: 0 0 8px !important;
  padding: 0 !important;
  color: var(--shima-text) !important;
  font-size: 15px !important;
  line-height: 1.85 !important;
  font-weight: 700 !important;
  text-align: right !important;
}

html.shima-customer-login-ui-active .shima-customer-auth-root .required { color: #dc2626 !important; }

html.shima-customer-login-ui-active .shima-customer-auth-root input.shima-auth-field {
  position: relative !important;
  z-index: 3 !important;
  width: 100% !important;
  max-width: 100% !important;
  min-height: 56px !important;
  margin: 0 0 18px !important;
  padding: 0 18px !important;
  color: var(--shima-text) !important;
  caret-color: var(--shima-primary) !important;
  background-color: #fff !important;
  border: .8px solid var(--shima-border-strong) !important;
  border-radius: var(--shima-radius-input) !important;
  box-shadow: none !important;
  outline: none !important;
  pointer-events: auto !important;
  user-select: text !important;
  touch-action: manipulation !important;
  font-size: 16px !important;
  line-height: 1.5 !important;
  font-weight: 400 !important;
  text-align: right !important;
  transition: border-color .15s var(--shima-ease), box-shadow .15s var(--shima-ease), background-color .2s var(--shima-ease) !important;
}

html.shima-customer-login-ui-active .shima-customer-auth-root input.shima-auth-field::placeholder {
  color: #9ca3af !important;
  opacity: 1 !important;
}

html.shima-customer-login-ui-active .shima-customer-auth-root input.shima-auth-field:focus {
  border-color: rgba(61, 121, 88, .72) !important;
  box-shadow: var(--shima-focus) !important;
}

html.shima-customer-login-ui-active .shima-customer-auth-root input.shima-auth-field-mobile {
  padding: 0 18px 0 52px !important;
  text-align: left !important;
  direction: ltr !important;
  font-variant-numeric: tabular-nums !important;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='22' height='22' viewBox='0 0 24 24' fill='none' stroke='%236B7280' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M22 16.92v3a2 2 0 0 1-2.18 2 19.79 19.79 0 0 1-8.63-3.07 19.5 19.5 0 0 1-6-6A19.79 19.79 0 0 1 2.12 4.18 2 2 0 0 1 4.11 2h3a2 2 0 0 1 2 1.72c.12.9.33 1.78.62 2.63a2 2 0 0 1-.45 2.11L8 9.73a16 16 0 0 0 6 6l1.27-1.27a2 2 0 0 1 2.11-.45c.85.29 1.73.5 2.63.62A2 2 0 0 1 22 16.92z'/%3E%3C/svg%3E") !important;
  background-repeat: no-repeat !important;
  background-position: 18px center !important;
  background-size: 21px 21px !important;
}

html.shima-customer-login-ui-active .shima-customer-auth-root input.shima-auth-field-otp {
  padding: 0 18px 0 52px !important;
  text-align: center !important;
  direction: ltr !important;
  letter-spacing: .18em !important;
  font-weight: 700 !important;
  font-variant-numeric: tabular-nums !important;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='22' height='22' viewBox='0 0 24 24' fill='none' stroke='%236B7280' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='7.5' cy='15.5' r='5.5'/%3E%3Cpath d='m21 2-9.6 9.6M15 8l2 2 4-4-2-2'/%3E%3C/svg%3E") !important;
  background-repeat: no-repeat !important;
  background-position: 18px center !important;
  background-size: 21px 21px !important;
}

/* v1.3.1 layout rhythm: normalize native wrappers without changing their behavior. */
html.shima-customer-login-ui-active .shima-customer-auth-root .shima-native-request-form > *,
html.shima-customer-login-ui-active .shima-customer-auth-root .shima-native-verify-form > * {
  max-width: 100% !important;
}

html.shima-customer-login-ui-active .shima-customer-auth-root .shima-native-request-form,
html.shima-customer-login-ui-active .shima-customer-auth-root .shima-native-verify-form {
  display: block;
}

html.shima-customer-login-ui-active .shima-customer-auth-root .shima-native-request-form:not([hidden]),
html.shima-customer-login-ui-active .shima-customer-auth-root .shima-native-verify-form:not([hidden]) {
  animation: none !important;
}

/* OTP delivery channel */
html.shima-customer-login-ui-active .shima-customer-auth-root .shima-auth-channel-title,
html.shima-customer-login-ui-active .shima-customer-auth-root .shima-auth-channel-group > legend,
html.shima-customer-login-ui-active .shima-customer-auth-root .shima-auth-channel-group > label:first-child:not(.shima-auth-channel-option) {
  width: 100% !important;
  margin: 2px 0 10px !important;
  padding: 0 !important;
  color: var(--shima-text) !important;
  font-size: 15px !important;
  line-height: 1.85 !important;
  font-weight: 800 !important;
  text-align: right !important;
}

html.shima-customer-login-ui-active .shima-customer-auth-root .shima-auth-channel-option {
  position: relative !important;
  width: 100% !important;
  min-height: 60px !important;
  margin: 0 0 10px !important;
  padding: 12px 46px 12px 16px !important;
  color: var(--shima-text) !important;
  background: #fff !important;
  border: 1px solid var(--shima-border-strong) !important;
  border-radius: 14px !important;
  box-shadow: none !important;
  font-size: 15px !important;
  line-height: 1.75 !important;
  font-weight: 600 !important;
  text-align: right !important;
  cursor: pointer !important;
  pointer-events: auto !important;
  transition: border-color .15s var(--shima-ease), background-color .15s var(--shima-ease), box-shadow .15s var(--shima-ease) !important;
}

html.shima-customer-login-ui-active .shima-customer-auth-root .shima-auth-channel-option:hover {
  border-color: rgba(61, 121, 88, .48) !important;
  background: rgba(61, 121, 88, .018) !important;
}

html.shima-customer-login-ui-active .shima-customer-auth-root .shima-auth-channel-option.is-selected,
html.shima-customer-login-ui-active .shima-customer-auth-root .shima-auth-channel-option:has(input[type="radio"]:checked) {
  border-color: rgba(61, 121, 88, .72) !important;
  background: rgba(61, 121, 88, .035) !important;
  box-shadow: var(--shima-focus) !important;
}

html.shima-customer-login-ui-active .shima-customer-auth-root input[type="radio"] {
  accent-color: var(--shima-primary) !important;
}

html.shima-customer-login-ui-active .shima-customer-auth-root .shima-auth-channel-option input.shima-auth-channel-radio {
  position: absolute !important;
  z-index: 4 !important;
  top: 50% !important;
  right: 16px !important;
  width: 18px !important;
  min-width: 18px !important;
  height: 18px !important;
  margin: 0 !important;
  padding: 0 !important;
  transform: translateY(-50%) !important;
  accent-color: var(--shima-primary) !important;
  cursor: pointer !important;
}

html.shima-customer-login-ui-active .shima-customer-auth-root .shima-auth-channel-option small,
html.shima-customer-login-ui-active .shima-customer-auth-root .shima-auth-channel-option span:not(:first-child) {
  color: var(--shima-muted) !important;
  font-size: 12px !important;
  line-height: 1.7 !important;
  font-weight: 400 !important;
}

/* Primary submit button. */
html.shima-customer-login-ui-active .shima-customer-auth-root .shima-customer-login-submit {
  position: relative !important;
  z-index: 3 !important;
  text-align: center !important;
  width: 100% !important;
  min-width: 0 !important;
  min-height: 56px !important;
  margin: 20px 0 0 !important;
  padding: 0 22px !important;
  color: #fff !important;
  background: var(--shima-primary) !important;
  border: 0 !important;
  border-radius: var(--shima-radius-button) !important;
  box-shadow: 0 6px 14px rgba(61, 121, 88, .14) !important;
  text-shadow: none !important;
  font-size: 16px !important;
  line-height: 1.5 !important;
  font-weight: 700 !important;
  text-decoration: none !important;
  cursor: pointer !important;
  pointer-events: auto !important;
  transition: transform .15s var(--shima-ease), background-color .2s var(--shima-ease), box-shadow .2s var(--shima-ease) !important;
}

html.shima-customer-login-ui-active .shima-customer-auth-root .shima-customer-login-submit:hover {
  color: #fff !important;
  background: var(--shima-primary-hover) !important;
  transform: translateY(-1px) !important;
  box-shadow: 0 9px 20px rgba(61, 121, 88, .20) !important;
}

html.shima-customer-login-ui-active .shima-customer-auth-root .shima-customer-login-submit:active {
  background: var(--shima-primary-pressed) !important;
  transform: translateY(0) !important;
}

html.shima-customer-login-ui-active .shima-customer-auth-root .shima-customer-login-submit:disabled,
html.shima-customer-login-ui-active .shima-customer-auth-root .shima-customer-login-submit[aria-disabled="true"] {
  color: #f8fafc !important;
  background: #94a3b8 !important;
  box-shadow: none !important;
  transform: none !important;
  cursor: not-allowed !important;
  opacity: .9 !important;
}

html.shima-customer-login-ui-active .shima-customer-auth-root a:focus-visible,
html.shima-customer-login-ui-active .shima-customer-auth-root button:focus-visible,
html.shima-customer-login-ui-active .shima-customer-login-brand:focus-visible {
  outline: 2px solid rgba(61, 121, 88, .8) !important;
  outline-offset: 3px !important;
}

html.shima-customer-login-ui-active .shima-customer-auth-root a {
  color: var(--shima-primary) !important;
  text-decoration: none !important;
  font-weight: 500 !important;
}

html.shima-customer-login-ui-active .shima-customer-auth-root a:hover { color: var(--shima-primary-hover) !important; }

html.shima-customer-login-ui-active .shima-auth-legal-note {
  display: block !important;
  margin: 18px 0 0 !important;
  padding: 0 !important;
  color: #7a8492 !important;
  text-align: center !important;
  font-size: 12px !important;
  line-height: 2 !important;
  font-weight: 400 !important;
}

/* OTP stage controls are 100% native. No proxy buttons and no custom timer exist in this UI plugin. */
html.shima-customer-login-ui-active .shima-customer-auth-root .shima-otp-native-resend,
html.shima-customer-login-ui-active .shima-customer-auth-root .shima-otp-native-back {
  position: relative !important;
  z-index: 5 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  min-height: 48px !important;
  padding: 0 18px !important;
  border-radius: 11px !important;
  box-shadow: none !important;
  text-shadow: none !important;
  font-size: 14px !important;
  line-height: 1.6 !important;
  font-weight: 700 !important;
  text-decoration: none !important;
  text-align: center !important;
  transition: background-color .16s var(--shima-ease), border-color .16s var(--shima-ease), color .16s var(--shima-ease), transform .16s var(--shima-ease) !important;
}

html.shima-customer-login-ui-active .shima-customer-auth-root .shima-otp-native-resend {
  margin: 20px 0 0 !important;
  color: var(--shima-primary) !important;
  background: rgba(61, 121, 88, .045) !important;
  border: 1px solid rgba(61, 121, 88, .30) !important;
  font-variant-numeric: tabular-nums !important;
  cursor: pointer !important;
}

html.shima-customer-login-ui-active .shima-customer-auth-root .shima-otp-native-resend:not(:disabled):hover {
  color: var(--shima-primary-hover) !important;
  background: rgba(61, 121, 88, .085) !important;
  border-color: rgba(61, 121, 88, .48) !important;
  transform: translateY(-1px) !important;
}

html.shima-customer-login-ui-active .shima-customer-auth-root .shima-otp-native-resend:disabled {
  color: #9ca3af !important;
  background: #f8fafc !important;
  border-color: #e5e7eb !important;
  cursor: not-allowed !important;
  opacity: 1 !important;
}

html.shima-customer-login-ui-active .shima-customer-auth-root .shima-otp-native-back {
  margin: 8px 0 0 !important;
  color: #596273 !important;
  background: transparent !important;
  border: 0 !important;
  cursor: pointer !important;
}

html.shima-customer-login-ui-active .shima-customer-auth-root .shima-otp-native-back:hover {
  color: var(--shima-primary) !important;
  background: rgba(61, 121, 88, .035) !important;
}

/* Notices */
html.shima-customer-login-ui-active .shima-customer-auth-root .woocommerce-error,
html.shima-customer-login-ui-active .shima-customer-auth-root .woocommerce-message,
html.shima-customer-login-ui-active .shima-customer-auth-root .woocommerce-info,
html.shima-customer-login-ui-active .shima-customer-auth-root .wc-block-components-notice-banner,
html.shima-customer-login-ui-active .shima-customer-auth-root .digits_message,
html.shima-customer-login-ui-active .shima-customer-auth-root .dig_error_message,
html.shima-customer-login-ui-active .shima-customer-auth-root .otp-error,
html.shima-customer-login-ui-active .shima-customer-auth-root .login-error {
  display: block !important;
  width: 100% !important;
  margin: 0 0 18px !important;
  padding: 13px 16px !important;
  color: #374151 !important;
  background: #fff !important;
  border: 1px solid var(--shima-border) !important;
  border-right: 4px solid var(--shima-primary) !important;
  border-radius: 12px !important;
  box-shadow: 0 1px 2px rgba(0, 0, 0, .04) !important;
  font-size: 14px !important;
  line-height: 1.9 !important;
  text-align: right !important;
  list-style: none !important;
}

html.shima-customer-login-ui-active .shima-customer-auth-root .woocommerce-error,
html.shima-customer-login-ui-active .shima-customer-auth-root .dig_error_message,
html.shima-customer-login-ui-active .shima-customer-auth-root .otp-error,
html.shima-customer-login-ui-active .shima-customer-auth-root .login-error {
  border-right-color: #dc2626 !important;
}

/* Right brand panel: unchanged visual language from v1.1.1. */
.shima-customer-login-visual {
  position: relative !important;
  grid-column: 2 !important;
  min-width: 0 !important;
  height: 100vh !important;
  height: 100dvh !important;
  overflow: hidden !important;
  color: #fff !important;
  background:
    radial-gradient(circle at 43% 49%, rgba(255, 255, 255, .055), transparent 29%),
    linear-gradient(145deg, #3d7958 0%, #43825f 54%, #336e50 100%) !important;
  direction: rtl !important;
  pointer-events: auto !important;
}

.shima-customer-login-brand {
  position: absolute !important;
  z-index: 5 !important;
  top: 44px !important;
  right: 72px !important;
  display: flex !important;
  align-items: center !important;
  min-height: 58px !important;
  text-decoration: none !important;
  pointer-events: auto !important;
}

.shima-customer-login-brand-logo {
  display: block !important;
  width: min(245px, calc(50vw - 96px)) !important;
  max-width: 100% !important;
  height: auto !important;
  aspect-ratio: 442.02 / 117.88 !important;
  object-fit: contain !important;
  object-position: center !important;
  border: 0 !important;
  box-shadow: none !important;
  filter: brightness(0) invert(1) !important;
}

.shima-customer-login-decoration,
.shima-customer-shape { pointer-events: none !important; }

.shima-customer-shape {
  position: absolute !important;
  display: block !important;
  border: 1px solid rgba(255, 255, 255, .10) !important;
  background: linear-gradient(145deg, rgba(255, 255, 255, .17), rgba(255, 255, 255, .025)) !important;
}

.shima-customer-shape-a {
  top: 39% !important;
  left: -54px !important;
  width: 220px !important;
  height: 220px !important;
  border-radius: 150px 0 150px 0 !important;
  opacity: .52 !important;
}

.shima-customer-shape-b {
  top: 52% !important;
  left: 68px !important;
  width: 175px !important;
  height: 175px !important;
  border-radius: 0 120px 0 120px !important;
  opacity: .46 !important;
}

.shima-customer-shape-c {
  right: -210px !important;
  bottom: -205px !important;
  width: 500px !important;
  height: 500px !important;
  border-radius: 50% 0 0 0 !important;
  border: 0 !important;
  background: rgba(26, 76, 53, .17) !important;
  opacity: 1 !important;
}

@media (min-width: 901px) and (max-height: 780px) {
  .shima-customer-login-content {
    justify-content: flex-start !important;
    padding-top: 34px !important;
    padding-bottom: 34px !important;
  }

  .shima-customer-login-intro { margin-bottom: 22px !important; }

  html.shima-customer-login-ui-active .shima-customer-auth-root {
    max-height: calc(100dvh - 68px) !important;
  }

  html.shima-customer-login-ui-active .shima-customer-auth-root .shima-customer-native-card,
  html.shima-customer-login-ui-active .shima-customer-auth-root.shima-customer-native-card {
    padding: 24px !important;
  }

  html.shima-customer-login-ui-active .shima-customer-auth-root input.shima-auth-field {
    min-height: 52px !important;
    margin-bottom: 16px !important;
  }

  html.shima-customer-login-ui-active .shima-customer-auth-root .shima-auth-channel-option { min-height: 54px !important; }
  html.shima-customer-login-ui-active .shima-customer-auth-root .shima-customer-login-submit { min-height: 52px !important; }
}

@media (max-width: 900px) {
  html.shima-customer-login-ui-active,
  html.shima-customer-login-ui-active body {
    overflow-x: hidden !important;
    overflow-y: auto !important;
  }

  .shima-customer-login-ui {
    min-height: 100dvh !important;
    overflow-y: auto !important;
  }

  .shima-customer-login-layout {
    display: block !important;
    min-height: 100dvh !important;
  }

  .shima-customer-login-visual { display: none !important; }

  .shima-customer-login-form-panel {
    display: block !important;
    width: 100% !important;
    min-height: 100dvh !important;
    height: auto !important;
    overflow: visible !important;
  }

  .shima-customer-login-content {
    justify-content: flex-start !important;
    min-height: 100dvh !important;
    padding: 54px 20px 36px !important;
  }

  .shima-customer-login-intro,
  .shima-customer-login-form-host {
    width: min(520px, 100%) !important;
    max-width: 520px !important;
  }

  .shima-customer-login-intro {
    margin-bottom: 24px !important;
  }

  .shima-customer-login-intro h1 {
    font-size: 27px !important;
  }

  .shima-customer-login-intro p {
    font-size: 14px !important;
    line-height: 1.95 !important;
  }

  html.shima-customer-login-ui-active .shima-customer-auth-root {
    max-height: calc(100dvh - 140px) !important;
  }

  html.shima-customer-login-ui-active .shima-customer-auth-root .shima-customer-native-card,
  html.shima-customer-login-ui-active .shima-customer-auth-root.shima-customer-native-card {
    padding: 24px !important;
    border-radius: 22px !important;
  }
}

@media (max-width: 520px) {
  .shima-customer-login-content {
    padding: 38px 14px 24px !important;
  }

  .shima-customer-login-intro {
    margin-bottom: 20px !important;
  }

  .shima-customer-login-intro h1 { font-size: 24px !important; }

  html.shima-customer-login-ui-active .shima-customer-auth-root .shima-customer-native-card,
  html.shima-customer-login-ui-active .shima-customer-auth-root.shima-customer-native-card {
    padding: 20px !important;
    border-radius: 20px !important;
  }

  html.shima-customer-login-ui-active .shima-customer-auth-root input.shima-auth-field {
    min-height: 54px !important;
    font-size: 16px !important;
  }

  html.shima-customer-login-ui-active .shima-customer-auth-root .shima-auth-channel-option {
    min-height: 58px !important;
  }
}

@media (prefers-contrast: more) {
  html.shima-customer-login-ui-active .shima-customer-auth-root input.shima-auth-field,
  html.shima-customer-login-ui-active .shima-customer-auth-root .shima-auth-channel-option,
  html.shima-customer-login-ui-active .shima-customer-auth-root .woocommerce-error,
  html.shima-customer-login-ui-active .shima-customer-auth-root .woocommerce-message,
  html.shima-customer-login-ui-active .shima-customer-auth-root .woocommerce-info {
    border-width: 2px !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  .shima-customer-login-ui,
  .shima-customer-login-ui *,
  .shima-customer-auth-root,
  .shima-customer-auth-root * {
    scroll-behavior: auto !important;
    transition-duration: .001ms !important;
    animation-duration: .001ms !important;
    animation-iteration-count: 1 !important;
  }
}

/* v1.3.0 safety guard: only the container may be fixed; the two native forms must stay normal-flow. */
html.shima-customer-login-ui-active #shima-otp-request-form.shima-customer-auth-root,
html.shima-customer-login-ui-active #shima-otp-verify-form.shima-customer-auth-root {
  position: static !important;
  inset: auto !important;
  width: 100% !important;
  max-width: none !important;
  height: auto !important;
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

/* v1.6.0 — approved unified login design */
html.shima-customer-login-ui-active .shima-customer-auth-root .shima-otp-brand {
  display: none !important;
  margin: 0 !important;
}

/* Stable geometry: switching between OTP and fixed-password must not resize the card. */
.shima-customer-login-form-host {
  height: 516px;
  min-height: 120px !important;
}

html.shima-customer-login-ui-active .shima-customer-auth-root .shima-customer-native-card,
html.shima-customer-login-ui-active .shima-customer-auth-root.shima-customer-native-card {
  display: flex !important;
  flex-direction: column !important;
  min-height: 516px !important;
}

html.shima-customer-login-ui-active .shima-customer-auth-root .shima-auth-panel {
  width: 100% !important;
}

html.shima-customer-login-ui-active .shima-customer-auth-root .shima-auth-panel[hidden] {
  display: none !important;
}

/* Login mode segmented control */
html.shima-customer-login-ui-active .shima-customer-auth-root .shima-auth-mode-tabs {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 8px !important;
  width: 100% !important;
  margin: 0 0 24px !important;
  padding: 6px !important;
  background: #f2f5f3 !important;
  border: 1px solid #dde4df !important;
  border-radius: 16px !important;
}

html.shima-customer-login-ui-active .shima-customer-auth-root .shima-auth-mode-tab {
  appearance: none !important;
  min-height: 50px !important;
  margin: 0 !important;
  padding: 0 12px !important;
  border: 0 !important;
  border-radius: 12px !important;
  background: transparent !important;
  color: #68756d !important;
  box-shadow: none !important;
  font-family: inherit !important;
  font-size: 14px !important;
  line-height: 1.5 !important;
  font-weight: 800 !important;
  cursor: pointer !important;
  transition: background-color .16s var(--shima-ease), color .16s var(--shima-ease), box-shadow .16s var(--shima-ease) !important;
}

html.shima-customer-login-ui-active .shima-customer-auth-root .shima-auth-mode-tab.is-active {
  background: #fff !important;
  color: var(--shima-primary) !important;
  box-shadow: 0 2px 10px rgba(20, 40, 28, .06) !important;
}

html.shima-customer-login-ui-active .shima-customer-auth-root .shima-auth-mode-tab:hover:not(.is-active) {
  background: rgba(255, 255, 255, .45) !important;
  color: #4e6256 !important;
}

html.shima-customer-login-ui-active .shima-customer-auth-root .shima-auth-mode-tab:focus-visible {
  outline: 2px solid rgba(61, 121, 88, .74) !important;
  outline-offset: 2px !important;
}

html.shima-customer-login-ui-active #shima-otp-login #shima-password-value.shima-auth-field {
  padding: 0 56px !important;
  direction: rtl !important;
  text-align: right !important;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24' fill='none' stroke='%236B7280' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='5' y='11' width='14' height='10' rx='2'/%3E%3Cpath d='M8 11V8a4 4 0 1 1 8 0v3'/%3E%3C/svg%3E") !important;
  background-repeat: no-repeat !important;
  background-position: right 18px center !important;
  background-size: 20px 20px !important;
}

html.shima-customer-login-ui-active .shima-customer-auth-root #shima-auth-password-panel .shima-password-toggle {
  position: absolute !important;
  z-index: 6 !important;
  left: var(--shima-eye-left, 6px) !important;
  right: auto !important;
  top: var(--shima-eye-top, 50%) !important;
  bottom: auto !important;
  transform: translateY(-50%) !important;
  width: 44px !important;
  height: 44px !important;
  min-height: 44px !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 999px !important;
  background: transparent !important;
  color: transparent !important;
  box-shadow: none !important;
  cursor: pointer !important;
}

html.shima-customer-login-ui-active .shima-customer-auth-root #shima-auth-password-panel .shima-password-toggle::before {
  content: '' !important;
  position: absolute !important;
  inset: 0 !important;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24' fill='none' stroke='%236B7280' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M17.94 17.94A10.94 10.94 0 0 1 12 20C7 20 2.73 16.89 1 12c.92-2.6 2.69-4.78 5.06-6.32M9.9 4.24A10.83 10.83 0 0 1 12 4c5 0 9.27 3.11 11 8a11.86 11.86 0 0 1-4.08 5.36M1 1l22 22'/%3E%3Cpath d='M9.88 9.88A3 3 0 1 0 14.12 14.12'/%3E%3C/svg%3E") !important;
  background-repeat: no-repeat !important;
  background-position: center !important;
  background-size: 20px 20px !important;
  opacity: .88 !important;
}

html.shima-customer-login-ui-active .shima-customer-auth-root #shima-auth-password-panel .shima-password-toggle[aria-pressed='true']::before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24' fill='none' stroke='%236B7280' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M1 12s4-8 11-8 11 8 11 8-4 8-11 8S1 12 1 12Z'/%3E%3Ccircle cx='12' cy='12' r='3'/%3E%3C/svg%3E") !important;
}

html.shima-customer-login-ui-active .shima-customer-auth-root #shima-auth-password-panel .shima-password-toggle:hover::before {
  opacity: 1 !important;
}

html.shima-customer-login-ui-active .shima-customer-auth-root #shima-auth-password-panel .shima-password-toggle:focus-visible {
  outline: 2px solid rgba(61, 121, 88, .75) !important;
  outline-offset: 3px !important;
}


/* Screen-reader-only helper used by the native password toggle. */
html.shima-customer-login-ui-active .shima-customer-auth-root .screen-reader-text {
  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;
  white-space: nowrap !important;
  border: 0 !important;
}

/* 1.7.0: both methods share one card, panel and field system. */
html.shima-customer-login-ui-active .shima-customer-auth-root .shima-auth-panel {
  margin: 0 !important;
  padding: 0 !important;
  min-height: 0 !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}
html.shima-customer-login-ui-active .shima-customer-auth-root .shima-auth-field-label {
  display: block !important;
}
html.shima-customer-login-ui-active .shima-customer-auth-root .shima-otp-field {
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}
html.shima-customer-login-ui-active .shima-customer-auth-root .shima-password-field-wrap {
  position: relative !important;
  width: 100% !important;
  margin: 0 0 18px !important;
  padding: 0 !important;
}
html.shima-customer-login-ui-active .shima-customer-auth-root .shima-password-field-wrap input.shima-auth-field {
  margin-bottom: 0 !important;
}
html.shima-customer-login-ui-active .shima-customer-auth-root .shima-password-use-otp {
  display: block !important;
  width: 100% !important;
  margin: 18px 0 0 !important;
  padding: 8px !important;
  background: transparent !important;
  border: 0 !important;
  color: var(--shima-primary) !important;
  text-align: center !important;
  font-size: 14px !important;
  line-height: 1.9 !important;
  cursor: pointer !important;
}
html.shima-customer-login-ui-active .shima-customer-auth-root {
  max-height: var(--shima-auth-available-height, calc(100dvh - 160px)) !important;
  overflow-y: auto !important;
}
html.shima-customer-login-ui-active .shima-customer-auth-root [hidden] {
  display: none !important;
}
.shima-customer-login-form-host {
  min-height: 120px !important;
}
@media (max-width: 900px) {
  html.shima-customer-login-ui-active .shima-customer-auth-root .shima-customer-native-card,
  html.shima-customer-login-ui-active .shima-customer-auth-root.shima-customer-native-card { min-height: 500px !important; }
}
@media (max-width: 520px) {
  html.shima-customer-login-ui-active .shima-customer-auth-root .shima-customer-native-card,
  html.shima-customer-login-ui-active .shima-customer-auth-root.shima-customer-native-card { min-height: 484px !important; }
}

/* Keep future text components on the same Persian typeface. */
html.shima-customer-login-ui-active .shima-customer-auth-root *,
.shima-customer-login-ui * {
  font-family: "Vazirmatn", Tahoma, Arial, sans-serif !important;
}
html.shima-customer-login-ui-active .shima-customer-auth-root .dashicons,
html.shima-customer-login-ui-active .shima-customer-auth-root .dashicons::before {
  font-family: dashicons !important;
}

/* The core plugin owns the real CAPTCHA form and validation; this plugin styles it. */
html.shima-customer-login-ui-active .shima-customer-auth-root .shima-captcha {
  display: block !important;
  width: 100% !important;
  margin: 4px 0 17px !important;
  direction: rtl !important;
}
html.shima-customer-login-ui-active .shima-customer-auth-root .shima-captcha > label {
  display: block !important;
  margin: 0 0 8px !important;
  color: var(--shima-text) !important;
  font-size: 14px !important;
  font-weight: 700 !important;
}
html.shima-customer-login-ui-active .shima-customer-auth-root .shima-captcha__image-row {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 8px !important;
  min-height: 68px !important;
  padding: 2px 6px !important;
  border: 1px solid #dce9df !important;
  border-radius: 12px !important;
  background: #f6f9f7 !important;
}
html.shima-customer-login-ui-active .shima-customer-auth-root .shima-captcha__image {
  width: 218px !important;
  height: 62px !important;
  max-width: calc(100% - 48px) !important;
  object-fit: contain !important;
}
html.shima-customer-login-ui-active .shima-customer-auth-root .shima-captcha__image[hidden] { display: none !important; }
html.shima-customer-login-ui-active .shima-customer-auth-root .shima-captcha__refresh {
  flex: 0 0 40px !important;
  width: 40px !important;
  height: 40px !important;
  padding: 0 !important;
  border: 1px solid #d5e5d9 !important;
  border-radius: 10px !important;
  background: #fff !important;
  color: var(--shima-primary) !important;
  font: 27px/1 Arial, sans-serif !important;
  cursor: pointer !important;
}
html.shima-customer-login-ui-active .shima-customer-auth-root .shima-captcha__input {
  display: block !important;
  width: 100% !important;
  min-height: 48px !important;
  margin: 9px 0 2px !important;
  padding: 8px 12px !important;
  border: 1px solid #d7e3da !important;
  border-radius: 12px !important;
  background: #fff !important;
  color: var(--shima-text) !important;
  font-size: 17px !important;
  text-align: center !important;
  letter-spacing: .13em !important;
}
html.shima-customer-login-ui-active .shima-customer-auth-root .shima-captcha__hint {
  display: block !important;
  min-height: 22px !important;
  color: var(--shima-muted) !important;
  font-size: 12px !important;
}
html.shima-customer-login-ui-active .shima-customer-auth-root .shima-captcha__input:focus-visible,
html.shima-customer-login-ui-active .shima-customer-auth-root .shima-captcha__refresh:focus-visible {
  outline: 2px solid var(--shima-primary) !important;
  outline-offset: 2px !important;
}

html.shima-customer-login-ui-active .shima-customer-auth-root .shima-eye-anchor {
  position: relative !important;
}
html.shima-customer-login-ui-active #shima-otp-login .shima-password-toggle > svg,
html.shima-customer-login-ui-active #shima-otp-login .shima-password-toggle > .dashicons {
  display: none !important;
}

/* Native hidden state must win over every decorative component rule. */
html.shima-customer-login-ui-active #shima-otp-login.shima-customer-auth-root[hidden],
html.shima-customer-login-ui-active #shima-otp-login.shima-customer-auth-root [hidden] {
  display: none !important;
}

/* 1.7.3 — keep the visible OTP control readable on iOS autofill. */
html.shima-customer-login-ui-active #shima-otp-login #shima-otp-code.shima-auth-field {
  direction: ltr !important;
  text-align: center !important;
  letter-spacing: .28em !important;
  padding-inline: 22px !important;
  font-variant-numeric: tabular-nums !important;
  -webkit-text-security: none !important;
}

/* 1.8.1 — compact login card; the 60-second challenge stays fully visible. */
.shima-customer-login-content { padding-top: 20px !important; padding-bottom: 20px !important; }
.shima-customer-login-intro { margin-bottom: 12px !important; }
.shima-customer-login-intro h1 { font-size: 25px !important; }
.shima-customer-login-intro p { margin-top: 2px !important; font-size: 14px !important; line-height: 1.6 !important; }

html.shima-customer-login-ui-active .shima-customer-auth-root {
  max-height: none !important;
  overflow: visible !important;
  scrollbar-width: none !important;
}
html.shima-customer-login-ui-active .shima-customer-auth-root .shima-customer-native-card,
html.shima-customer-login-ui-active .shima-customer-auth-root.shima-customer-native-card {
  min-height: 0 !important;
  padding: 20px 22px !important;
  overflow: visible !important;
}
html.shima-customer-login-ui-active .shima-customer-auth-root .shima-auth-mode-tabs {
  gap: 4px !important;
  margin-bottom: 12px !important;
  padding: 3px !important;
  border-radius: 12px !important;
}
html.shima-customer-login-ui-active .shima-customer-auth-root .shima-auth-mode-tab {
  min-height: 40px !important;
  border-radius: 9px !important;
}
html.shima-customer-login-ui-active .shima-customer-auth-root .shima-otp-field { margin-bottom: 9px !important; }
html.shima-customer-login-ui-active .shima-customer-auth-root .shima-otp-field label { margin-bottom: 4px !important; }
html.shima-customer-login-ui-active .shima-customer-auth-root input.shima-auth-field {
  min-height: 46px !important;
  margin-bottom: 0 !important;
}
html.shima-customer-login-ui-active .shima-customer-auth-root .shima-auth-channel-group {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 8px !important;
  margin: 0 0 9px !important;
}
html.shima-customer-login-ui-active .shima-customer-auth-root .shima-auth-channel-group > legend {
  grid-column: 1 / -1 !important;
  margin: 0 0 4px !important;
  line-height: 1.55 !important;
}
html.shima-customer-login-ui-active .shima-customer-auth-root .shima-auth-channel-option {
  min-height: 58px !important;
  margin: 0 !important;
  padding: 7px 34px 7px 8px !important;
  font-size: 13px !important;
  line-height: 1.4 !important;
}
html.shima-customer-login-ui-active .shima-customer-auth-root .shima-auth-channel-option input.shima-auth-channel-radio {
  right: 11px !important;
  width: 16px !important;
  min-width: 16px !important;
  height: 16px !important;
}
html.shima-customer-login-ui-active .shima-customer-auth-root .shima-auth-channel-option small {
  font-size: 11px !important;
  line-height: 1.45 !important;
}
html.shima-customer-login-ui-active .shima-customer-auth-root .shima-captcha {
  display: grid !important;
  grid-template-columns: minmax(0, 205px) minmax(0, 1fr) !important;
  align-items: center !important;
  column-gap: 10px !important;
  row-gap: 4px !important;
  margin: 0 0 8px !important;
}
html.shima-customer-login-ui-active .shima-customer-auth-root .shima-captcha[hidden] { display: none !important; }
html.shima-customer-login-ui-active .shima-customer-auth-root .shima-captcha > label,
html.shima-customer-login-ui-active .shima-customer-auth-root .shima-captcha__hint {
  grid-column: 1 / -1 !important;
  margin: 0 !important;
}
html.shima-customer-login-ui-active .shima-customer-auth-root .shima-captcha__image-row {
  min-height: 52px !important;
  height: 52px !important;
  padding: 2px 4px !important;
}
html.shima-customer-login-ui-active .shima-customer-auth-root .shima-captcha__image {
  width: calc(100% - 38px) !important;
  max-width: calc(100% - 38px) !important;
  height: 48px !important;
}
html.shima-customer-login-ui-active .shima-customer-auth-root .shima-captcha__refresh {
  flex-basis: 32px !important;
  width: 32px !important;
  height: 32px !important;
  font-size: 23px !important;
}
html.shima-customer-login-ui-active .shima-customer-auth-root .shima-captcha__input {
  min-width: 0 !important;
  min-height: 52px !important;
  height: 52px !important;
  margin: 0 !important;
}
html.shima-customer-login-ui-active .shima-customer-auth-root .shima-captcha__hint {
  min-height: 15px !important;
  font-size: 11px !important;
  line-height: 1.4 !important;
}
html.shima-customer-login-ui-active .shima-customer-auth-root .shima-customer-login-submit {
  min-height: 46px !important;
  margin-top: 7px !important;
}
html.shima-customer-login-ui-active .shima-customer-auth-root .shima-auth-legal-note {
  margin-top: 8px !important;
  line-height: 1.5 !important;
}

@media (max-width: 520px) {
  html.shima-customer-login-ui-active .shima-customer-auth-root .shima-customer-native-card,
  html.shima-customer-login-ui-active .shima-customer-auth-root.shima-customer-native-card { padding: 16px !important; }
  html.shima-customer-login-ui-active .shima-customer-auth-root .shima-auth-channel-group { gap: 5px !important; }
  html.shima-customer-login-ui-active .shima-customer-auth-root .shima-auth-channel-option { min-height: 65px !important; padding-right: 28px !important; font-size: 12px !important; }
  html.shima-customer-login-ui-active .shima-customer-auth-root .shima-auth-channel-option small { font-size: 10px !important; }
  html.shima-customer-login-ui-active .shima-customer-auth-root .shima-captcha { grid-template-columns: minmax(0, 52%) minmax(0, 1fr) !important; gap: 6px !important; }
  html.shima-customer-login-ui-active .shima-customer-auth-root .shima-captcha__input { font-size: 15px !important; padding: 5px !important; }
}

html.shima-customer-login-ui-active .shima-customer-auth-root.shima-auth-needs-scroll {
  max-height: var(--shima-auth-available-height, calc(100dvh - 48px)) !important;
  overflow-y: auto !important;
}

/* 1.8.2 — center the card at desktop zoom levels and keep the challenge readable on phones. */
@media (min-width: 901px) and (min-height: 690px) {
  .shima-customer-login-content { justify-content: center !important; }
}

html.shima-customer-login-ui-active .shima-customer-auth-root .shima-password-field-wrap {
  margin-bottom: 9px !important;
}
html.shima-customer-login-ui-active .shima-customer-auth-root .shima-password-use-otp {
  min-height: 44px !important;
  margin-top: 9px !important;
  padding: 8px !important;
  line-height: 1.5 !important;
}
html.shima-customer-login-ui-active .shima-customer-auth-root #shima-password-value:-webkit-autofill {
  -webkit-box-shadow: inset 0 0 0 1000px #fff !important;
  -webkit-text-fill-color: var(--shima-text) !important;
}

@media (max-width: 900px) {
  html.shima-customer-login-ui-active,
  html.shima-customer-login-ui-active body {
    overflow: hidden !important;
  }
  .shima-customer-login-ui,
  .shima-customer-login-form-panel {
    overflow: hidden !important;
  }
  .shima-customer-login-content {
    justify-content: center !important;
    padding: 24px 20px !important;
  }
  .shima-customer-login-intro { margin-bottom: 12px !important; }
  html.shima-customer-login-ui-active .shima-customer-auth-root .shima-customer-native-card,
  html.shima-customer-login-ui-active .shima-customer-auth-root.shima-customer-native-card {
    padding: 18px !important;
  }
}

@media (max-width: 520px) {
  .shima-customer-login-content { padding: 18px 14px 24px !important; }
  .shima-customer-login-intro { margin-bottom: 10px !important; }
  .shima-customer-login-intro p { font-size: 13px !important; line-height: 1.55 !important; }
  html.shima-customer-login-ui-active .shima-customer-auth-root .shima-customer-native-card,
  html.shima-customer-login-ui-active .shima-customer-auth-root.shima-customer-native-card {
    padding: 16px !important;
    border-radius: 18px !important;
  }
  html.shima-customer-login-ui-active .shima-customer-auth-root .shima-auth-mode-tab {
    min-height: 44px !important;
    font-size: 13px !important;
  }
  html.shima-customer-login-ui-active .shima-customer-auth-root input.shima-auth-field {
    min-height: 48px !important;
    font-size: 16px !important;
  }
  html.shima-customer-login-ui-active .shima-customer-auth-root .shima-auth-channel-option {
    min-height: 59px !important;
    font-size: 12px !important;
  }
  html.shima-customer-login-ui-active .shima-customer-auth-root .shima-auth-channel-option small {
    font-size: 11px !important;
  }
  html.shima-customer-login-ui-active .shima-customer-auth-root .shima-captcha {
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 5px !important;
  }
  html.shima-customer-login-ui-active .shima-customer-auth-root .shima-captcha__image-row {
    min-height: 58px !important;
    height: 58px !important;
  }
  html.shima-customer-login-ui-active .shima-customer-auth-root .shima-captcha__image {
    width: min(218px, calc(100% - 50px)) !important;
    max-width: calc(100% - 50px) !important;
    height: 54px !important;
  }
  html.shima-customer-login-ui-active .shima-customer-auth-root .shima-captcha__refresh {
    flex-basis: 44px !important;
    width: 44px !important;
    height: 44px !important;
  }
  html.shima-customer-login-ui-active .shima-customer-auth-root .shima-captcha__input {
    min-height: 46px !important;
    height: 46px !important;
    font-size: 16px !important;
  }
  html.shima-customer-login-ui-active .shima-customer-auth-root .shima-customer-login-submit {
    min-height: 48px !important;
  }
}

@media (max-width: 380px) {
  html.shima-customer-login-ui-active .shima-customer-auth-root .shima-auth-channel-group {
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 6px !important;
  }
  html.shima-customer-login-ui-active .shima-customer-auth-root .shima-auth-channel-option {
    min-height: 50px !important;
  }
}

@media (max-height: 689px) and (min-width: 901px),
       (max-height: 680px) and (max-width: 900px) {
  .shima-customer-login-content {
    justify-content: flex-start !important;
    padding-top: 16px !important;
  }
}

/* Recovery navigation follows the existing Persian login link treatment. */
html.shima-customer-login-ui-active .shima-customer-auth-root .shima-recovery-return {
  min-height: 44px !important;
  font-family: "Vazirmatn", Tahoma, Arial, sans-serif !important;
  font-size: 14px !important;
  line-height: 1.7 !important;
}
html.shima-customer-login-ui-active .shima-customer-auth-root .shima-recovery-return[hidden] {
  display: none !important;
}
