diff --git a/esoui/ingame/group/keyboard/zo_grouplist_keyboard.xml b/esoui/ingame/group/keyboard/zo_grouplist_keyboard.xml
index 1a7f26e..f7facaf 100755
--- a/esoui/ingame/group/keyboard/zo_grouplist_keyboard.xml
+++ b/esoui/ingame/group/keyboard/zo_grouplist_keyboard.xml
@@ -1,6 +1,6 @@
 <GuiXml>
     <Controls>
-        <Label name="ZO_GroupListRowLabel" font="ZoFontGame" wrapMode="ELLIPSIS" virtual="true"/>
+        <Label name="ZO_GroupListRowLabel" font="ZoFontGame" maxLineCount="1" wrapMode="ELLIPSIS" verticalAlignment="CENTER" virtual="true"/>
 
         <Texture name="ZO_GroupListRole" virtual="true" mouseEnabled="true" layer="OVERLAY">
             <Dimensions x="32" y="32"/>
@@ -8,10 +8,28 @@
                 ZO_GroupListRole_OnMouseEnter(self)
             </OnMouseEnter>
             <OnMouseExit>
-                ZO_GroupListRole_OnMouseExit(self)
+                ZO_GroupListRowChild_OnMouseExit(self)
             </OnMouseExit>
         </Texture>
 
+        <Label name="ZO_GroupListRowTooltipIfTruncatedLabel" inherits="ZO_GroupListRowLabel" mouseEnabled="true" virtual="true">
+            <OnInitialized>
+                self.row = self:GetParent()
+            </OnInitialized>
+            
+            <OnMouseEnter>
+                ZO_GroupListRowTooltipIfTruncatedLabel_OnMouseEnter(self)
+            </OnMouseEnter>
+            
+            <OnMouseExit>
+                ZO_GroupListRowChild_OnMouseExit(self)
+            </OnMouseExit>
+            
+            <OnMouseUp>
+                ZO_GroupListRow_OnMouseUp(self.row, button, upInside)
+            </OnMouseUp>
+        </Label>
+
         <Control name="ZO_GroupListRow" mouseEnabled="true" virtual="true">
             <Dimensions y="30"/>
             <OnMouseEnter>
@@ -26,7 +44,7 @@
             <OnInitialized>
                 self.bg = self:GetNamedChild("BG")
 
-                self.leaderIcon = self:GetNamedChild("Leader")
+                self.leaderIcon = self:GetNamedChild("LeaderIcon")
                 self.characterNameLabel = self:GetNamedChild("CharacterName")
                 self.roleDPS = self:GetNamedChild("RoleDPS")
                 self.roleHeal = self:GetNamedChild("RoleHeal")
@@ -35,37 +53,61 @@
             <Controls>
                 <Texture name="$(parent)BG" inherits="ZO_ThinListBgStrip" />
 
-                <Texture name="$(parent)Leader" mouseEnabled="true" layer="OVERLAY" textureFile="EsoUI/Art/LFG/LFG_leader_icon.dds">
+                <Control name="$(parent)Leader">
+                    <Dimensions x="ZO_KEYBOARD_GROUP_LIST_LEADER_WIDTH" />
                     <Anchor point="LEFT" />
+                    <Controls>
+                        <Texture name="$(parent)Icon" mouseEnabled="true" layer="OVERLAY" textureFile="EsoUI/Art/LFG/LFG_leader_icon.dds">
+                            <Anchor point="CENTER" />
                             <Dimensions x="32" y="32"/>
+                            <OnInitialized>
+                                self.row = self:GetParent():GetParent()
+                            </OnInitialized>
                             <OnMouseEnter>
                                 ZO_GroupListRowStatus_OnMouseEnter(self)
                             </OnMouseEnter>
                             <OnMouseExit>
-                        ZO_GroupListRowStatus_OnMouseExit(self)
+                                ZO_GroupListRowChild_OnMouseExit(self)
                             </OnMouseExit>
                         </Texture>
