:root {
  --brand-color: #5C68D9;
}

#primary-nav .nav-link {
  font-weight: 600 !important;
  font-size: 0.85rem !important;
  color: var(--brand-color) !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
  padding-top: 18px;
  padding-bottom: 6px !important;
  display: inline-block;
  transition: border-bottom-color 0.4s ease;
}

#primary-nav.nav-underline .nav-link.active {
  border-bottom-color: var(--brand-color) !important;
}

#primary-nav .nav-link + .nav-link {
  margin-left: 20px;
}

.nav-select {
  border: 2px solid #C1C6F1 !important;
  border-radius: 1.25rem !important;
  width: 280px;
  transition: border-color 0.2s ease;
}

.nav-select:hover {
  border-color: var(--brand-color) !important;
}

#user-select[aria-expanded="true"] {
  border-color: var(--brand-color) !important;
}

.nav-select .dash-dropdown-value {
  font-weight: 600 !important;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  color: #4C4C4C !important;
}

.dash-dropdown-content {
  border: 1px solid #C1C6F1;
  border-radius: 0.75rem !important;
  margin-top: 2px;
}

.dash-dropdown-option {
  color: #4C4C4C!important;
}

.dash-dropdown-option:hover {
  color: var(--brand-color) !important;
}

.dash-dropdown-option[aria-selected="true"] {
  color: var(--brand-color) !important;
}

.dash-dropdown-search-container {
  border: 1.5px solid #4C4C4C;
  border-radius: 1.25rem !important;
}

.dash-dropdown-search-container:focus-within {
  border: 1.5px solid var(--brand-color) !important;
  border-radius: 1.25rem !important;
  outline: none !important;
}

.dash-dropdown-search-container:focus-within .dash-dropdown-search-icon {
  stroke: var(--brand-color) !important;
  stroke-width: 0.9px !important;
}

#profile-icon,
#header-icon {
  height: 36px;
  width: 36px;
  border-radius: 50%;
  flex-shrink: 0;
  object-fit: cover;
}

.profile-icon-indicator {
  animation: profile-icon-indicator-blink 3.6s ease-in-out infinite;
}

@keyframes profile-icon-indicator-blink {
  0%,
  33%,
  67%,
  100% {
    box-shadow:
      0 0 0 1px white,
      0 0 0 3px #6170f6;
  }

  17%,
  50% {
    box-shadow:
      0 0 0 1px white,
      0 0 0 3px rgba(97, 112, 246, 0);
  }
}

#header-name {
  font-weight: 600;
  font-size: 0.8rem;
  color: #4C4C4C;
  line-height: 1.2;
}

#header-subscription {
  font-weight: 600;
  font-size: 0.7rem;
  color: #4C4C4C;
}

.profile-header {
  display: flex;
  align-items: center;
  gap: 0.7rem;
  margin-left: -10px;
}

.header-text {
  display: flex;
  flex-direction: column;
  transform: translateY(2px);
}

.nav-menu .dropdown-menu {
  border: 1px solid #C1C6F1;
  border-radius: 0.75rem;
  width: 250px;
  margin-top: 8px;
  padding-left: 4px;
  padding-right: 4px;
}

.nav-menu .dropdown-item {
  font-weight: 500 !important;
  color: #4C4C4C !important;
  border-radius: 1.25rem;
  padding: 0.4rem 0.7rem;
  transition: background-color 0.2s ease;
}

.nav-menu .dropdown-item:hover,
.nav-menu .dropdown-item:focus {
  background-color: #EFF1FE;
  outline: none;
}

.nav-menu .dropdown-divider {
  border-top: 1px solid #C1C6F1;
  margin-left: 10px;
  margin-right: 10px;
}

.dropdown-content {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  padding-left: 0.08rem; 
}

.dropdown-icon {
  width: 22px;
  height: 22px;
}

#menu-account,
#menu-guide,
#menu-sync {
  color: var(--brand-color) !important;
}

#menu-sync {
  font-weight: 700 !important;
}

#menu-logout {
  font-weight: 600 !important;
  color: #FF1A39 !important;
}

@media (min-width: 576px) and (max-width: 1199.98px) {
  .navbar-content {
    column-gap: 18px;
  }

  .navbar-dropdown {
    padding-top: 12px !important;
  }

  .nav-logo {
    width: 100%;
    max-width: 280px;
    height: auto !important;
    margin-right: 0 !important;
  }

  #primary-nav {
    display: none;
  }
}

@media (max-width: 575.98px) {
  .navbar-primary {
    padding-left: 20px !important;
    padding-right: 20px !important;
  }

  .navbar-content {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center !important;
    row-gap: 14px;
  }

  .navbar-left,
  .navbar-dropdown {
    display: contents !important;
  }

  .navbar-dropdown > .dash-dropdown-wrapper {
    grid-column: 1 / -1;
    grid-row: 2;
    width: 100%;
  }

  .nav-logo {
    grid-column: 1;
    grid-row: 1;
    max-width: 240px;
    height: auto !important;
    margin-right: 0 !important;
  }

  #primary-nav {
    display: none;
  }

  .nav-select {
    width: 100%;
  }

  #profile-menu {
    grid-column: 2;
    grid-row: 1;
  }

  #profile-icon {
    transform: translateY(4px);
  }

  .nav-menu .dropdown-menu {
    margin-top: 12px;
  }
}
