.dashboard-card {
    transition: all 0.2s ease-in-out;
    cursor: pointer;
}

.dashboard-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 8px 20px rgba(0,0,0,0.08);
}
.app-tile-link{
  text-decoration:none;
  color:inherit;
  display:block;
}

.app-tile{
  position:relative;
  border:1px solid rgba(0,0,0,.06);
  border-radius:18px;
  background:#fff;
  padding:16px;
  height:100%;
  box-shadow:0 6px 18px rgba(0,0,0,.04);
  transition:transform .15s ease, box-shadow .15s ease, border-color .15s ease;
}

.app-tile:hover{
  transform:translateY(-3px);
  box-shadow:0 10px 26px rgba(0,0,0,.08);
  border-color:rgba(0,0,0,.10);
}

.app-tile-icon{
  width:52px;
  height:52px;
  border-radius:14px;
  display:flex;
  align-items:center;
  justify-content:center;
  background:rgba(13,110,253,.10); /* bootstrap primary tint */
  margin-bottom:12px;
}

.app-tile-icon i{
  font-size:26px;
}

.app-tile-title{
  font-weight:700;
  font-size:1rem;
  line-height:1.2;
}

.app-tile-subtitle{
  margin-top:4px;
  font-size:.85rem;
  color:#6c757d;
}

.app-badge{
  position:absolute;
  top:12px;
  right:12px;
  border-radius:999px;
  padding:4px 10px;
  font-size:.75rem;
  font-weight:700;
  line-height:1;
}

.app-badge-new{
  background:#fff3cd;
  color:#664d03;
  border:1px solid rgba(102,77,3,.15);
}

.app-badge-count{
  background:#0d6efd;
  color:#fff;
  border:1px solid rgba(255,255,255,.25);
  min-width:28px;
  text-align:center;
}

.avatar-circle{
  width:54px;height:54px;border-radius:16px;
  background:rgba(13,110,253,.10);
  display:flex;align-items:center;justify-content:center;
  overflow:hidden; flex:0 0 auto;
}
.avatar-img{ width:100%; height:100%; object-fit:cover; }
.avatar-initials{ font-size:22px; }