-                <Label name="$(parent)CharacterName" inherits="ZO_GroupListRowLabel" verticalAlignment="CENTER">
-                    <Anchor point="LEFT" relativePoint="RIGHT" relativeTo="$(parent)Leader" offsetX="5"/>
-                    <Dimensions x="225" y="30"/>
+                    </Controls>
+                </Control>
+                
+                <Label name="$(parent)CharacterName" inherits="ZO_GroupListRowTooltipIfTruncatedLabel">
+                    <Dimensions x="ZO_KEYBOARD_GROUP_LIST_NAME_WIDTH" />
+                    <Anchor point="LEFT" relativeTo="$(parent)Leader" relativePoint="RIGHT" />
                 </Label>
-                <Label name="$(parent)Zone" inherits="ZO_GroupListRowLabel">
-                    <Anchor point="LEFT" relativePoint="RIGHT" relativeTo="$(parent)CharacterName" offsetX="5"/>
-                    <Dimensions x="230" y="20"/>
+                
+                <Label name="$(parent)Zone" inherits="ZO_GroupListRowTooltipIfTruncatedLabel">
+                    <Dimensions x="ZO_KEYBOARD_GROUP_LIST_ZONE_WIDTH" />
+                    <Anchor point="LEFT" relativeTo="$(parent)CharacterName" relativePoint="RIGHT" offsetX="ZO_KEYBOARD_GROUP_LIST_PADDING_X"/>
                 </Label>
-                <Texture name="$(parent)ClassIcon" mouseEnabled="true" layer="OVERLAY">
-                    <Anchor point="LEFT" relativePoint="RIGHT" relativeTo="$(parent)Zone" offsetX="5"/>
+                
+                <Control name="$(parent)Class">
+                    <Dimensions x="ZO_KEYBOARD_GROUP_LIST_CLASS_WIDTH" />
+                    <Anchor point="LEFT" relativeTo="$(parent)Zone" relativePoint="RIGHT" offsetX="ZO_KEYBOARD_GROUP_LIST_PADDING_X"/>
+                    <Controls>
+                        <Texture name="$(parent)Icon" mouseEnabled="true" layer="OVERLAY">
                             <Dimensions x="32" y="32"/>
+                            <Anchor point="CENTER" />
                             <OnMouseEnter>
-                        ZO_GroupListRowClass_OnMouseEnter(self)
+                                ZO_GroupListRowClass_OnMouseEnter(self:GetParent())
                             </OnMouseEnter>
                             <OnMouseExit>
-                        ZO_GroupListRowClass_OnMouseExit(self)
+                                ZO_GroupListRowClass_OnMouseExit(self:GetParent())
                             </OnMouseExit>
                         </Texture>
+                    </Controls>
+                </Control>
+
+                <Label name="$(parent)Level" inherits="ZO_GroupListRowLabel" horizontalAlignment="CENTER">
+                    <Dimensions x="ZO_KEYBOARD_GROUP_LIST_LEVEL_WIDTH" />
+                    <Anchor point="LEFT" relativeTo="$(parent)Class" relativePoint="RIGHT" offsetX="ZO_KEYBOARD_GROUP_LIST_PADDING_X"/>
+                </Label>
+
                 <Texture name="$(parent)Veteran" mouseEnabled="true" layer="OVERLAY">
-                    <Anchor point="LEFT" relativePoint="RIGHT" relativeTo="$(parent)ClassIcon" offsetX="62" />
                     <Dimensions x="32" y="32"/>
+                    <Anchor point="RIGHT" relativeTo="$(parent)Level" relativePoint="CENTER" offsetX="-7" />
                     <OnMouseEnter>
                         ZO_GroupListRowVeteran_OnMouseEnter(self)
                     </OnMouseEnter>
@@ -73,69 +115,95 @@
                         ZO_GroupListRowVeteran_OnMouseExit(self)
                     </OnMouseExit>
                 </Texture>
