/* Fluent-inspired hover and navbar tweaks */
:root { --accent-fill-rest: #0F6CBD; }

.btn {
  transition: box-shadow .15s ease, border-color .15s ease, background-color .15s ease;
}

.btn:hover,
.btn:focus {
  border-color: var(--accent-fill-rest);
  box-shadow: 0 0 0 .2rem rgba(15,108,189,.15);
  outline: none;
}

.navbar .nav-link,
.navbar .nav-link.btn-link {
  transition: background-color .15s ease, color .15s ease, box-shadow .15s ease;
  border-radius: .5rem;
}

.navbar-light .navbar-nav .nav-link {
  color: #495057;
}

.navbar-light .navbar-nav .nav-link:hover,
.navbar-light .navbar-nav .nav-link:focus {
  color: #0F6CBD;
  background-color: rgba(15,108,189,.06);
  box-shadow: 0 0 0 .12rem rgba(15,108,189,.2);
}

/* Align logout button like other nav links */
.navbar .nav-link-btn {
  padding: .5rem 1rem;
  text-decoration: none;
}

/* AnyDoc attachments table spacing */
#attachmentsPreview .table td, #attachmentsPreview .table th { vertical-align: middle; }

/* Dropdown menu subtle transitions */
.dropdown-menu { 
  transition: opacity .15s ease, transform .15s ease;
  transform-origin: top right;
}
.dropdown-menu.show { 
  opacity: 1; 
  transform: scale(1.0);
}
.dropdown-menu:not(.show) { 
  opacity: 0; 
  transform: scale(0.98);
}

/* Avatar badge hover emphasis */
.navbar .badge.rounded-circle { transition: box-shadow .15s ease, transform .15s ease; }
.navbar .badge.rounded-circle:hover { box-shadow: 0 0 0 .2rem rgba(15,108,189,.25); transform: translateY(-1px); }