/**
 * User Menu Block Styles
 * Styles for the user menu that appears in the sidebar of chapter pages
 */

/* User menu block container */
.user-menu-block {
  background: #f9f9f9;
  border: 1px solid #e0e0e0;
  border-radius: 4px;
  margin-bottom: 30px;
  margin-top: 30px;
}

.user-menu-block h2 {
  background: #253980;
  color: #fff;
  font-size: 16px;
  font-weight: bold;
  margin: 0;
  padding: 12px 15px;
  text-transform: uppercase;
  font-family: clearsans-medium, Arial, sans-serif;
  border-radius: 4px 4px 0 0;
}

/* Menu content container */
.user-menu-block .content {
  padding: 0;
  margin: 0;
}

/* Menu list styling */
.user-menu-block ul.menu {
  list-style: none;
  margin: 0;
  padding: 0;
}

.user-menu-block ul.menu li {
  border-bottom: 1px solid #e5e5e5;
  margin: 0;
  padding: 0;
}

.user-menu-block ul.menu li:last-child {
  border-bottom: none;
}

.user-menu-block ul.menu li a {
  color: #253980;
  text-decoration: none;
  display: block;
  padding: 10px 15px;
  font-size: 14px;
  font-family: ClearSans-Regular, Arial, sans-serif;
  transition: background-color 0.3s ease, color 0.3s ease;
}

.user-menu-block ul.menu li a:hover,
.user-menu-block ul.menu li a:focus {
  background-color: #f0f0f0;
  color: #fb6100;
  text-decoration: none;
}

.user-menu-block ul.menu li.is-active a,
.user-menu-block ul.menu li.active-trail a {
  font-weight: bold;
  color: #fb6100;
}

/* Sub-menu styling if needed */
.user-menu-block ul.menu ul {
  margin: 0;
  padding: 0;
  background: #f5f5f5;
}

.user-menu-block ul.menu ul li {
  border-bottom: 1px solid #e0e0e0;
}

.user-menu-block ul.menu ul li a {
  padding-left: 30px;
  font-size: 13px;
}

/* Icons for specific menu items */
.user-menu-block ul.menu li a[href*="/user"]:before {
  content: "\f007";
  font-family: FontAwesome;
  margin-right: 8px;
  color: #666;
}

.user-menu-block ul.menu li a[href*="/logout"]:before {
  content: "\f08b";
  font-family: FontAwesome;
  margin-right: 8px;
  color: #666;
}

.user-menu-block ul.menu li a[href*="/civicrm"]:before {
  content: "\f0c0";
  font-family: FontAwesome;
  margin-right: 8px;
  color: #666;
}

.user-menu-block ul.menu li a[href*="/member-directory"]:before {
  content: "\f02d";
  font-family: FontAwesome;
  margin-right: 8px;
  color: #666;
}

.user-menu-block ul.menu li a[href*="/password"]:before {
  content: "\f084";
  font-family: FontAwesome;
  margin-right: 8px;
  color: #666;
}

/* External link indicator */
.user-menu-block ul.menu li a[target="_blank"]:after {
  content: "\f08e";
  font-family: FontAwesome;
  margin-left: 5px;
  font-size: 11px;
  color: #999;
}

/* Responsive adjustments */
@media (max-width: 768px) {
  .user-menu-block {
    margin-top: 20px;
    margin-bottom: 20px;
  }

  .user-menu-block h2 {
    font-size: 15px;
    padding: 10px 12px;
  }

  .user-menu-block ul.menu li a {
    padding: 8px 12px;
    font-size: 13px;
  }
}

/* Integration with sidebar */
.right-sidebar .user-menu-block {
  width: 100%;
}

/* Ensure it appears as the last item */
.right-sidebar > *:last-child.user-menu-block {
  margin-bottom: 0;
}

/* Hover effects */
.user-menu-block ul.menu li {
  position: relative;
  overflow: hidden;
}

.user-menu-block ul.menu li:hover {
  background-color: rgba(37, 57, 128, 0.03);
}

/* Active page highlight */
.user-menu-block ul.menu li.menu-item--active-trail > a {
  background-color: #f0f7ff;
  border-left: 3px solid #253980;
  padding-left: 12px;
}

/* Clearfix for menu */
.user-menu-block ul.menu.clearfix:after {
  content: "";
  display: table;
  clear: both;
}