-                <Label name="$(parent)Level" inherits="ZO_GroupListRowLabel" horizontalAlignment="CENTER">
-                    <Anchor point="LEFT" relativePoint="RIGHT" relativeTo="$(parent)ClassIcon" offsetX="62"/>
-                    <Dimensions x="75" y="20"/>
-                </Label>
-                <Texture name="$(parent)RoleDPS" inherits="ZO_GroupListRole" textureFile="EsoUI/Art/LFG/LFG_dps_down.dds" mouseEnabled="true" layer="OVERLAY">
-                    <Anchor point="RIGHT" offsetX="-7"/>
-                    <Dimensions x="32" y="32"/>
+
+                <Control name="$(parent)Role">
+                    <Dimensions x="ZO_KEYBOARD_GROUP_LIST_ROLES_WIDTH" />
+                    <Anchor point="LEFT" relativeTo="$(parent)Level" relativePoint="RIGHT" offsetX="ZO_KEYBOARD_GROUP_LIST_PADDING_X"/>
+                    <Controls>
+                        <Texture name="$(parent)Heal" inherits="ZO_GroupListRole" textureFile="EsoUI/Art/LFG/LFG_healer_down.dds">
+                            <Anchor point="CENTER" />
                             <OnInitialized>
-                        self.role = LFG_ROLE_DPS
+                                self.role = LFG_ROLE_HEAL
+                                self.row = self:GetParent():GetParent()
                             </OnInitialized>
                         </Texture>
-                <Texture name="$(parent)RoleHeal" inherits="ZO_GroupListRole" textureFile="EsoUI/Art/LFG/LFG_healer_down.dds" mouseEnabled="true" layer="OVERLAY">
-                    <Anchor point="RIGHT" relativePoint="LEFT" relativeTo="$(parent)RoleDPS" offsetX="-7"/>
-                    <Dimensions x="32" y="32"/>
+                        
+                        <Texture name="$(parent)DPS" inherits="ZO_GroupListRole" textureFile="EsoUI/Art/LFG/LFG_dps_down.dds">
+                            <Anchor point="LEFT" relativeTo="$(parent)Heal" relativePoint="RIGHT" />
                             <OnInitialized>
-                        self.role = LFG_ROLE_HEAL
+                                self.role = LFG_ROLE_DPS
+                                self.row = self:GetParent():GetParent()
                             </OnInitialized>
                         </Texture>
-                <Texture name="$(parent)RoleTank" inherits="ZO_GroupListRole" textureFile="EsoUI/Art/LFG/LFG_tank_down.dds" mouseEnabled="true" layer="OVERLAY">
-                    <Anchor point="RIGHT" relativePoint="LEFT" relativeTo="$(parent)RoleHeal" offsetX="-7"/>
-                    <Dimensions x="32" y="32"/>
+                        
+                        <Texture name="$(parent)Tank" inherits="ZO_GroupListRole" textureFile="EsoUI/Art/LFG/LFG_tank_down.dds">
+                            <Anchor point="RIGHT" relativeTo="$(parent)Heal" relativePoint="LEFT" />
                             <OnInitialized>
                                 self.role = LFG_ROLE_TANK
+                                self.row = self:GetParent():GetParent()
                             </OnInitialized>
                         </Texture>
                     </Controls>
                 </Control>
+            </Controls>
+        </Control>
 
-        <Label name="ZO_GroupHeader" virtual="true" font="ZoFontGameLargeBold" color="INTERFACE_COLOR_TYPE_TEXT_COLORS:INTERFACE_TEXT_COLOR_NORMAL" modifyTextType="UPPERCASE" verticalAlignment="CENTER">
+        <Label name="ZO_GroupHeader" virtual="true" font="ZoFontGameLargeBold" wrapMode="ELLIPSIS" color="INTERFACE_COLOR_TYPE_TEXT_COLORS:INTERFACE_TEXT_COLOR_NORMAL" modifyTextType="UPPERCASE" verticalAlignment="CENTER">
             <Dimensions y="32"/>
         </Label>
 
-        <TopLevelControl name="ZO_GroupList" inherits="ZO_RightPanelFootPrint" hidden="true">
+        <Button name="ZO_VeteranDifficultyButton" virtual="true">
+            <Dimensions x="32" y="32"/>
+            <OnMouseEnter>
+                ZO_VeteranDifficultyButton_OnMouseEnter(self)
+            </OnMouseEnter>
+
+            <OnMouseExit>
+                ZO_VeteranDifficultyButton_OnMouseExit(self)
+            </OnMouseExit>
+
+            <OnClicked>
+                ZO_VeteranDifficultyButton_OnClicked(self)
+            </OnClicked>
+        </Button>
+        
+        <TopLevelControl name="ZO_GroupList" inherits="ZO_GroupMenuKeyboard_ContentAnchors" hidden="true">
             <OnInitialized>
                 ZO_GroupList_OnInitialized(self)
             </OnInitialized>
