/* ELALAN account access-aware navigation
   Extends the existing customer-account theme without changing its layout. */

.elp-nav-item.is-locked,
.elp-rail-action.is-locked,
.elp-bottom-menu .item.is-locked,
.elp-icon-btn.is-locked,
.elp-mobile-header .headerButton.is-locked {
  cursor: not-allowed;
}

.elp-nav-item.is-locked {
  color: #9ba09a;
  background: transparent;
  opacity: .82;
}

.elp-nav-item.is-locked:hover,
.elp-nav-item.is-locked:focus-visible {
  color: #7d837b;
  background: #f5f7f1;
}

.elp-nav-item.is-locked > ion-icon:first-child {
  color: #a9afa4;
}

.elp-nav-lock {
  width: 24px;
  height: 24px;
  margin-left: auto;
  border-radius: 999px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 24px;
  color: #718653;
  background: #eef3e5;
  border: 1px solid #dde7cf;
}

.elp-nav-lock ion-icon {
  width: 13px;
  height: 13px;
}

.elp-profile-strip.is-guest {
  background: linear-gradient(135deg, #fbfcf8 0%, #f1f5e9 100%);
}

.elp-profile-strip > div {
  min-width: 0;
}

.elp-profile-strip > div strong,
.elp-profile-button strong {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.elp-profile-strip.is-guest > a,
.elp-profile-button.is-guest {
  color: #6f8d4b;
}

.elp-customer-card.is-limited {
  background: linear-gradient(145deg, #f8faf4 0%, #eef3e5 100%);
  border-color: #dce6cf;
}

.elp-customer-card.is-limited .elp-workspace-icon {
  color: #73914d;
  background: #fff;
  box-shadow: 0 5px 14px rgba(91, 116, 61, .12);
}

.elp-nav-signin {
  color: #668346;
  background: #f1f6e9;
}

.elp-global-search-locked {
  color: #9a9f98;
  background: #f7f8f5;
  border-color: #e3e6df;
  user-select: none;
  cursor: not-allowed;
}

.elp-global-search-locked > span {
  min-width: 0;
  flex: 1;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.elp-global-search-locked > ion-icon {
  color: #7f965d;
}

.elp-global-search-locked kbd {
  min-width: 48px;
  text-align: center;
  font-size: 9px;
  letter-spacing: .06em;
  text-transform: uppercase;
}

.elp-notification-button.is-locked {
  border: 0;
  background: transparent;
}

.elp-mini-lock {
  position: absolute !important;
  top: 2px !important;
  right: 1px !important;
  width: 16px !important;
  height: 16px !important;
  border-radius: 999px;
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  color: #fff !important;
  background: #7c9a5c !important;
  border: 2px solid #fff;
  font-size: 8px !important;
}

.elp-mini-lock ion-icon {
  width: 8px;
  height: 8px;
}

.elp-rail-profile.is-limited {
  background: linear-gradient(145deg, #ffffff 0%, #f6f9f1 100%);
}

.elp-rail-action.is-locked {
  opacity: .78;
}

.elp-rail-action.is-locked:hover,
.elp-rail-action.is-locked:focus-visible {
  transform: none;
  background: #f7f8f5;
}

.elp-bottom-menu .item.is-locked {
  color: #a7aba5 !important;
}

.elp-bottom-menu .item.is-locked .action-button {
  background: #e9ece6 !important;
  color: #8f958c !important;
  box-shadow: none !important;
}

.elp-access-toast {
  display: grid;
  grid-template-columns: 38px minmax(0, 1fr) auto;
  gap: 11px;
  align-items: center;
  width: min(430px, calc(100vw - 28px));
  padding: 12px 13px;
  border: 1px solid #d9e3cc;
  border-radius: 14px;
  background: rgba(255, 255, 255, .98);
  box-shadow: 0 18px 45px rgba(35, 50, 25, .18);
  color: #21251f;
  animation: elpAccessToastIn .22s ease-out both;
}

.elp-access-toast-icon {
  width: 38px;
  height: 38px;
  border-radius: 12px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #718c4f;
  background: #eff4e7;
}

.elp-access-toast-icon ion-icon {
  width: 19px;
  height: 19px;
}

.elp-access-toast-copy {
  min-width: 0;
}

.elp-access-toast-copy strong {
  display: block;
  margin-bottom: 2px;
  font-size: 13px;
  line-height: 1.3;
}

.elp-access-toast-copy span {
  display: block;
  color: #7c8378;
  font-size: 11px;
  line-height: 1.45;
}

.elp-access-toast a {
  flex: 0 0 auto;
  padding: 8px 11px;
  border-radius: 9px;
  color: #fff;
  background: #7c9a5c;
  font-size: 11px;
  font-weight: 700;
  text-decoration: none;
  white-space: nowrap;
}

.elp-access-toast a:hover,
.elp-access-toast a:focus-visible {
  background: #688649;
}

@keyframes elpAccessToastIn {
  from { opacity: 0; transform: translateY(8px) scale(.98); }
  to { opacity: 1; transform: translateY(0) scale(1); }
}

@media (max-width: 767px) {
  .elp-access-toast {
    grid-template-columns: 36px minmax(0, 1fr);
  }

  .elp-access-toast a {
    grid-column: 1 / -1;
    width: 100%;
    text-align: center;
  }

  .elp-global-search-locked {
    display: none !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  .elp-access-toast {
    animation: none;
  }
}
