/* Localsewa v32.8.68 — Customer sidebar color hierarchy
   Stronger selected/action states with compact emergency-card brand treatment. */

.ls-customer-sidebar {
  width: 78% !important;
  max-width: 320px !important;
  background: #fff !important;
}

.ls-customer-sidebar-profile {
  padding: 10px 12px !important;
  border-bottom-color: #edf2ef !important;
}

.ls-customer-sidebar-profile > div {
  gap: 8px !important;
}

.ls-customer-sidebar-profile-link {
  min-height: 52px;
  gap: 10px !important;
  padding: 5px 6px !important;
  border: 1px solid transparent;
  border-radius: 14px !important;
}

.ls-customer-sidebar-profile-link.is-active {
  background: #f0fdf4 !important;
  border-color: #d9f3e2 !important;
}

.ls-customer-sidebar-avatar {
  width: 41px !important;
  height: 41px !important;
  flex-basis: 41px !important;
  box-shadow: 0 0 0 1px rgba(15, 138, 75, .08);
}

.ls-customer-sidebar-account-label:empty { display: none !important; }

.ls-customer-sidebar-profile-name {
  margin-top: 0 !important;
  font-size: 13px !important;
  line-height: 1.25 !important;
  letter-spacing: -0.01em;
}

.ls-customer-sidebar-profile-action {
  margin-top: 2px !important;
  font-size: 10px !important;
  line-height: 1.25 !important;
  font-weight: 700 !important;
}

.ls-customer-sidebar-close {
  width: 36px !important;
  height: 36px !important;
  border-radius: 11px !important;
  box-shadow: 0 2px 8px rgba(15, 23, 42, .05) !important;
}

.ls-customer-sidebar-close svg { width: 18px; height: 18px; }

.ls-customer-sidebar-location-wrap {
  padding: 10px 12px 0 !important;
}

.ls-sidebar-location {
  min-height: 50px !important;
  padding: 7px 9px !important;
  border-radius: 14px !important;
  border-color: #e1ebe5 !important;
  background: #f8fbf9 !important;
  box-shadow: 0 2px 8px rgba(15, 23, 42, .025) !important;
}

.ls-sidebar-location:hover {
  border-color: #cfe7d8 !important;
  background: #f4fbf6 !important;
}