+            
             <Controls>
                 <Control name="$(parent)Headers">
-                    <Anchor point="TOPLEFT" offsetX="30" offsetY="67"/>
-                    <Anchor point="TOPRIGHT" offsetY="67"/>
+                    <Anchor point="TOPLEFT" />
+                    <Anchor point="TOPRIGHT" />
                     <Dimensions y="32"/>
                     <Controls>
                         <Label name="$(parent)CharacterName" inherits="ZO_GroupHeader" text="SI_GROUP_LIST_PANEL_NAME_HEADER">
-                            <Anchor point="LEFT" offsetX="37"/>
+                            <Dimensions x="ZO_KEYBOARD_GROUP_LIST_NAME_WIDTH" />
+                            <Anchor point="LEFT" offsetX="ZO_KEYBOARD_GROUP_LIST_LEADER_WIDTH" />
                         </Label>
                         <Label name="$(parent)Zone" inherits="ZO_GroupHeader" text="SI_SOCIAL_LIST_PANEL_HEADER_ZONE">
-                            <Anchor point="LEFT" offsetX="266" />
+                            <Dimensions x="ZO_KEYBOARD_GROUP_LIST_ZONE_WIDTH" />
+                            <Anchor point="LEFT" relativeTo="$(parent)CharacterName" relativePoint="RIGHT" offsetX="ZO_KEYBOARD_GROUP_LIST_PADDING_X" />
                         </Label>
-                        <Label name="$(parent)Class" inherits="ZO_GroupHeader" text="SI_GROUP_LIST_PANEL_CLASS_HEADER">
-                            <Anchor point="CENTER" relativePoint="LEFT" offsetX="519" />
+                        <Label name="$(parent)Class" inherits="ZO_GroupHeader" text="SI_GROUP_LIST_PANEL_CLASS_HEADER" horizontalAlignment="CENTER">
+                            <Dimensions x="ZO_KEYBOARD_GROUP_LIST_CLASS_WIDTH" />
+                            <Anchor point="LEFT" relativeTo="$(parent)Zone" relativePoint="RIGHT" offsetX="ZO_KEYBOARD_GROUP_LIST_PADDING_X" />
                         </Label>
-                        <Label name="$(parent)Level" inherits="ZO_GroupHeader" text="SI_GROUP_LIST_PANEL_LEVEL_HEADER">
-                            <Anchor point="CENTER" relativePoint="LEFT" offsetX="632" />
+                        <Label name="$(parent)Level" inherits="ZO_GroupHeader" text="SI_GROUP_LIST_PANEL_LEVEL_HEADER" horizontalAlignment="CENTER">
+                            <Dimensions x="ZO_KEYBOARD_GROUP_LIST_LEVEL_WIDTH" />
+                            <Anchor point="LEFT" relativeTo="$(parent)Class" relativePoint="RIGHT" offsetX="ZO_KEYBOARD_GROUP_LIST_PADDING_X" />
                         </Label>
-                        <Label name="$(parent)Role" inherits="ZO_GroupHeader" text="SI_GROUP_LIST_PANEL_ROLES_HEADER">
-                            <Anchor point="CENTER" relativePoint="RIGHT" offsetX="-115" />
+                        <Label name="$(parent)Role" inherits="ZO_GroupHeader" text="SI_GROUP_LIST_PANEL_ROLES_HEADER" horizontalAlignment="CENTER">
+                            <Dimensions x="ZO_KEYBOARD_GROUP_LIST_ROLES_WIDTH" />
+                            <Anchor point="LEFT" relativeTo="$(parent)Level" relativePoint="RIGHT" offsetX="ZO_KEYBOARD_GROUP_LIST_PADDING_X" />
                         </Label>
                     </Controls>
                 </Control>
                 
                 <Control name="$(parent)List" inherits="ZO_ScrollList">
                     <Anchor point="TOPLEFT" relativeTo="$(parent)Headers" relativePoint="BOTTOMLEFT" offsetY="3"/>
-                    <Anchor point="BOTTOMRIGHT" offsetX="-35" offsetY="-32"/>
+                    <Anchor point="BOTTOMRIGHT" />
                 </Control>
 
                 <Control name="$(parent)NoGroupRow" hidden="true">
@@ -150,6 +218,66 @@
                         </Label>
                     </Controls>
                 </Control>
+
+                <Control name="$(parent)VeteranDifficultySettings" resizeToFitDescendents="true">
+                    <Anchor point="BOTTOM" relativePoint="TOP" offsetY="-10" />
+                    
+                    <OnInitialized>
+                        ZO_VeteranDifficultySettings_OnInitialized(self)
+                    </OnInitialized>
+
+                    <Controls>
+                        <Texture name="$(parent)Help" textureFile="EsoUI/Art/Miscellaneous/help_icon.dds" mouseEnabled="true" layer="OVERLAY">
+                            <Anchor point="TOPLEFT"/>
+                            <Dimensions x="32" y="32"/>
+                            <OnMouseEnter>
+                                ZO_VeteranDifficultyHelp_OnMouseEnter(self)
+                            </OnMouseEnter>
+
+                            <OnMouseExit>
+                                ZO_VeteranDifficultyHelp_OnMouseExit(self)
+                            </OnMouseExit>
+                        </Texture>
+
+                        <Label name="$(parent)Text" font="ZoFontGameLargeBold" color="INTERFACE_COLOR_TYPE_TEXT_COLORS:INTERFACE_TEXT_COLOR_NORMAL" text="SI_DUNGEON_DIFFICULTY_HEADER">
+                            <Anchor point="LEFT" relativeTo="$(parent)Help" relativePoint="RIGHT" offsetX="5"/>
+                        </Label>
+
+                        <Button name="$(parent)NormalDifficulty" inherits="ZO_VeteranDifficultyButton">
+                            <Anchor point="TOP" relativeTo="$(parent)Text" relativePoint="BOTTOM" offsetX="-16" offsetY="-2" />
+
+                            <Textures
+                                normal="EsoUI/Art/LFG/LFG_normalDungeon_up.dds"
+                                pressed="EsoUI/Art/LFG/LFG_normalDungeon_down.dds"
+                                mouseOver="EsoUI/Art/LFG/LFG_normalDungeon_over.dds"
+                                disabled="EsoUI/Art/LFG/LFG_normalDungeon_disabled.dds"
+                                disabledPressed="EsoUI/Art/LFG/LFG_normalDungeon_down_disabled.dds"
+                            />
+
+                            <OnInitialized>
+                                self.dungeonDifficulty = DUNGEON_DIFFICULTY_NORMAL
+                            </OnInitialized>
+                        </Button>
+                        <Button name="$(parent)VeteranDifficulty" inherits="ZO_VeteranDifficultyButton">
+                            <Anchor point="TOP" relativeTo="$(parent)Text" relativePoint="BOTTOM" offsetX="16" offsetY="-2" />
+
+                            <Textures
+                                normal="EsoUI/Art/LFG/LFG_veteranDungeon_up.dds"
+                                pressed="EsoUI/Art/LFG/LFG_veteranDungeon_down.dds"
+                                mouseOver="EsoUI/Art/LFG/LFG_veteranDungeon_over.dds"
+                                disabled="EsoUI/Art/LFG/LFG_veteranDungeon_disabled.dds"
+                                disabledPressed="EsoUI/Art/LFG/LFG_veteranDungeon_down_disabled.dds"
+                            />
+
+                            <OnInitialized>
+                                self.dungeonDifficulty = DUNGEON_DIFFICULTY_VETERAN
+                            </OnInitialized>
+                        </Button>
+                        <Label name="$(parent)DifficultyLabel" font="ZoFontGameLargeBold">
+                            <Anchor point="TOP" relativeTo="$(parent)Text" relativePoint="BOTTOM" offsetY="2" />
+                        </Label>
+                    </Controls>
+                </Control>
             </Controls>
         </TopLevelControl>
     </Controls>