.ls-sidebar-location-inner { gap: 9px !important; }
.ls-sidebar-location-icon {
  width: 34px !important;
  height: 34px !important;
  border-radius: 10px !important;
}
.ls-sidebar-location-icon svg { width: 18px; height: 18px; }
.ls-sidebar-location-label {
  font-size: 8px !important;
  line-height: 1.2 !important;
  letter-spacing: .11em !important;
  color: #94a39b !important;
}
.ls-sidebar-location-value {
  display: flex !important;
  min-width: 0 !important;
  margin-top: 2px !important;
  font-size: 11px !important;
  line-height: 1.25 !important;
}
.ls-sidebar-location-value > span,
.ls-sidebar-location-value {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.ls-customer-sidebar-nav {
  padding: 11px 12px 8px !important;
}

.ls-sidebar-section {
  margin-bottom: 11px !important;
}
.ls-sidebar-section:last-child { margin-bottom: 4px !important; }
.ls-sidebar-section-label {
  margin-bottom: 4px !important;
  padding: 0 8px !important;
  font-size: 8px !important;
  line-height: 1.35 !important;
  letter-spacing: .12em !important;
  color: #a2aea8 !important;
}
.ls-sidebar-section-items {
  display: grid !important;
  gap: 2px !important;
}

.ls-sidebar-nav-item {
  min-height: 44px !important;
  gap: 10px !important;
  padding: 6px 8px !important;
  border-radius: 12px !important;
  border-color: transparent !important;
  box-shadow: none !important;
}
.ls-sidebar-nav-item:hover {
  transform: none !important;
  background: #f7faf8 !important;
}
.ls-sidebar-nav-item--active {
  background: #e4f7ea !important;
  border-color: #bfe7cc !important;
  color: #0f6f39 !important;
  box-shadow: inset 3px 0 0 #159447, 0 3px 10px rgba(15, 111, 57, .07) !important;
}
.ls-sidebar-nav-item--emergency {
  min-height: 46px !important;
  background: linear-gradient(135deg, #155b39 0%, #137043 52%, #14844d 100%) !important;
  border-color: rgba(88, 201, 131, .28) !important;
  color: #ffffff !important;
  box-shadow: 0 8px 20px rgba(10, 63, 37, .14) !important;
}
.ls-sidebar-nav-item--emergency:hover {
  background: linear-gradient(135deg, #134f33 0%, #11663c 52%, #127845 100%) !important;
  border-color: rgba(126, 226, 160, .32) !important;
}

.ls-sidebar-nav-icon {
  width: 34px !important;
  height: 34px !important;
  border-radius: 10px !important;
  background: #f6f9f7 !important;
  color: #687a71 !important;
}
.ls-sidebar-nav-item--active .ls-sidebar-nav-icon {
  background: #ccefd7 !important;
  color: #0d7b3d !important;
}
.ls-sidebar-nav-item--emergency .ls-sidebar-nav-icon {
  background: rgba(255, 255, 255, .14) !important;
  color: #ffffff !important;
  box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .08) !important;
}
.ls-sidebar-nav-icon svg { width: 18px !important; height: 18px !important; }

.ls-sidebar-nav-text {
  font-size: 13px !important;
  line-height: 1.3 !important;
}
.ls-sidebar-nav-chevron {
  width: 14px !important;
  height: 14px !important;
  flex: 0 0 14px;
  opacity: .72;
}
.ls-sidebar-nav-item--active .ls-sidebar-nav-chevron {
  color: #0d7b3d !important;
  opacity: 1;
}
.ls-sidebar-nav-item--emergency .ls-sidebar-nav-chevron {
  color: rgba(255, 255, 255, .92) !important;
  opacity: 1;
}
.ls-sidebar-nav-item--emergency .ls-sidebar-nav-text {
  color: #ffffff !important;
}

.ls-customer-sidebar-footer {
  background: rgba(250, 252, 251, .98) !important;
  border-top-color: #edf2ef !important;
  box-shadow: 0 -8px 22px rgba(15, 23, 42, .035);
}

.ls-customer-sidebar-switch-wrap { padding: 8px 12px 2px !important; }
.ls-customer-sidebar-switch {
  min-height: 48px;
  gap: 10px !important;
  padding: 6px 8px !important;
  border: 1px solid #b9e2c6 !important;
  border-radius: 12px !important;
  background: #e5f6ea !important;
  color: #0f6f39 !important;
  box-shadow: 0 3px 10px rgba(15, 111, 57, .055) !important;
}
.ls-customer-sidebar-switch:hover {
  transform: none !important;
  background: #dff3e5 !important;
  border-color: #a7d9b7 !important;
}
.ls-customer-sidebar-switch-icon {
  width: 34px !important;
  height: 34px !important;
  border-radius: 10px !important;
  background: #c9ecd4 !important;
  color: #0b7a3c !important;
}
.ls-customer-sidebar-switch-copy > span:first-child {
  font-size: 12.5px !important;
  color: #0f6f39 !important;
}
.ls-customer-sidebar-switch-copy > span:last-child {
  margin-top: 1px !important;
  font-size: 9px !important;
  color: #4d7f60 !important;
}
.ls-customer-sidebar-switch > svg {
  color: #0b7a3c !important;
}

.ls-customer-sidebar-logout-wrap { padding: 5px 12px 8px !important; }
.ls-customer-sidebar-logout {
  min-height: 48px;
  gap: 10px !important;
  padding: 6px 8px !important;
  border: 1px solid #f6c9c9 !important;
  border-radius: 12px !important;
  background: #fff0f0 !important;
  color: #c81e1e !important;
  box-shadow: 0 3px 10px rgba(200, 30, 30, .04) !important;
}
.ls-customer-sidebar-logout:hover {
  transform: none !important;
  background: #ffe8e8 !important;
  border-color: #f3b8b8 !important;
}
.ls-customer-sidebar-logout-icon {
  width: 34px !important;
  height: 34px !important;
  border-radius: 10px !important;
  background: #ffdada !important;
  color: #c81e1e !important;
}
.ls-customer-sidebar-logout-copy > span:first-child {
  font-size: 12.5px !important;
  color: #c81e1e !important;
}
.ls-customer-sidebar-logout-copy > span:last-child {
  margin-top: 1px !important;
  font-size: 9px !important;
  color: #d45a5a !important;
}

/* Preserve the premium motion system: no row sliding, no decorative movement. */
.ls-sidebar-nav-item,
.ls-sidebar-nav-icon,
.ls-sidebar-nav-chevron,
.ls-customer-sidebar-profile-link,
.ls-customer-sidebar-close,
.ls-sidebar-location,
.ls-customer-sidebar-switch,
.ls-customer-sidebar-logout {
  transition-duration: var(--ls-motion-fast, 160ms) !important;
  transition-timing-function: var(--ls-ease-standard, cubic-bezier(.2,.8,.2,1)) !important;
}

@media (prefers-reduced-motion: reduce) {
  .ls-customer-sidebar *,
  .ls-customer-sidebar-backdrop {
    transition-duration: 1ms !important;
    animation-duration: 1ms !important;
    animation-iteration-count: 1 !important;
  }
}
