Quantcast

5.4.1899

Steven Jackson [01-17-15 - 06:55]
5.4.1899
Filename
Interface/AddOns/SVUI/Bindings.xml
Interface/AddOns/SVUI/assets/artwork/Quest/QUEST-BORDER.blp
Interface/AddOns/SVUI/assets/artwork/Template/DEFAULT2.blp
Interface/AddOns/SVUI/assets/artwork/Template/HEAVY.blp
Interface/AddOns/SVUI/data/defaults.lua
Interface/AddOns/SVUI/framework/api/api.xml
Interface/AddOns/SVUI/framework/api/api_fonts.xml
Interface/AddOns/SVUI/framework/api/api_general.lua
Interface/AddOns/SVUI/framework/api/api_style.lua
Interface/AddOns/SVUI/framework/api/api_templates.xml
Interface/AddOns/SVUI/framework/docks/dock_core.lua
Interface/AddOns/SVUI/framework/docks/dock_stats.lua
Interface/AddOns/SVUI/framework/framework.lua
Interface/AddOns/SVUI/framework/movers/mover_dragger.lua
Interface/AddOns/SVUI/framework/movers/mover_mentalo.lua
Interface/AddOns/SVUI/framework/widgets/widget_dropdown.lua
Interface/AddOns/SVUI/framework/widgets/widget_superbutton.lua
Interface/AddOns/SVUI/framework/widgets/widgets.xml
Interface/AddOns/SVUI/packages/aura/SVAura.lua
Interface/AddOns/SVUI/packages/bag/SVBag.lua
Interface/AddOns/SVUI/packages/bag/SVBag.xml
Interface/AddOns/SVUI/packages/bag/components/breakstuff.lua
Interface/AddOns/SVUI/packages/bag/components/organization.lua
Interface/AddOns/SVUI/packages/bar/SVBar.lua
Interface/AddOns/SVUI/packages/bar/SVBar.xml
Interface/AddOns/SVUI/packages/bar/components/extra.lua
Interface/AddOns/SVUI/packages/bar/components/keybind.lua
Interface/AddOns/SVUI/packages/bar/components/micro.lua
Interface/AddOns/SVUI/packages/bar/components/zone.lua
Interface/AddOns/SVUI/packages/chat/SVChat.lua
Interface/AddOns/SVUI/packages/map/SVMap.lua
Interface/AddOns/SVUI/packages/override/SVOverride.lua
Interface/AddOns/SVUI/packages/override/components/loot.lua
Interface/AddOns/SVUI/packages/override/components/mirror.lua
Interface/AddOns/SVUI/packages/plate/SVPlate.lua
Interface/AddOns/SVUI/packages/quest/SVQuest.lua
Interface/AddOns/SVUI/packages/quest/SVQuest.xml
Interface/AddOns/SVUI/packages/quest/components/achievements.lua
Interface/AddOns/SVUI/packages/quest/components/active.lua
Interface/AddOns/SVUI/packages/quest/components/button.lua
Interface/AddOns/SVUI/packages/quest/components/popups.lua
Interface/AddOns/SVUI/packages/quest/components/quests.lua
Interface/AddOns/SVUI/packages/quest/components/scenario.lua
Interface/AddOns/SVUI/packages/tip/SVTip.lua
Interface/AddOns/SVUI/packages/tool/buttons/raidleader.lua
Interface/AddOns/SVUI/packages/unit/elements/auras.lua
Interface/AddOns/SVUI/packages/unit/elements/castbar.lua
Interface/AddOns/SVUI/packages/unit/elements/essentials.lua
Interface/AddOns/SVUI/packages/unit/elements/misc.lua
Interface/AddOns/SVUI/packages/unit/frames.lua
Interface/AddOns/SVUI/packages/unit/groups.lua
Interface/AddOns/SVUI/packages/unit/resources/druid.lua
Interface/AddOns/SVUI/packages/unit/resources/monk.lua
Interface/AddOns/SVUI/scripts/misc.lua
Interface/AddOns/SVUI/scripts/mounts.lua
Interface/AddOns/SVUI/scripts/sounds.lua
Interface/AddOns/SVUI/scripts/spellbind.lua
Interface/AddOns/SVUI/setup/installer.lua
Interface/AddOns/SVUI/system/_load.xml
Interface/AddOns/SVUI/system/alerts.lua
Interface/AddOns/SVUI/system/core.lua
Interface/AddOns/SVUI/system/credits.lua
Interface/AddOns/SVUI/system/media.lua
Interface/AddOns/SVUI/system/screen.lua
Interface/AddOns/SVUI/system/slash.lua
Interface/AddOns/SVUI/system/utilities.lua
Interface/AddOns/SVUI/system/visibility.lua
Interface/AddOns/SVUI_ChatOMatic/components/answering_service.lua
Interface/AddOns/SVUI_ConfigOMatic/SVUI_ConfigOMatic.lua
Interface/AddOns/SVUI_ConfigOMatic/components/_load.xml
Interface/AddOns/SVUI_ConfigOMatic/components/bag.lua
Interface/AddOns/SVUI_ConfigOMatic/components/dock.lua
Interface/AddOns/SVUI_ConfigOMatic/components/fonts.lua
Interface/AddOns/SVUI_ConfigOMatic/components/map.lua
Interface/AddOns/SVUI_ConfigOMatic/components/plate.lua
Interface/AddOns/SVUI_ConfigOMatic/components/screen.lua
Interface/AddOns/SVUI_ConfigOMatic/components/units/target.lua
Interface/AddOns/SVUI_CraftOMatic/SVUI_CraftOMatic.lua
Interface/AddOns/SVUI_CraftOMatic/components/archaeology.lua
Interface/AddOns/SVUI_CraftOMatic/components/farming.lua
Interface/AddOns/SVUI_FightOMatic/SVUI_FightOMatic.lua
Interface/AddOns/SVUI_StyleOMatic/SVUI_StyleOMatic.lua
Interface/AddOns/SVUI_StyleOMatic/components/addons/Ace3.lua
Interface/AddOns/SVUI_StyleOMatic/components/addons/AdiBags.lua
Interface/AddOns/SVUI_StyleOMatic/components/addons/Altoholic.lua
Interface/AddOns/SVUI_StyleOMatic/components/addons/AtlasLoot.lua
Interface/AddOns/SVUI_StyleOMatic/components/addons/AuctionLite.lua
Interface/AddOns/SVUI_StyleOMatic/components/addons/BigWigs.lua
Interface/AddOns/SVUI_StyleOMatic/components/addons/Bugsack.lua
Interface/AddOns/SVUI_StyleOMatic/components/addons/Cooline.lua
Interface/AddOns/SVUI_StyleOMatic/components/addons/DBM.lua
Interface/AddOns/SVUI_StyleOMatic/components/addons/DXE.lua
Interface/AddOns/SVUI_StyleOMatic/components/addons/MasterPlan.lua
Interface/AddOns/SVUI_StyleOMatic/components/addons/Omen.lua
Interface/AddOns/SVUI_StyleOMatic/components/addons/Recount.lua
Interface/AddOns/SVUI_StyleOMatic/components/addons/SexyCooldown.lua
Interface/AddOns/SVUI_StyleOMatic/components/addons/Skada.lua
Interface/AddOns/SVUI_StyleOMatic/components/addons/TradeSkillDW.lua
Interface/AddOns/SVUI_StyleOMatic/components/addons/VEM.lua
Interface/AddOns/SVUI_StyleOMatic/components/addons/Zygor.lua
Interface/AddOns/SVUI_StyleOMatic/components/addons/alDamageMeter.lua
Interface/AddOns/SVUI_StyleOMatic/components/atlas/garrison.lua
Interface/AddOns/SVUI_StyleOMatic/components/blizzard/achievement.lua
Interface/AddOns/SVUI_StyleOMatic/components/blizzard/archeology.lua
Interface/AddOns/SVUI_StyleOMatic/components/blizzard/auctionhouse.lua
Interface/AddOns/SVUI_StyleOMatic/components/blizzard/barbershop.lua
Interface/AddOns/SVUI_StyleOMatic/components/blizzard/battlefield.lua
Interface/AddOns/SVUI_StyleOMatic/components/blizzard/blackmarket.lua
Interface/AddOns/SVUI_StyleOMatic/components/blizzard/calendar.lua
Interface/AddOns/SVUI_StyleOMatic/components/blizzard/challenges.lua
Interface/AddOns/SVUI_StyleOMatic/components/blizzard/character.lua
Interface/AddOns/SVUI_StyleOMatic/components/blizzard/chat.lua
Interface/AddOns/SVUI_StyleOMatic/components/blizzard/dressup (Failbox's conflicted copy 2014-12-26).lua
Interface/AddOns/SVUI_StyleOMatic/components/blizzard/dressup.lua
Interface/AddOns/SVUI_StyleOMatic/components/blizzard/encounterjournal.lua
Interface/AddOns/SVUI_StyleOMatic/components/blizzard/friends.lua
Interface/AddOns/SVUI_StyleOMatic/components/blizzard/garrison.lua
Interface/AddOns/SVUI_StyleOMatic/components/blizzard/gossip.lua
Interface/AddOns/SVUI_StyleOMatic/components/blizzard/guild.lua
Interface/AddOns/SVUI_StyleOMatic/components/blizzard/help.lua
Interface/AddOns/SVUI_StyleOMatic/components/blizzard/inspect.lua
Interface/AddOns/SVUI_StyleOMatic/components/blizzard/itemsocketing.lua
Interface/AddOns/SVUI_StyleOMatic/components/blizzard/itemupgrade.lua
Interface/AddOns/SVUI_StyleOMatic/components/blizzard/keybinding.lua
Interface/AddOns/SVUI_StyleOMatic/components/blizzard/lfd.lua
Interface/AddOns/SVUI_StyleOMatic/components/blizzard/loothistory.lua
Interface/AddOns/SVUI_StyleOMatic/components/blizzard/lossofcontrol.lua
Interface/AddOns/SVUI_StyleOMatic/components/blizzard/macro.lua
Interface/AddOns/SVUI_StyleOMatic/components/blizzard/mailbox.lua
Interface/AddOns/SVUI_StyleOMatic/components/blizzard/merchant.lua
Interface/AddOns/SVUI_StyleOMatic/components/blizzard/petbattle.lua
Interface/AddOns/SVUI_StyleOMatic/components/blizzard/petjournal.lua
Interface/AddOns/SVUI_StyleOMatic/components/blizzard/petstable.lua
Interface/AddOns/SVUI_StyleOMatic/components/blizzard/pvp.lua
Interface/AddOns/SVUI_StyleOMatic/components/blizzard/quest.lua
Interface/AddOns/SVUI_StyleOMatic/components/blizzard/raid.lua
Interface/AddOns/SVUI_StyleOMatic/components/blizzard/reforging.lua
Interface/AddOns/SVUI_StyleOMatic/components/blizzard/spellbook.lua
Interface/AddOns/SVUI_StyleOMatic/components/blizzard/system.lua
Interface/AddOns/SVUI_StyleOMatic/components/blizzard/tabard.lua
Interface/AddOns/SVUI_StyleOMatic/components/blizzard/talents.lua
Interface/AddOns/SVUI_StyleOMatic/components/blizzard/taxi.lua
Interface/AddOns/SVUI_StyleOMatic/components/blizzard/timemanager.lua
Interface/AddOns/SVUI_StyleOMatic/components/blizzard/trade.lua
Interface/AddOns/SVUI_StyleOMatic/components/blizzard/tradeskill (Failbox's conflicted copy 2014-12-26).lua
Interface/AddOns/SVUI_StyleOMatic/components/blizzard/tradeskill.lua
Interface/AddOns/SVUI_StyleOMatic/components/blizzard/trainer.lua
Interface/AddOns/SVUI_StyleOMatic/components/blizzard/transmog.lua
Interface/AddOns/SVUI_StyleOMatic/components/blizzard/voidstorage.lua
Interface/AddOns/SVUI_StyleOMatic/components/blizzard/worldmap.lua
Interface/AddOns/SVUI_StyleOMatic/components/blizzard/worldstate.lua
Interface/AddOns/SVUI_StyleOMatic/components/style_methods.lua
Interface/AddOns/SVUI_TrackOMatic/SVUI_TrackOMatic.lua
diff --git a/Interface/AddOns/SVUI/Bindings.xml b/Interface/AddOns/SVUI/Bindings.xml
index 23cbf0d..f498cea 100644
--- a/Interface/AddOns/SVUI/Bindings.xml
+++ b/Interface/AddOns/SVUI/Bindings.xml
@@ -2,13 +2,18 @@
   <Binding name="SVUI_MARKERS" description="Raid Marker" category="ADDONS" header="SVUI" runOnUp="true">
     RaidMark_HotkeyPressed(keystate)
   </Binding>
-  <Binding name="SVUI_DOCKS" description="Toggle Docks" category="ADDONS" runOnUp="false">
-    HideSuperDocks()
+  <Binding name="SVUI_DOCKS" description="Toggle All Docks" category="ADDONS" runOnUp="false">
+    ToggleSuperDocks()
+  </Binding>
+  <Binding name="SVUI_DOCKS_LEFT" description="Toggle Left Dock" category="ADDONS" runOnUp="false">
+    ToggleSuperDockLeft()
+  </Binding>
+  <Binding name="SVUI_DOCKS_RIGHT" description="Toggle Right Dock" category="ADDONS" runOnUp="false">
+    ToggleSuperDockRight()
   </Binding>
   <Binding name="SVUI_RIDE" description="Lets Ride" category="ADDONS" runOnUp="false">
     SVUILetsRide()
   </Binding>
-  <Binding name="SVUI_QUESTITEM" description="Quest Item Button" category="ADDONS" runOnUp="false" />
   <Binding name="SVUI_DRAENORZONE" description="Draenor Zone Ability Button" category="ADDONS" runOnUp="false" />
   <ModifiedClick action="VENDORMARKITEM" default="ALT-BUTTON2"/>
 </Bindings>
\ No newline at end of file
diff --git a/Interface/AddOns/SVUI/assets/artwork/Quest/QUEST-BORDER.blp b/Interface/AddOns/SVUI/assets/artwork/Quest/QUEST-BORDER.blp
new file mode 100644
index 0000000..d8172f1
Binary files /dev/null and b/Interface/AddOns/SVUI/assets/artwork/Quest/QUEST-BORDER.blp differ
diff --git a/Interface/AddOns/SVUI/assets/artwork/Template/DEFAULT2.blp b/Interface/AddOns/SVUI/assets/artwork/Template/DEFAULT2.blp
deleted file mode 100644
index a0c87d6..0000000
Binary files a/Interface/AddOns/SVUI/assets/artwork/Template/DEFAULT2.blp and /dev/null differ
diff --git a/Interface/AddOns/SVUI/assets/artwork/Template/HEAVY.blp b/Interface/AddOns/SVUI/assets/artwork/Template/HEAVY.blp
new file mode 100644
index 0000000..9b1b0d3
Binary files /dev/null and b/Interface/AddOns/SVUI/assets/artwork/Template/HEAVY.blp differ
diff --git a/Interface/AddOns/SVUI/data/defaults.lua b/Interface/AddOns/SVUI/data/defaults.lua
index cb3672b..273f131 100644
--- a/Interface/AddOns/SVUI/data/defaults.lua
+++ b/Interface/AddOns/SVUI/data/defaults.lua
@@ -20,7 +20,9 @@ local SV = select(2, ...)
 local type = type;
 local GetSpellInfo = GetSpellInfo;
 local rez = GetCVar("gxResolution");
-local defaultDockWidth = tonumber(rez:match("(%d+)x%d+")) * 0.5;
+local baseHeight = tonumber(rez:match("%d+x(%d+)"))
+local baseWidth = tonumber(rez:match("(%d+)x%d+"))
+local defaultDockWidth = baseWidth * 0.5;
 local defaultCenterWidth = min(defaultDockWidth, 800);

 local function safename(id)
@@ -46,10 +48,17 @@ SV.defaults["LAYOUT"] = {
     aurastyle = "default"
 }

+SV.defaults["screen"] = {
+	["autoScale"] = true,
+    ["multiMonitor"] = false,
+    ["advanced"] = false,
+    ["scaleAdjust"] = 0.64,
+    ["forcedWidth"] = baseWidth,
+    ["forcedHeight"] = baseHeight,
+}
+
 SV.defaults["general"] = {
     ["cooldown"] = true,
-    ["autoScale"] = true,
-    ["multiMonitor"] = false,
     ["saveDraggable"] = false,
     ["taintLog"] = false,
     ["stickyFrames"] = true,
@@ -71,7 +80,6 @@ SV.defaults["general"] = {
     ["stupidhat"] = true,
     ["drunk"] = true,
     ["graphSize"] = 64,
-    ["scaleAdjust"] = 0.64,
 }

 SV.defaults["totems"] = {
@@ -82,94 +90,6 @@ SV.defaults["totems"] = {
     ["spacing"] = 4
 }

-SV.defaults["font"] = {
-	["default"] 		= {file = "SVUI Default Font", 	size = 12, 	outline = "OUTLINE"},
-    ["dialog"] 			= {file = DIALOGUE_FONT, 		size = 10, 	outline = "OUTLINE"},
-    ["title"] 			= {file = DIALOGUE_FONT, 		size = 16, 	outline = "OUTLINE"},
-    ["number"] 			= {file = "SVUI Number Font", 	size = 11, 	outline = "OUTLINE"},
-    ["number_big"]		= {file = "SVUI Number Font", 	size = 18, 	outline = "OUTLINE"},
-    ["header"]			= {file = "SVUI Number Font", 	size = 18, 	outline = "OUTLINE"},
-    ["combat"] 			= {file = "SVUI Combat Font", 	size = 32, 	outline = "OUTLINE"},
-    ["alert"] 			= {file = "SVUI Alert Font", 	size = 20, 	outline = "OUTLINE"},
-    ["zone"] 			= {file = "SVUI Zone Font", 	size = 16, 	outline = "OUTLINE"},
-    ["caps"] 			= {file = "SVUI Caps Font", 	size = 12, 	outline = "OUTLINE"},
-    ["aura"] 			= {file = "SVUI Number Font", 	size = 10, 	outline = "OUTLINE"},
-    ["data"] 			= {file = "SVUI Number Font", 	size = 11, 	outline = "OUTLINE"},
-    ["narrator"]		= {file = "SVUI Narrator Font",	size = 12, 	outline = "OUTLINE"},
-    ["pixel"] 			= {file = "SVUI Pixel Font", 	size = 8, 	outline = "MONOCHROMEOUTLINE"},
-    ["chatdialog"] 		= {file = "SVUI Default Font", 	size = 12, 	outline = "OUTLINE"},
-	["chattab"]			= {file = "SVUI Caps Font", 	size = 12, 	outline = "OUTLINE"},
-    ["lootdialog"] 		= {file = "SVUI Default Font", 	size = 14, 	outline = "OUTLINE"},
-    ["lootnumber"] 		= {file = "SVUI Number Font", 	size = 11, 	outline = "OUTLINE"},
-    ["rolldialog"] 		= {file = "SVUI Default Font", 	size = 14, 	outline = "OUTLINE"},
-    ["rollnumber"] 		= {file = "SVUI Number Font", 	size = 11, 	outline = "OUTLINE"},
-    ["bagdialog"] 		= {file = "SVUI Default Font", 	size = 11, 	outline = "OUTLINE"},
-    ["bagnumber"] 		= {file = "SVUI Number Font", 	size = 11, 	outline = "OUTLINE"},
-    ["tipdialog"] 		= {file = "SVUI Default Font", 	size = 12, 	outline = "NONE"},
-    ["tipheader"] 		= {file = "SVUI Default Font", 	size = 14, 	outline = "NONE"},
-    ["questdialog"] 	= {file = "SVUI Default Font", 	size = 12, 	outline = "OUTLINE"},
-    ["questheader"] 	= {file = "SVUI Caps Font", 	size = 16, 	outline = "OUTLINE"},
-    ["questnumber"] 	= {file = "SVUI Number Font", 	size = 11, 	outline = "OUTLINE"},
-    ["platename"] 		= {file = "SVUI Caps Font", 	size = 9, 	outline = "OUTLINE"},
-    ["platenumber"] 	= {file = "SVUI Caps Font", 	size = 9, 	outline = "OUTLINE"},
-    ["plateaura"] 		= {file = "SVUI Caps Font", 	size = 9, 	outline = "OUTLINE"},
-    ["unitprimary"] 	= {file = "SVUI Number Font", 	size = 11, 	outline = "OUTLINE"},
-    ["unitsecondary"] 	= {file = "SVUI Number Font", 	size = 11, 	outline = "OUTLINE"},
-    ["unitaurabar"] 	= {file = "SVUI Alert Font", 	size = 10, 	outline = "OUTLINE"},
-    ["unitauramedium"] 	= {file = "SVUI Default Font", 	size = 10, 	outline = "OUTLINE"},
-    ["unitauralarge"] 	= {file = "SVUI Number Font", 	size = 10, 	outline = "OUTLINE"},
-    ["unitaurasmall"] 	= {file = "SVUI Pixel Font", 	size = 8, 	outline = "MONOCHROMEOUTLINE"},
-}
-
-SV.defaults["media"] = {
-    ["textures"] = {
-        ["pattern"]      = "SVUI Backdrop 1",
-        ["comic"]        = "SVUI Comic 1",
-        ["unitlarge"]    = "SVUI Unit BG 3",
-        ["unitsmall"]    = "SVUI Small BG 3"
-    },
-    ["colors"] = {
-        ["default"]      = {0.2, 0.2, 0.2, 1},
-        ["special"]      = {0.37, 0.32, 0.29, 1},
-        ["specialdark"]  = {0.37, 0.32, 0.29, 1},
-    },
-    ["unitframes"] = {
-        ["health"]       = {0.3, 0.5, 0.3},
-        ["power"]        = {
-            ["MANA"]         = {0.41, 0.85, 1},
-            ["RAGE"]         = {1, 0.31, 0.31},
-            ["FOCUS"]        = {1, 0.63, 0.27},
-            ["ENERGY"]       = {0.85, 0.83, 0.25},
-            ["RUNES"]        = {0.55, 0.57, 0.61},
-            ["RUNIC_POWER"] = {0, 0.82, 1},
-            ["FUEL"]         = {0, 0.75, 0.75}
-        },
-        ["reaction"]     = {
-            [1] = {0.92, 0.15, 0.15},
-            [2] = {0.92, 0.15, 0.15},
-            [3] = {0.92, 0.15, 0.15},
-            [4] = {0.85, 0.85, 0.13},
-            [5] = {0.19, 0.85, 0.13},
-            [6] = {0.19, 0.85, 0.13},
-            [7] = {0.19, 0.85, 0.13},
-            [8] = {0.19, 0.85, 0.13},
-        },
-        ["tapped"]           = {0.55, 0.57, 0.61},
-        ["disconnected"]     = {0.84, 0.75, 0.65},
-        ["casting"]          = {0, 0.92, 1},
-        ["spark"]            = {0, 0.42, 1},
-        ["interrupt"]        = {0.78, 0, 1},
-        ["shield_bars"]      = {0.56, 0.4, 0.62},
-        ["buff_bars"]        = {0.31, 0.31, 0.31},
-        ["debuff_bars"]      = {0.8, 0.1, 0.1},
-        ["predict"]          = {
-            ["personal"]         = {0, 1, 0.5, 0.25},
-            ["others"]           = {0, 1, 0, 0.25},
-            ["absorbs"]          = {1, 1, 0, 0.25}
-        }
-    }
-};
-
 SV.defaults["Dock"] = {
 	["enable"] = true,
 	["dockLeftWidth"] = 412,
@@ -188,23 +108,27 @@ SV.defaults["Dock"] = {
 	["dataFontSize"] = 11,
 	["dataFontOutline"] = "OUTLINE",
 	["dataBackdrop"] = false,
-	["dataHolders"] = {
-		["SVUI_DockBottomCenter"] = {
+	["statSlots"] = {
+		["SVUI_StatDockBottomLeft"] = {
 			[1] = "Experience Bar",
 			[2] = "Time",
 			[3] = "System",
-			[4] = "Gold",
-			[5] = "Durability",
-			[6] = "Reputation Bar",
+		},
+		["SVUI_StatDockBottomRight"] = {
+			[1] = "Gold",
+			[2] = "Durability",
+			[3] = "Reputation Bar",
 		},
-		["SVUI_DockTopCenter"] = {
+		["SVUI_StatDockTopLeft"] = {
 			[1] = "None",
 			[2] = "None",
 			[3] = "None",
-			[4] = "None",
-			[5] = "None",
-			[6] = "None",
 		},
+		["SVUI_StatDockTopRight"] = {
+			[1] = "None",
+			[2] = "None",
+			[3] = "None",
+		},
 	},
 	["shortGold"] = true,
 	["localtime"] = true,
diff --git a/Interface/AddOns/SVUI/framework/api/api.xml b/Interface/AddOns/SVUI/framework/api/api.xml
index c12f99c..7e3228e 100644
--- a/Interface/AddOns/SVUI/framework/api/api.xml
+++ b/Interface/AddOns/SVUI/framework/api/api.xml
@@ -1,6 +1,614 @@
 <Ui xmlns="http://www.blizzard.com/wow/ui/">
+	<Frame name="SVUI_ShadowTemplate" virtual="true">
+        <Attributes>
+            <Attribute name="shadowAlpha" type="number" value="0.5" />
+        </Attributes>
+        <Backdrop edgeFile="Interface\AddOns\SVUI\assets\artwork\Template\GLOW">
+            <EdgeSize val="3" />
+            <BackgroundInsets left="0" right="0" top="0" bottom="0" />
+            <Color r="0" g="0" b="0" a="0" />
+            <BorderColor r="0" g="0" b="0" a="0.5" />
+        </Backdrop>
+    </Frame>
+
+	<Frame name="SVUI_CoreStyle_Default" virtual="true">
+        <Attributes>
+            <Attribute name="panelID" type="string" value="default" />
+            <Attribute name="panelPadding" type="number" value="1" />
+            <Attribute name="panelColor" type="string" value="default" />
+            <Attribute name="panelGradient" type="string" value="default" />
+            <Attribute name="panelTexUpdate" type="boolean" value="false" />
+            <Attribute name="panelSkipUpdate" type="boolean" value="false" />
+        </Attributes>
+        <Backdrop bgFile="Interface\BUTTONS\WHITE8X8" edgeFile="Interface\BUTTONS\WHITE8X8" tile="false">
+            <EdgeSize val="1" />
+            <TileSize val="0" />
+            <BackgroundInsets left="0" right="0" top="0" bottom="0" />
+            <Color r="0.2" g="0.2" b="0.2" a="1" />
+            <BorderColor r="0" g="0" b="0" a="1" />
+        </Backdrop>
+        <Layers>
+            <Layer level="BACKGROUND" textureSubLevel="1">
+                <Texture parentKey="Skin" nonBlocking="true" file="Interface\AddOns\SVUI\assets\artwork\Template\DEFAULT" setAllPoints="true" />
+                <Color r="0.2" g="0.2" b="0.2" a="1" />
+            </Layer>
+            <Layer level="BORDER">
+                <Texture parentKey="BorderLeft" file="Interface\BUTTONS\WHITE8X8">
+                    <Anchors>
+                        <Anchor point="TOPLEFT" relativePoint="TOPLEFT" />
+                        <Anchor point="BOTTOMLEFT" relativePoint="BOTTOMLEFT" />
+                    </Anchors>
+                    <Size>
+                        <AbsDimension x="1" />
+                    </Size>
+                    <Color r="0" g="0" b="0" a="1" />
+                </Texture>
+                <Texture parentKey="BorderRight" file="Interface\BUTTONS\WHITE8X8">
+                    <Anchors>
+                        <Anchor point="TOPRIGHT" relativePoint="TOPRIGHT" />
+                        <Anchor point="BOTTOMRIGHT" relativePoint="BOTTOMRIGHT" />
+                    </Anchors>
+                    <Size>
+                        <AbsDimension x="1" />
+                    </Size>
+                    <Color r="0" g="0" b="0" a="1" />
+                </Texture>
+                <Texture parentKey="BorderTop" file="Interface\BUTTONS\WHITE8X8">
+                    <Anchors>
+                        <Anchor point="TOPLEFT" relativePoint="TOPLEFT" />
+                        <Anchor point="TOPRIGHT" relativePoint="TOPRIGHT" />
+                    </Anchors>
+                    <Size>
+                        <AbsDimension y="1" />
+                    </Size>
+                    <Color r="0" g="0" b="0" a="1" />
+                </Texture>
+                <Texture parentKey="BorderBottom" file="Interface\BUTTONS\WHITE8X8">
+                    <Anchors>
+                        <Anchor point="BOTTOMLEFT" relativePoint="BOTTOMLEFT" />
+                        <Anchor point="BOTTOMRIGHT" relativePoint="BOTTOMRIGHT" />
+                    </Anchors>
+                    <Size>
+                        <AbsDimension y="1" />
+                    </Size>
+                    <Color r="0" g="0" b="0" a="1" />
+                </Texture>
+            </Layer>
+        </Layers>
+    </Frame>
+
+    <Frame name="SVUI_CoreStyle_Transparent" virtual="true">
+        <Attributes>
+            <Attribute name="panelID" type="string" value="transparent" />
+            <Attribute name="panelPadding" type="number" value="2" />
+            <Attribute name="panelColor" type="string" value="transparent" />
+            <Attribute name="panelGradient" type="boolean" value="false" />
+            <Attribute name="panelTexUpdate" type="boolean" value="false" />
+            <Attribute name="panelSkipUpdate" type="boolean" value="true" />
+        </Attributes>
+        <Backdrop bgFile="Interface\BUTTONS\WHITE8X8" edgeFile="Interface\BUTTONS\WHITE8X8" tile="false">
+            <EdgeSize val="2" />
+            <TileSize val="0" />
+            <BackgroundInsets left="0" right="0" top="0" bottom="0" />
+            <Color r="0" g="0" b="0" a="0.5" />
+            <BorderColor r="0" g="0" b="0" a="1" />
+        </Backdrop>
+        <Layers>
+            <Layer level="BORDER">
+                <Texture parentKey="BorderLeft" file="Interface\BUTTONS\WHITE8X8">
+                    <Anchors>
+                        <Anchor point="TOPLEFT" relativePoint="TOPLEFT" />
+                        <Anchor point="BOTTOMLEFT" relativePoint="BOTTOMLEFT" />
+                    </Anchors>
+                    <Size>
+                        <AbsDimension x="1" />
+                    </Size>
+                    <Color r="0" g="0" b="0" a="1" />
+                </Texture>
+                <Texture parentKey="BorderRight" file="Interface\BUTTONS\WHITE8X8">
+                    <Anchors>
+                        <Anchor point="TOPRIGHT" relativePoint="TOPRIGHT" />
+                        <Anchor point="BOTTOMRIGHT" relativePoint="BOTTOMRIGHT" />
+                    </Anchors>
+                    <Size>
+                        <AbsDimension x="1" />
+                    </Size>
+                    <Color r="0" g="0" b="0" a="1" />
+                </Texture>
+                <Texture parentKey="BorderTop" file="Interface\BUTTONS\WHITE8X8">
+                    <Anchors>
+                        <Anchor point="TOPLEFT" relativePoint="TOPLEFT" />
+                        <Anchor point="TOPRIGHT" relativePoint="TOPRIGHT" />
+                    </Anchors>
+                    <Size>
+                        <AbsDimension y="1" />
+                    </Size>
+                    <Color r="0" g="0" b="0" a="1" />
+                </Texture>
+                <Texture parentKey="BorderBottom" file="Interface\BUTTONS\WHITE8X8">
+                    <Anchors>
+                        <Anchor point="BOTTOMLEFT" relativePoint="BOTTOMLEFT" />
+                        <Anchor point="BOTTOMRIGHT" relativePoint="BOTTOMRIGHT" />
+                    </Anchors>
+                    <Size>
+                        <AbsDimension y="1" />
+                    </Size>
+                    <Color r="0" g="0" b="0" a="1" />
+                </Texture>
+            </Layer>
+        </Layers>
+    </Frame>
+
+    <Frame name="SVUI_CoreStyle_Button" virtual="true">
+        <Attributes>
+            <Attribute name="panelID" type="string" value="button" />
+            <Attribute name="panelPadding" type="number" value="1" />
+            <Attribute name="panelColor" type="string" value="default" />
+            <Attribute name="panelGradient" type="boolean" value="false" />
+            <Attribute name="panelTexUpdate" type="boolean" value="false" />
+            <Attribute name="panelSkipUpdate" type="boolean" value="false" />
+        </Attributes>
+        <Backdrop bgFile="Interface\AddOns\SVUI\assets\artwork\Template\BUTTON" edgeFile="Interface\BUTTONS\WHITE8X8" tile="false">
+            <EdgeSize val="2" />
+            <TileSize val="0" />
+            <BackgroundInsets left="0" right="0" top="0" bottom="0" />
+            <Color r="0.2" g="0.2" b="0.2" a="1" />
+            <BorderColor r="0" g="0" b="0" a="1" />
+        </Backdrop>
+        <Layers>
+            <Layer level="BORDER">
+                <Texture parentKey="BorderLeft" file="Interface\BUTTONS\WHITE8X8">
+                    <Anchors>
+                        <Anchor point="TOPLEFT" relativePoint="TOPLEFT" />
+                        <Anchor point="BOTTOMLEFT" relativePoint="BOTTOMLEFT" />
+                    </Anchors>
+                    <Size>
+                        <AbsDimension x="1" />
+                    </Size>
+                    <Color r="0" g="0" b="0" a="1" />
+                </Texture>
+                <Texture parentKey="BorderRight" file="Interface\BUTTONS\WHITE8X8">
+                    <Anchors>
+                        <Anchor point="TOPRIGHT" relativePoint="TOPRIGHT" />
+                        <Anchor point="BOTTOMRIGHT" relativePoint="BOTTOMRIGHT" />
+                    </Anchors>
+                    <Size>
+                        <AbsDimension x="1" />
+                    </Size>
+                    <Color r="0" g="0" b="0" a="1" />
+                </Texture>
+                <Texture parentKey="BorderTop" file="Interface\BUTTONS\WHITE8X8">
+                    <Anchors>
+                        <Anchor point="TOPLEFT" relativePoint="TOPLEFT" />
+                        <Anchor point="TOPRIGHT" relativePoint="TOPRIGHT" />
+                    </Anchors>
+                    <Size>
+                        <AbsDimension y="1" />
+                    </Size>
+                    <Color r="0" g="0" b="0" a="1" />
+                </Texture>
+                <Texture parentKey="BorderBottom" file="Interface\BUTTONS\WHITE8X8">
+                    <Anchors>
+                        <Anchor point="BOTTOMLEFT" relativePoint="BOTTOMLEFT" />
+                        <Anchor point="BOTTOMRIGHT" relativePoint="BOTTOMRIGHT" />
+                    </Anchors>
+                    <Size>
+                        <AbsDimension y="1" />
+                    </Size>
+                    <Color r="0" g="0" b="0" a="1" />
+                </Texture>
+            </Layer>
+        </Layers>
+        <Frames>
+            <Frame parentKey="Shadow" inherits="SVUI_ShadowTemplate" />
+        </Frames>
+    </Frame>
+
+    <Frame name="SVUI_CoreStyle_Heavy" virtual="true">
+        <Attributes>
+            <Attribute name="panelID" type="string" value="heavy" />
+            <Attribute name="panelPadding" type="number" value="1" />
+            <Attribute name="panelColor" type="string" value="default" />
+            <Attribute name="panelGradient" type="string" value="default" />
+            <Attribute name="panelTexUpdate" type="boolean" value="true" />
+            <Attribute name="panelSkipUpdate" type="boolean" value="false" />
+        </Attributes>
+        <Backdrop bgFile="Interface\BUTTONS\WHITE8X8" edgeFile="Interface\BUTTONS\WHITE8X8" tile="false">
+            <EdgeSize val="1" />
+            <TileSize val="0" />
+            <BackgroundInsets left="0" right="0" top="0" bottom="0" />
+            <Color r="0.2" g="0.2" b="0.2" a="1" />
+            <BorderColor r="0" g="0" b="0" a="1" />
+        </Backdrop>
+        <Layers>
+            <Layer level="BACKGROUND" textureSubLevel="1">
+                <Texture parentKey="Skin" nonBlocking="true" file="Interface\AddOns\SVUI\assets\artwork\Template\HEAVY" setAllPoints="true" />
+                <Color r="0.2" g="0.2" b="0.2" a="1" />
+            </Layer>
+            <Layer level="BORDER">
+                <Texture parentKey="BorderLeft" file="Interface\BUTTONS\WHITE8X8">
+                    <Anchors>
+                        <Anchor point="TOPLEFT" relativePoint="TOPLEFT" />
+                        <Anchor point="BOTTOMLEFT" relativePoint="BOTTOMLEFT" />
+                    </Anchors>
+                    <Size>
+                        <AbsDimension x="1" />
+                    </Size>
+                    <Color r="0" g="0" b="0" a="1" />
+                </Texture>
+                <Texture parentKey="BorderRight" file="Interface\BUTTONS\WHITE8X8">
+                    <Anchors>
+                        <Anchor point="TOPRIGHT" relativePoint="TOPRIGHT" />
+                        <Anchor point="BOTTOMRIGHT" relativePoint="BOTTOMRIGHT" />
+                    </Anchors>
+                    <Size>
+                        <AbsDimension x="1" />
+                    </Size>
+                    <Color r="0" g="0" b="0" a="1" />
+                </Texture>
+                <Texture parentKey="BorderTop" file="Interface\BUTTONS\WHITE8X8">
+                    <Anchors>
+                        <Anchor point="TOPLEFT" relativePoint="TOPLEFT" />
+                        <Anchor point="TOPRIGHT" relativePoint="TOPRIGHT" />
+                    </Anchors>
+                    <Size>
+                        <AbsDimension y="1" />
+                    </Size>
+                    <Color r="0" g="0" b="0" a="1" />
+                </Texture>
+                <Texture parentKey="BorderBottom" file="Interface\BUTTONS\WHITE8X8">
+                    <Anchors>
+                        <Anchor point="BOTTOMLEFT" relativePoint="BOTTOMLEFT" />
+                        <Anchor point="BOTTOMRIGHT" relativePoint="BOTTOMRIGHT" />
+                    </Anchors>
+                    <Size>
+                        <AbsDimension y="1" />
+                    </Size>
+                    <Color r="0" g="0" b="0" a="1" />
+                </Texture>
+            </Layer>
+        </Layers>
+        <Frames>
+            <Frame parentKey="Shadow" inherits="SVUI_ShadowTemplate" />
+        </Frames>
+    </Frame>
+
+    <Frame name="SVUI_CoreStyle_Slot" virtual="true">
+        <Attributes>
+            <Attribute name="panelID" type="string" value="slot" />
+            <Attribute name="panelPadding" type="number" value="2" />
+            <Attribute name="panelColor" type="string" value="transparent" />
+            <Attribute name="panelGradient" type="boolean" value="false" />
+            <Attribute name="panelTexUpdate" type="boolean" value="false" />
+            <Attribute name="panelSkipUpdate" type="boolean" value="true" />
+        </Attributes>
+        <Backdrop bgFile="Interface\AddOns\SVUI\assets\artwork\Template\DEFAULT" edgeFile="Interface\BUTTONS\WHITE8X8" tile="false">
+            <EdgeSize val="1" />
+            <TileSize val="0" />
+            <BackgroundInsets left="1" right="1" top="1" bottom="1" />
+            <Color r="0" g="0" b="0" a="0.5" />
+            <BorderColor r="0" g="0" b="0" a="1" />
+        </Backdrop>
+        <Layers>
+            <Layer level="BORDER">
+                <Texture parentKey="BorderLeft" file="Interface\BUTTONS\WHITE8X8">
+                    <Anchors>
+                        <Anchor point="TOPLEFT" relativePoint="TOPLEFT" />
+                        <Anchor point="BOTTOMLEFT" relativePoint="BOTTOMLEFT" />
+                    </Anchors>
+                    <Size>
+                        <AbsDimension x="2" />
+                    </Size>
+                    <Color r="0" g="0" b="0" a="1" />
+                </Texture>
+                <Texture parentKey="BorderRight" file="Interface\BUTTONS\WHITE8X8">
+                    <Anchors>
+                        <Anchor point="TOPRIGHT" relativePoint="TOPRIGHT" />
+                        <Anchor point="BOTTOMRIGHT" relativePoint="BOTTOMRIGHT" />
+                    </Anchors>
+                    <Size>
+                        <AbsDimension x="2" />
+                    </Size>
+                    <Color r="0" g="0" b="0" a="1" />
+                </Texture>
+                <Texture parentKey="BorderTop" file="Interface\BUTTONS\WHITE8X8">
+                    <Anchors>
+                        <Anchor point="TOPLEFT" relativePoint="TOPLEFT" />
+                        <Anchor point="TOPRIGHT" relativePoint="TOPRIGHT" />
+                    </Anchors>
+                    <Size>
+                        <AbsDimension y="2" />
+                    </Size>
+                    <Color r="0" g="0" b="0" a="1" />
+                </Texture>
+                <Texture parentKey="BorderBottom" file="Interface\BUTTONS\WHITE8X8">
+                    <Anchors>
+                        <Anchor point="BOTTOMLEFT" relativePoint="BOTTOMLEFT" />
+                        <Anchor point="BOTTOMRIGHT" relativePoint="BOTTOMRIGHT" />
+                    </Anchors>
+                    <Size>
+                        <AbsDimension y="2" />
+                    </Size>
+                    <Color r="0" g="0" b="0" a="1" />
+                </Texture>
+            </Layer>
+        </Layers>
+        <Frames>
+            <Frame parentKey="Shadow" inherits="SVUI_ShadowTemplate" />
+        </Frames>
+    </Frame>
+
+    <Frame name="SVUI_CoreStyle_Icon" virtual="true">
+        <Attributes>
+            <Attribute name="panelID" type="string" value="slot" />
+            <Attribute name="panelPadding" type="number" value="2" />
+            <Attribute name="panelColor" type="string" value="invisible" />
+            <Attribute name="panelGradient" type="boolean" value="false" />
+            <Attribute name="panelTexUpdate" type="boolean" value="false" />
+            <Attribute name="panelSkipUpdate" type="boolean" value="true" />
+        </Attributes>
+        <Backdrop bgFile="Interface\AddOns\SVUI\assets\artwork\Template\DEFAULT" edgeFile="Interface\BUTTONS\WHITE8X8" tile="false">
+            <EdgeSize val="1" />
+            <TileSize val="0" />
+            <BackgroundInsets left="1" right="1" top="1" bottom="1" />
+            <Color r="0" g="0" b="0" a="0" />
+            <BorderColor r="0" g="0" b="0" a="1" />
+        </Backdrop>
+        <Layers>
+            <Layer level="BORDER">
+                <Texture parentKey="BorderLeft" file="Interface\BUTTONS\WHITE8X8">
+                    <Anchors>
+                        <Anchor point="TOPLEFT" relativePoint="TOPLEFT" />
+                        <Anchor point="BOTTOMLEFT" relativePoint="BOTTOMLEFT" />
+                    </Anchors>
+                    <Size>
+                        <AbsDimension x="2" />
+                    </Size>
+                    <Color r="0" g="0" b="0" a="1" />
+                </Texture>
+                <Texture parentKey="BorderRight" file="Interface\BUTTONS\WHITE8X8">
+                    <Anchors>
+                        <Anchor point="TOPRIGHT" relativePoint="TOPRIGHT" />
+                        <Anchor point="BOTTOMRIGHT" relativePoint="BOTTOMRIGHT" />
+                    </Anchors>
+                    <Size>
+                        <AbsDimension x="2" />
+                    </Size>
+                    <Color r="0" g="0" b="0" a="1" />
+                </Texture>
+                <Texture parentKey="BorderTop" file="Interface\BUTTONS\WHITE8X8">
+                    <Anchors>
+                        <Anchor point="TOPLEFT" relativePoint="TOPLEFT" />
+                        <Anchor point="TOPRIGHT" relativePoint="TOPRIGHT" />
+                    </Anchors>
+                    <Size>
+                        <AbsDimension y="2" />
+                    </Size>
+                    <Color r="0" g="0" b="0" a="1" />
+                </Texture>
+                <Texture parentKey="BorderBottom" file="Interface\BUTTONS\WHITE8X8">
+                    <Anchors>
+                        <Anchor point="BOTTOMLEFT" relativePoint="BOTTOMLEFT" />
+                        <Anchor point="BOTTOMRIGHT" relativePoint="BOTTOMRIGHT" />
+                    </Anchors>
+                    <Size>
+                        <AbsDimension y="2" />
+                    </Size>
+                    <Color r="0" g="0" b="0" a="1" />
+                </Texture>
+            </Layer>
+        </Layers>
+        <Frames>
+            <Frame parentKey="Shadow" inherits="SVUI_ShadowTemplate" />
+        </Frames>
+    </Frame>
+
+    <Frame name="SVUI_CoreStyle_Checkbox" virtual="true">
+        <Attributes>
+            <Attribute name="panelID" type="string" value="checkbox" />
+            <Attribute name="panelPadding" type="number" value="1" />
+            <Attribute name="panelBorderColor" type="string" value="default" />
+            <Attribute name="panelColor" type="string" value="transparent" />
+            <Attribute name="panelGradient" type="boolean" value="false" />
+            <Attribute name="panelTexUpdate" type="boolean" value="false" />
+            <Attribute name="panelSkipUpdate" type="boolean" value="true" />
+        </Attributes>
+        <Backdrop bgFile="Interface\AddOns\SVUI\assets\artwork\Template\DEFAULT" edgeFile="Interface\BUTTONS\WHITE8X8" tile="false">
+            <EdgeSize val="1" />
+            <TileSize val="0" />
+            <BackgroundInsets left="0" right="0" top="0" bottom="0" />
+            <Color r="0" g="0" b="0" a="0.5" />
+            <BorderColor r="0.1" g="0.1" b="0.1" a="1" />
+        </Backdrop>
+        <Layers>
+            <Layer level="BORDER">
+                <Texture parentKey="BorderLeft" file="Interface\BUTTONS\WHITE8X8">
+                    <Anchors>
+                        <Anchor point="TOPLEFT" relativePoint="TOPLEFT" />
+                        <Anchor point="BOTTOMLEFT" relativePoint="BOTTOMLEFT" />
+                    </Anchors>
+                    <Size>
+                        <AbsDimension x="1" />
+                    </Size>
+                    <Color r="0.1" g="0.1" b="0.1" a="1" />
+                </Texture>
+                <Texture parentKey="BorderRight" file="Interface\BUTTONS\WHITE8X8">
+                    <Anchors>
+                        <Anchor point="TOPRIGHT" relativePoint="TOPRIGHT" />
+                        <Anchor point="BOTTOMRIGHT" relativePoint="BOTTOMRIGHT" />
+                    </Anchors>
+                    <Size>
+                        <AbsDimension x="1" />
+                    </Size>
+                    <Color r="0.1" g="0.1" b="0.1" a="1" />
+                </Texture>
+                <Texture parentKey="BorderTop" file="Interface\BUTTONS\WHITE8X8">
+                    <Anchors>
+                        <Anchor point="TOPLEFT" relativePoint="TOPLEFT" />
+                        <Anchor point="TOPRIGHT" relativePoint="TOPRIGHT" />
+                    </Anchors>
+                    <Size>
+                        <AbsDimension y="1" />
+                    </Size>
+                    <Color r="0.1" g="0.1" b="0.1" a="1" />
+                </Texture>
+                <Texture parentKey="BorderBottom" file="Interface\BUTTONS\WHITE8X8">
+                    <Anchors>
+                        <Anchor point="BOTTOMLEFT" relativePoint="BOTTOMLEFT" />
+                        <Anchor point="BOTTOMRIGHT" relativePoint="BOTTOMRIGHT" />
+                    </Anchors>
+                    <Size>
+                        <AbsDimension y="1" />
+                    </Size>
+                    <Color r="0.1" g="0.1" b="0.1" a="1" />
+                </Texture>
+            </Layer>
+        </Layers>
+    </Frame>
+
+    <Frame name="SVUI_CoreStyle_Inset" virtual="true">
+        <Attributes>
+            <Attribute name="panelID" type="string" value="inset" />
+            <Attribute name="panelPadding" type="number" value="1" />
+            <Attribute name="panelColor" type="string" value="transparent" />
+            <Attribute name="panelGradient" type="boolean" value="false" />
+            <Attribute name="panelTexUpdate" type="boolean" value="false" />
+            <Attribute name="panelSkipUpdate" type="boolean" value="true" />
+        </Attributes>
+        <Backdrop bgFile="Interface\AddOns\SVUI\assets\artwork\Template\DEFAULT" edgeFile="Interface\AddOns\SVUI\assets\artwork\Template\INSET" tile="false">
+            <EdgeSize val="6" />
+            <TileSize val="0" />
+            <BackgroundInsets left="0" right="0" top="0" bottom="0" />
+            <Color r="0" g="0" b="0" a="0.5" />
+            <BorderColor r="0" g="0" b="0" a="0.5" />
+        </Backdrop>
+        <Layers>
+            <Layer level="BORDER">
+                <Texture parentKey="BorderLeft" file="Interface\BUTTONS\WHITE8X8">
+                    <Anchors>
+                        <Anchor point="TOPLEFT" relativePoint="TOPLEFT" />
+                        <Anchor point="BOTTOMLEFT" relativePoint="BOTTOMLEFT" />
+                    </Anchors>
+                    <Size>
+                        <AbsDimension x="1" />
+                    </Size>
+                    <Color r="0" g="0" b="0" a="1" />
+                </Texture>
+                <Texture parentKey="BorderRight" file="Interface\BUTTONS\WHITE8X8">
+                    <Anchors>
+                        <Anchor point="TOPRIGHT" relativePoint="TOPRIGHT" />
+                        <Anchor point="BOTTOMRIGHT" relativePoint="BOTTOMRIGHT" />
+                    </Anchors>
+                    <Size>
+                        <AbsDimension x="1" />
+                    </Size>
+                    <Color r="0" g="0" b="0" a="1" />
+                </Texture>
+                <Texture parentKey="BorderTop" file="Interface\BUTTONS\WHITE8X8">
+                    <Anchors>
+                        <Anchor point="TOPLEFT" relativePoint="TOPLEFT" />
+                        <Anchor point="TOPRIGHT" relativePoint="TOPRIGHT" />
+                    </Anchors>
+                    <Size>
+                        <AbsDimension y="1" />
+                    </Size>
+                    <Color r="0" g="0" b="0" a="1" />
+                </Texture>
+                <Texture parentKey="BorderBottom" file="Interface\BUTTONS\WHITE8X8">
+                    <Anchors>
+                        <Anchor point="BOTTOMLEFT" relativePoint="BOTTOMLEFT" />
+                        <Anchor point="BOTTOMRIGHT" relativePoint="BOTTOMRIGHT" />
+                    </Anchors>
+                    <Size>
+                        <AbsDimension y="1" />
+                    </Size>
+                    <Color r="0" g="0" b="0" a="1" />
+                </Texture>
+            </Layer>
+        </Layers>
+    </Frame>
+
+    <Frame name="SVUI_CoreStyle_Lite" virtual="true">
+        <Attributes>
+            <Attribute name="panelID" type="string" value="headline" />
+            <Attribute name="panelPadding" type="number" value="1" />
+            <Attribute name="panelColor" type="string" value="hinted" />
+            <Attribute name="panelGradient" type="boolean" value="false" />
+            <Attribute name="panelTexUpdate" type="boolean" value="false" />
+            <Attribute name="panelSkipUpdate" type="boolean" value="false" />
+        </Attributes>
+        <Backdrop bgFile="Interface\AddOns\SVUI\assets\artwork\Template\DEFAULT" tile="true" edgeFile="Interface\BUTTONS\WHITE8X8">
+            <EdgeSize val="1" />
+            <TileSize val="20" />
+            <BackgroundInsets left="0" right="0" top="0" bottom="0" />
+            <BorderColor r="0" g="0" b="0" a="1" />
+            <Color r="0" g="0" b="0" a="0.25" />
+        </Backdrop>
+    </Frame>
+
+    <Frame name="SVUI_CoreStyle_Bar" virtual="true">
+        <Attributes>
+            <Attribute name="panelID" type="string" value="bar" />
+            <Attribute name="panelPadding" type="number" value="1" />
+            <Attribute name="panelColor" type="string" value="transparent" />
+            <Attribute name="panelGradient" type="boolean" value="false" />
+            <Attribute name="panelTexUpdate" type="boolean" value="false" />
+            <Attribute name="panelSkipUpdate" type="boolean" value="true" />
+        </Attributes>
+        <Backdrop bgFile="Interface\AddOns\SVUI\assets\artwork\Template\DEFAULT" edgeFile="Interface\BUTTONS\WHITE8X8" tile="false">
+            <EdgeSize val="1" />
+            <TileSize val="0" />
+            <BackgroundInsets left="0" right="0" top="0" bottom="0" />
+            <Color r="0" g="0" b="0" a="0.5" />
+            <BorderColor r="0" g="0" b="0" a="1" />
+        </Backdrop>
+        <Layers>
+            <Layer level="BORDER">
+                <Texture parentKey="BorderLeft" file="Interface\BUTTONS\WHITE8X8">
+                    <Anchors>
+                        <Anchor point="TOPLEFT" relativePoint="TOPLEFT" />
+                        <Anchor point="BOTTOMLEFT" relativePoint="BOTTOMLEFT" />
+                    </Anchors>
+                    <Size>
+                        <AbsDimension x="1" />
+                    </Size>
+                    <Color r="0" g="0" b="0" a="1" />
+                </Texture>
+                <Texture parentKey="BorderRight" file="Interface\BUTTONS\WHITE8X8">
+                    <Anchors>
+                        <Anchor point="TOPRIGHT" relativePoint="TOPRIGHT" />
+                        <Anchor point="BOTTOMRIGHT" relativePoint="BOTTOMRIGHT" />
+                    </Anchors>
+                    <Size>
+                        <AbsDimension x="1" />
+                    </Size>
+                    <Color r="0" g="0" b="0" a="1" />
+                </Texture>
+                <Texture parentKey="BorderTop" file="Interface\BUTTONS\WHITE8X8">
+                    <Anchors>
+                        <Anchor point="TOPLEFT" relativePoint="TOPLEFT" />
+                        <Anchor point="TOPRIGHT" relativePoint="TOPRIGHT" />
+                    </Anchors>
+                    <Size>
+                        <AbsDimension y="1" />
+                    </Size>
+                    <Color r="0" g="0" b="0" a="1" />
+                </Texture>
+                <Texture parentKey="BorderBottom" file="Interface\BUTTONS\WHITE8X8">
+                    <Anchors>
+                        <Anchor point="BOTTOMLEFT" relativePoint="BOTTOMLEFT" />
+                        <Anchor point="BOTTOMRIGHT" relativePoint="BOTTOMRIGHT" />
+                    </Anchors>
+                    <Size>
+                        <AbsDimension y="1" />
+                    </Size>
+                    <Color r="0" g="0" b="0" a="1" />
+                </Texture>
+            </Layer>
+        </Layers>
+    </Frame>
+
     <Include file="api_fonts.xml"/>
     <Include file="api_templates.xml"/>
-    <Script file="api_general.lua"/>
     <Script file="api_style.lua"/>
 </Ui>
\ No newline at end of file
diff --git a/Interface/AddOns/SVUI/framework/api/api_fonts.xml b/Interface/AddOns/SVUI/framework/api/api_fonts.xml
index 5ac7372..ad3f8e5 100644
--- a/Interface/AddOns/SVUI/framework/api/api_fonts.xml
+++ b/Interface/AddOns/SVUI/framework/api/api_fonts.xml
@@ -306,4 +306,6 @@
             <AbsValue val="11"/>
         </FontHeight>
     </Font>
+
+    <Script file="api_general.lua"/>
 </Ui>
\ No newline at end of file
diff --git a/Interface/AddOns/SVUI/framework/api/api_general.lua b/Interface/AddOns/SVUI/framework/api/api_general.lua
index bb3a04a..7a20b63 100644
--- a/Interface/AddOns/SVUI/framework/api/api_general.lua
+++ b/Interface/AddOns/SVUI/framework/api/api_general.lua
@@ -202,32 +202,32 @@ local SecureFadeIn = function(self, duration, alphaStart, alphaEnd)
     local alpha1 = alphaStart or 0;
     local alpha2 = alphaEnd or 1;
     local timer = duration or 0.1;
-    --local name = self:GetName() or 'Frame';
+
     local canfade = (not InCombatLockdown()) or (InCombatLockdown() and (not self:IsProtected()))
     if(canfade and not self:IsShown()) then
         self:Show()
     end

     if(self:IsShown() and self:GetAlpha() == alpha2) then return end
-
-    self.___fademode = "IN";
-    self.___fadehide = false;
-    self.___fadefunc = nil;
-
-    if(not self.___fadeset) then
-        self.___fadeset = {};
-    end
-    self.___fadeset[1] = alpha1;
-    self.___fadeset[2] = alpha2;
-    self.___fadeset[3] = timer;
-
-    self:SetAlpha(alpha1)
-
     if(not self.___fadehandler) then
         self.___fadehandler = CreateFrame("Frame", nil)
         self.___fadehandler.owner = self;
     end
-    if(not self.___fadehandler.Running) then
+    if(not self.___fademode or (self.___fademode and self.___fademode == "OUT")) then
+        self.___fademode = "IN";
+        self.___fadehide = false;
+        self.___fadefunc = nil;
+
+        if(not self.___fadeset) then
+            self.___fadeset = {};
+        end
+        self.___fadeset[1] = alpha1;
+        self.___fadeset[2] = alpha2;
+        self.___fadeset[3] = timer;
+
+        self:SetAlpha(alpha1)
+    end
+    if(not self.___fadehandler.Running) then
         self.___fadehandler.Running = true;
         self.___fadehandler:SetScript("OnUpdate", SecureFade_OnUpdate)
     end
@@ -237,29 +237,28 @@ local SecureFadeOut = function(self, duration, alphaStart, alphaEnd, hideOnFinis
     local alpha1 = alphaStart or 1;
     local alpha2 = alphaEnd or 0;
     local timer = duration or 0.1;
-    --local name = self:GetName() or 'Frame';

     if(not self:IsShown() or self:GetAlpha() == alpha2) then return end
-
-    self.___fademode = "OUT";
-    self.___fadehide = hideOnFinished;
-    self.___fadefunc = nil;
-
-    if(not self.___fadeset) then
-        self.___fadeset = {};
-    end
-
-    self.___fadeset[1] = alpha1;
-    self.___fadeset[2] = alpha2;
-    self.___fadeset[3] = timer;
-
-    self:SetAlpha(alpha1)
-
     if(not self.___fadehandler) then
         self.___fadehandler = CreateFrame("Frame", nil)
         self.___fadehandler.owner = self;
     end
-    if(not self.___fadehandler.Running) then
+    if(not self.___fademode or (self.___fademode and self.___fademode == "IN")) then
+        self.___fademode = "OUT";
+        self.___fadehide = hideOnFinished;
+        self.___fadefunc = nil;
+
+        if(not self.___fadeset) then
+            self.___fadeset = {};
+        end
+
+        self.___fadeset[1] = alpha1;
+        self.___fadeset[2] = alpha2;
+        self.___fadeset[3] = timer;
+
+        self:SetAlpha(alpha1)
+    end
+    if(not self.___fadehandler.Running) then
         self.___fadehandler.Running = true;
         self.___fadehandler:SetScript("OnUpdate", SecureFade_OnUpdate)
     end
diff --git a/Interface/AddOns/SVUI/framework/api/api_style.lua b/Interface/AddOns/SVUI/framework/api/api_style.lua
index 4587915..29d59b7 100644
--- a/Interface/AddOns/SVUI/framework/api/api_style.lua
+++ b/Interface/AddOns/SVUI/framework/api/api_style.lua
@@ -53,30 +53,18 @@ local DEFAULT_BORDER_COLOR = {0,0,0,1};
 TEMPLATE LOOKUP TABLES
 ##########################################################
 ]]--
-local XML_TEMPLATE = {
-    ["Default"]         = "SVUI_PanelTemplate_Default",
-    ["Transparent"]     = "SVUI_PanelTemplate_Transparent",
-    ["Component"]       = "SVUI_PanelTemplate_Component",
-    ["Headline"]        = "SVUI_PanelTemplate_Headline",
-    ["Button"]          = "SVUI_PanelTemplate_Button",
-    ["FramedTop"]       = "SVUI_PanelTemplate_FramedTop",
-    ["FramedBottom"]    = "SVUI_PanelTemplate_FramedBottom",
-    ["Bar"]             = "SVUI_PanelTemplate_Bar",
-    ["Slot"]            = "SVUI_PanelTemplate_Slot",
-    ["Icon"]            = "SVUI_PanelTemplate_Icon",
-    ["Inset"]           = "SVUI_PanelTemplate_Inset",
-    ["Checkbox"]        = "SVUI_PanelTemplate_Checkbox",
-    ["Comic"]           = "SVUI_PanelTemplate_Comic",
-    ["Model"]           = "SVUI_PanelTemplate_Model",
-    ["ModelBorder"]     = "SVUI_PanelTemplate_ModelBorder",
-    ["Paper"]           = "SVUI_PanelTemplate_Paper",
-    ["Container"]       = "SVUI_PanelTemplate_Container",
-    ["Pattern"]         = "SVUI_PanelTemplate_Pattern",
-    ["Halftone"]        = "SVUI_PanelTemplate_Halftone",
-    ["Action"]          = "SVUI_PanelTemplate_Action",
-    ["Blackout"]        = "SVUI_PanelTemplate_Blackout",
-    ["UnitLarge"]       = "SVUI_PanelTemplate_UnitLarge",
-    ["UnitSmall"]       = "SVUI_PanelTemplate_UnitSmall"
+local XML_PREFIX = [[SVUI_StyleTemplate_]];
+local XML_CORE_TEMPLATES = {
+    ["Default"]     = "SVUI_CoreStyle_Default",
+    ["Transparent"] = "SVUI_CoreStyle_Transparent",
+    ["Button"]      = "SVUI_CoreStyle_Button",
+    ["Heavy"]       = "SVUI_CoreStyle_Heavy",
+    ["Lite"]        = "SVUI_CoreStyle_Lite",
+    ["Bar"]         = "SVUI_CoreStyle_Bar",
+    ["Slot"]        = "SVUI_CoreStyle_Slot",
+    ["Icon"]        = "SVUI_CoreStyle_Icon",
+    ["Checkbox"]    = "SVUI_CoreStyle_Checkbox",
+    ["Inset"]       = "SVUI_CoreStyle_Inset",
 };
 --[[
 ##########################################################
@@ -323,7 +311,7 @@ local function CreateCooldown(button, muted)
 end

 local function CreatePanelTemplate(frame, templateName, underlay, noupdate, padding, xOffset, yOffset, defaultColor)
-    local xmlTemplate = XML_TEMPLATE[templateName] or "SVUI_PanelTemplate_Default"
+    local xmlTemplate = XML_CORE_TEMPLATES[templateName] or XML_PREFIX .. templateName;
     local borderColor = {0,0,0,1}

     frame.Panel = CreateFrame('Frame', nil, frame, xmlTemplate)
@@ -412,7 +400,7 @@ local function CreatePanelTemplate(frame, templateName, underlay, noupdate, padd
                 hooksecurefunc(frame, "SetBackdropColor", HookBackdropColor)
             end
             frame.BackdropNeedsUpdate = true
-            if(templateName == 'Pattern' or templateName == 'Comic') then
+            if(templateName == 'Pattern' or templateName == 'Premium') then
                 frame.UpdateBackdrop = HookCustomBackdrop
             end
         end
@@ -441,8 +429,7 @@ local function CreatePanelTemplate(frame, templateName, underlay, noupdate, padd
     end
 end

-local function CreateButtonPanel(frame, noChecked, brightChecked, mutedCooldown)
-
+local function SetButtonBasics(frame)
     if(frame.Left) then
         frame.Left:SetAlpha(0)
     end
@@ -469,14 +456,17 @@ local function CreateButtonPanel(frame, noChecked, brightChecked, mutedCooldown)

     if(frame.SetHighlightTexture) then
         if(not frame.hover) then
-            local hover = frame:CreateTexture(nil, "OVERLAY")
+            local hover = frame:CreateTexture(nil, "HIGHLIGHT")
             hover:SetAllPointsIn(frame.Panel)
             frame.hover = hover;
         end
-        local color = SV.Media.color.highlight
-        frame.hover:SetTexture(color[1], color[2], color[3], 0.5)
+        frame.hover:SetTexture(0.1, 0.8, 0.8, 0.5)
         frame:SetHighlightTexture(frame.hover)
     end
+end
+
+local function CreateButtonPanel(frame, noChecked, brightChecked, mutedCooldown)
+    SetButtonBasics(frame)

     if(frame.SetPushedTexture) then
         if(not frame.pushed) then
@@ -515,7 +505,7 @@ TEMPLATING METHODS
 ]]--
 local TEMPLATE_METHODS, TEMPLATE_UPDATES = {}, {};

-TEMPLATE_METHODS["Button"] = function(self, alteration, overridePadding, xOffset, yOffset, keepNormal, defaultColor)
+TEMPLATE_METHODS["Button"] = function(self, inverse, alteration, overridePadding, xOffset, yOffset, keepNormal, defaultColor)
     if(not self or (self and self.Panel)) then return end

     local padding = 1
@@ -524,15 +514,14 @@ TEMPLATE_METHODS["Button"] = function(self, alteration, overridePadding, xOffset
     end

     local x,y = -1,-1
-    local underlay = false
     if(xOffset or yOffset) then
         x = xOffset or -1
         y = yOffset or -1
-        underlay = true
+        inverse = true
     end

     if(alteration and (type(alteration) == 'boolean')) then
-        CreatePanelTemplate(self, "Headline", underlay, true, padding, x, y, defaultColor)
+        CreatePanelTemplate(self, "Lite", inverse, true, padding, x, y, defaultColor)
         self:SetBackdropColor(0,0,0,0)
         self:SetBackdropBorderColor(0,0,0,0)

@@ -543,215 +532,26 @@ TEMPLATE_METHODS["Button"] = function(self, alteration, overridePadding, xOffset
             self.Panel.BorderBottom:SetVertexColor(0,0,0,0)
         end
     elseif(alteration and (type(alteration) == 'string')) then
-        CreatePanelTemplate(self, alteration, underlay, true, padding, x, y, defaultColor)
+        CreatePanelTemplate(self, alteration, inverse, true, padding, x, y, defaultColor)
     else
-        CreatePanelTemplate(self, "Button", underlay, true, padding, x, y, defaultColor)
-    end
-
-    if(self.Left) then
-        self.Left:SetAlpha(0)
-    end
-
-    if(self.Middle) then
-        self.Middle:SetAlpha(0)
-    end
-
-    if(self.Right) then
-        self.Right:SetAlpha(0)
-    end
-
-    if(self.SetNormalTexture and not keepNormal) then
-        self:SetNormalTexture("")
-    end
-
-    if(self.SetDisabledTexture) then
-        self:SetDisabledTexture("")
-    end
-
-    if(self.SetHighlightTexture) then
-        if(not self.hover) then
-            local hover = self:CreateTexture(nil, "HIGHLIGHT")
-            hover:SetAllPointsIn(self.Panel, 2, 2)
-            self.hover = hover;
-        end
-        self.hover:SetTexture(0.1, 0.8, 0.8, 0.5)
-        self:SetHighlightTexture(self.hover)
-    end
-
-    if(self.SetPushedTexture) then
-        if(not self.pushed) then
-            local pushed = self:CreateTexture(nil, "OVERLAY")
-            pushed:SetAllPointsIn(self.Panel)
-            self.pushed = pushed;
-        end
-
-        self.pushed:SetTexture(0.1, 0.8, 0.1, 0.3)
-
-        self:SetPushedTexture(self.pushed)
-    end
-
-    if(self.SetCheckedTexture) then
-        if(not self.checked) then
-            local checked = self:CreateTexture(nil, "OVERLAY")
-            checked:SetAllPointsIn(self.Panel)
-            self.checked = checked;
-        end
-
-        self.checked:SetTexture([[Interface\AddOns\SVUI\assets\artwork\Template\DEFAULT]])
-        self.checked:SetVertexColor(0, 0.5, 0, 0.2)
-
-        self:SetCheckedTexture(self.checked)
-    end
-
-    CreateCooldown(self)
-end;
-
-TEMPLATE_METHODS["Slot"] = function(self, underlay, padding, x, y, shadowAlpha, mutedCooldown)
-    if(not self or (self and self.Panel)) then return end
-    padding = padding or 1
-    CreatePanelTemplate(self, "Slot", underlay, true, padding, x, y)
-    CreateButtonPanel(self, true, nil, mutedCooldown)
-    if(shadowAlpha) then
-        self.Panel.Shadow:SetAttribute("shadowAlpha", shadowAlpha)
+        CreatePanelTemplate(self, "Button", inverse, true, padding, x, y, defaultColor)
     end
-end;

-TEMPLATE_METHODS["Icon"] = function(self, underlay, padding, x, y, shadowAlpha, mutedCooldown)
-    if(not self or (self and self.Panel)) then return end
-    padding = padding or 1
-    CreatePanelTemplate(self, "Icon", false, true, padding, x, y)
-    CreateButtonPanel(self, true, nil, mutedCooldown)
-    if(shadowAlpha) then
-        self.Panel.Shadow:SetAttribute("shadowAlpha", shadowAlpha)
-    end
+    CreateButtonPanel(self)
 end;

-TEMPLATE_METHODS["Checkbox"] = function(self, shrink, x, y)
+TEMPLATE_METHODS["HeavyButton"] = function(self, inverse, inverted, styleName)
     if(not self or (self and self.Panel)) then return end

-    local width, height = self:GetSize()
-    if(shrink) then
-        x = x or -2
-        y = y or -2
-    end
-
-    width = width + (x or 0)
-    height = height + (y or 0)
+    local borderSize = 2
+    styleName = styleName or "Heavy";
+    CreatePanelTemplate(self, styleName, inverse, false, 0, -borderSize, -borderSize)

-    self:SetSize(width, height)
-
-    CreatePanelTemplate(self, "Checkbox", true, true, 1, x, y)
-
-    if(self.SetNormalTexture) then
-        self:SetNormalTexture("")
-    end
-
-    if(self.SetPushedTexture) then
-        self:SetPushedTexture("")
-    end
-
-    if(self.SetHighlightTexture) then
-        if(not self.hover) then
-            local hover = self:CreateTexture(nil, "OVERLAY")
-            hover:SetAllPointsIn(self.Panel)
-            self.hover = hover;
-        end
-        local color = SV.Media.color.highlight
-        self.hover:SetTexture(color[1], color[2], color[3], 0.5)
-        self:SetHighlightTexture(self.hover)
-    end
-
-    if(self.SetCheckedTexture) then
-        self:SetCheckedTexture([[Interface\Buttons\UI-CheckBox-Check]])
-    end
-
-    if(self.SetDisabledCheckedTexture) then
-        self:SetDisabledCheckedTexture([[Interface\Buttons\UI-CheckBox-Check-Disabled]])
-    end
-end;
-
-TEMPLATE_METHODS["Colored"] = function(self, underlay, x, y)
-    if(not self or (self and self.Panel)) then return end
-
-    if(underlay) then
-        x = x or -7
-        y = y or -7
-    end
-
-    CreatePanelTemplate(self, "Slot", underlay, true, 1, x, y)
-    CreateButtonPanel(self, false, true)
-
-    hooksecurefunc(self, "SetChecked", function(self,checked)
-        local r,g,b = 0,0,0
-        if(checked) then
-            r,g,b = self:GetCheckedTexture():GetVertexColor()
-        end
-        self:SetBackdropBorderColor(r,g,b)
-    end)
-end;
-
-TEMPLATE_METHODS["Editbox"] = function(self, x, y, fixed)
-    if(not self or (self and self.Panel)) then return end
-
-    if self.TopLeftTex then self.TopLeftTex:Die() end
-    if self.TopRightTex then self.TopRightTex:Die() end
-    if self.TopTex then self.TopTex:Die() end
-    if self.BottomLeftTex then self.BottomLeftTex:Die() end
-    if self.BottomRightTex then self.BottomRightTex:Die() end
-    if self.BottomTex then self.BottomTex:Die() end
-    if self.LeftTex then self.LeftTex:Die() end
-    if self.RightTex then self.RightTex:Die() end
-    if self.MiddleTex then self.MiddleTex:Die() end
-    local underlay = true
-    if(fixed ~= nil) then underlay = fixed end
-    CreatePanelTemplate(self, "Inset", underlay, true, 1, x, y)
-
-    local globalName = self:GetName();
-    if globalName then
-        if _G[globalName.."Left"] then _G[globalName.."Left"]:Die() end
-        if _G[globalName.."Middle"] then _G[globalName.."Middle"]:Die() end
-        if _G[globalName.."Right"] then _G[globalName.."Right"]:Die() end
-        if _G[globalName.."Mid"] then _G[globalName.."Mid"]:Die() end
-
-        if globalName:find("Silver") or globalName:find("Copper") or globalName:find("Gold") then
-            self.Panel:SetPoint("TOPLEFT", -3, 1)
-            if globalName:find("Silver") or globalName:find("Copper") then
-                self.Panel:SetPoint("BOTTOMRIGHT", -12, -2)
-            else
-                self.Panel:SetPoint("BOTTOMRIGHT", -2, -2)
-            end
-        end
+    if(inverted) then
+        self.Panel:SetAttribute("panelGradient", "darkest2")
+    else
+        self.Panel:SetAttribute("panelGradient", "darkest")
     end
-end;
-
-TEMPLATE_METHODS["Framed"] = function(self, template, borderSize)
-    if(not self or (self and self.Panel)) then return end
-
-    borderSize = borderSize or 2
-
-    template = template or "FramedBottom"
-
-    CreatePanelTemplate(self, template, false, false, 0, -borderSize, -borderSize)
-
-    if(self.Left) then
-        self.Left:SetAlpha(0)
-    end
-
-    if(self.Middle) then
-        self.Middle:SetAlpha(0)
-    end
-
-    if(self.Right) then
-        self.Right:SetAlpha(0)
-    end
-
-    if(self.SetNormalTexture) then
-        self:SetNormalTexture("")
-    end
-
-    if(self.SetDisabledTexture) then
-        self:SetDisabledTexture("")
-    end

     if(not self.__border) then
         local t = SV.Media.color.default
@@ -815,16 +615,7 @@ TEMPLATE_METHODS["Framed"] = function(self, template, borderSize)
         self.StopAlert = HideAlertFlash
     end

-    if(not self.hover) then
-        self.hover = self:CreateTexture(nil, "HIGHLIGHT")
-    end
-
-    local color = SV.Media.color.highlight
-    self.hover:SetTexture(color[1], color[2], color[3], 0.5)
-    self.hover:SetAllPoints()
-    if(self.SetHighlightTexture) then
-        self:SetHighlightTexture(self.hover)
-    end
+    SetButtonBasics(self)

     if(not self.__registered) then
         TEMPLATE_UPDATES[self] = true
@@ -832,29 +623,134 @@ TEMPLATE_METHODS["Framed"] = function(self, template, borderSize)
     end
 end;

-TEMPLATE_METHODS["Fixed"] = function(self, templateName, noupdate, overridePadding, xOffset, yOffset, defaultColor)
+TEMPLATE_METHODS["Slot"] = function(self, inverse, padding, x, y, shadowAlpha, mutedCooldown)
     if(not self or (self and self.Panel)) then return end
-    local padding = false;
-    if(overridePadding and type(overridePadding) == "number") then
-        padding = overridePadding
+    padding = padding or 1
+    local underlay = (not inverse)
+    CreatePanelTemplate(self, "Slot", underlay, true, padding, x, y)
+    CreateButtonPanel(self, true, nil, mutedCooldown)
+    if(shadowAlpha) then
+        self.Panel.Shadow:SetAttribute("shadowAlpha", shadowAlpha)
+    end
+end;
+
+TEMPLATE_METHODS["Icon"] = function(self, inverse, padding, x, y, shadowAlpha, mutedCooldown)
+    if(not self or (self and self.Panel)) then return end
+    padding = padding or 1
+    local underlay = (not inverse)
+    CreatePanelTemplate(self, "Icon", underlay, true, padding, x, y)
+    CreateButtonPanel(self, true, nil, mutedCooldown)
+    if(shadowAlpha) then
+        self.Panel.Shadow:SetAttribute("shadowAlpha", shadowAlpha)
     end
+end;

-    CreatePanelTemplate(self, templateName, false, noupdate, padding, xOffset, yOffset, defaultColor)
+TEMPLATE_METHODS["Checkbox"] = function(self, inverse, shrink, x, y, colored)
+    if(not self or (self and self.Panel)) then return end

-    if(not self.Panel:GetAttribute("panelSkipUpdate") and not self.__registered) then
-        TEMPLATE_UPDATES[self] = true
-        self.__registered = true
+    if(colored) then
+        if(inverse) then
+            x = x or -7
+            y = y or -7
+        end
+
+        CreatePanelTemplate(self, "Slot", inverse, true, 1, x, y)
+        CreateButtonPanel(self, false, true)
+
+        hooksecurefunc(self, "SetChecked", function(self,checked)
+            local r,g,b = 0,0,0
+            if(checked) then
+                r,g,b = self:GetCheckedTexture():GetVertexColor()
+            end
+            self:SetBackdropBorderColor(r,g,b)
+        end)
+    else
+        local width, height = self:GetSize()
+        if(shrink) then
+            x = x or -2
+            y = y or -2
+        end
+
+        width = width + (x or 0)
+        height = height + (y or 0)
+
+        self:SetSize(width, height)
+
+        local underlay = (not inverse)
+        CreatePanelTemplate(self, "Checkbox", underlay, true, 1, x, y)
+
+        if(self.SetNormalTexture) then
+            self:SetNormalTexture("")
+        end
+
+        if(self.SetPushedTexture) then
+            self:SetPushedTexture("")
+        end
+
+        if(self.SetHighlightTexture) then
+            if(not self.hover) then
+                local hover = self:CreateTexture(nil, "OVERLAY")
+                hover:SetAllPointsIn(self.Panel)
+                self.hover = hover;
+            end
+            local color = SV.Media.color.highlight
+            self.hover:SetTexture(color[1], color[2], color[3], 0.5)
+            self:SetHighlightTexture(self.hover)
+        end
+
+        if(self.SetCheckedTexture) then
+            self:SetCheckedTexture([[Interface\Buttons\UI-CheckBox-Check]])
+        end
+
+        if(self.SetDisabledCheckedTexture) then
+            self:SetDisabledCheckedTexture([[Interface\Buttons\UI-CheckBox-Check-Disabled]])
+        end
     end
 end;

-TEMPLATE_METHODS["Default"] = function(self, templateName, noupdate, overridePadding, xOffset, yOffset, defaultColor)
+TEMPLATE_METHODS["Editbox"] = function(self, inverse, x, y)
+    if(not self or (self and self.Panel)) then return end
+
+    if self.TopLeftTex then self.TopLeftTex:Die() end
+    if self.TopRightTex then self.TopRightTex:Die() end
+    if self.TopTex then self.TopTex:Die() end
+    if self.BottomLeftTex then self.BottomLeftTex:Die() end
+    if self.BottomRightTex then self.BottomRightTex:Die() end
+    if self.BottomTex then self.BottomTex:Die() end
+    if self.LeftTex then self.LeftTex:Die() end
+    if self.RightTex then self.RightTex:Die() end
+    if self.MiddleTex then self.MiddleTex:Die() end
+    local underlay = (not inverse)
+    CreatePanelTemplate(self, "Inset", underlay, true, 1, x, y)
+
+    local globalName = self:GetName();
+    if globalName then
+        if _G[globalName.."Left"] then _G[globalName.."Left"]:Die() end
+        if _G[globalName.."Middle"] then _G[globalName.."Middle"]:Die() end
+        if _G[globalName.."Right"] then _G[globalName.."Right"]:Die() end
+        if _G[globalName.."Mid"] then _G[globalName.."Mid"]:Die() end
+
+        if globalName:find("Silver") or globalName:find("Copper") or globalName:find("Gold") then
+            self.Panel:SetPoint("TOPLEFT", -3, 1)
+            if globalName:find("Silver") or globalName:find("Copper") then
+                self.Panel:SetPoint("BOTTOMRIGHT", -12, -2)
+            else
+                self.Panel:SetPoint("BOTTOMRIGHT", -2, -2)
+            end
+        end
+    end
+end;
+
+TEMPLATE_METHODS["Frame"] = function(self, inverse, styleName, noupdate, overridePadding, xOffset, yOffset, defaultColor)
     if(not self or (self and self.Panel)) then return end
     local padding = false;
     if(overridePadding and type(overridePadding) == "number") then
         padding = overridePadding
     end
-
-    CreatePanelTemplate(self, templateName, true, noupdate, padding, xOffset, yOffset, defaultColor)
+
+    styleName = styleName or "Default";
+    local underlay = (not inverse)
+    CreatePanelTemplate(self, styleName, underlay, noupdate, padding, xOffset, yOffset, defaultColor)

     if(not self.Panel:GetAttribute("panelSkipUpdate") and not self.__registered) then
         TEMPLATE_UPDATES[self] = true
@@ -881,8 +777,8 @@ local function FrameTemplateUpdates()
                 end
                 if(frame.Panel:GetAttribute("panelBorderColor")) then
                     local bdrColor = frame.Panel:GetAttribute("panelBorderColor")
-                    borderColor = SV.Media.color[bdrColor] or DEFAULT_BORDER_COLOR
-                    frame:SetBackdropBorderColor(bdrColor[1], bdrColor[2], bdrColor[3], bdrColor[4] or 1)
+                    local borderColor = SV.Media.color[bdrColor] or DEFAULT_BORDER_COLOR
+                    frame:SetBackdropBorderColor(borderColor[1], borderColor[2], borderColor[3], borderColor[4] or 1)
                 else
                     frame:SetBackdropBorderColor(0,0,0,1)
                 end
@@ -922,7 +818,6 @@ local SetPanelColor = function(self, ...)
             elseif(SV.Media.gradient[arg1]) then
                 if self.ColorBorder then
                     local d,r,g,b,r2,g2,b2 = unpack(SV.Media.gradient[arg1])
-                    --self.Panel.Skin:SetGradient(d,r,g,b,r2,g2,b2)
                     self:ColorBorder(r2,g2,b2,arg1)
                 else
                     self.Panel.Skin:SetGradient(unpack(SV.Media.gradient[arg1]))
@@ -949,9 +844,11 @@ end

 local SetStylePanel = function(self, method, ...)
     if(not self or (self and self.Panel)) then return end
-    method = method or "Default";
-    if(TEMPLATE_METHODS[method]) then
-        TEMPLATE_METHODS[method](self, ...)
+    method = method or "Frame";
+    local methodName, flags = method:gsub("!_", "");
+    local inverse = (flags and flags > 0) and true or false;
+    if(TEMPLATE_METHODS[methodName]) then
+        TEMPLATE_METHODS[methodName](self, inverse, ...)
     end
 end
 --[[
@@ -967,8 +864,6 @@ end

 local HANDLER, OBJECT = {["Frame"] = true}, CreateFrame("Frame")
 AppendMethods(OBJECT)
--- AppendMethods(OBJECT:CreateTexture())
--- AppendMethods(OBJECT:CreateFontString())

 OBJECT = EnumerateFrames()
 while OBJECT do
diff --git a/Interface/AddOns/SVUI/framework/api/api_templates.xml b/Interface/AddOns/SVUI/framework/api/api_templates.xml
index 10ba305..dee4c1c 100644
--- a/Interface/AddOns/SVUI/framework/api/api_templates.xml
+++ b/Interface/AddOns/SVUI/framework/api/api_templates.xml
@@ -1,700 +1,25 @@
 <Ui xmlns="http://www.blizzard.com/wow/ui/">
-    <Frame name="SVUI_ShadowTemplate" virtual="true">
+    <Frame name="SVUI_StyleTemplate_Paper" virtual="true">
         <Attributes>
-            <Attribute name="shadowAlpha" type="number" value="0.5" />
-        </Attributes>
-        <Backdrop edgeFile="Interface\AddOns\SVUI\assets\artwork\Template\GLOW">
-            <EdgeSize val="3" />
-            <BackgroundInsets left="0" right="0" top="0" bottom="0" />
-            <Color r="0" g="0" b="0" a="0" />
-            <BorderColor r="0" g="0" b="0" a="0.5" />
-        </Backdrop>
-    </Frame>
-
-	<Frame name="SVUI_PanelTemplate_Default" virtual="true">
-        <Attributes>
-            <Attribute name="panelID" type="string" value="default" />
-            <Attribute name="panelPadding" type="number" value="1" />
-            <Attribute name="panelColor" type="string" value="default" />
-            <Attribute name="panelGradient" type="string" value="default" />
-            <Attribute name="panelTexUpdate" type="boolean" value="false" />
-            <Attribute name="panelSkipUpdate" type="boolean" value="false" />
-        </Attributes>
-        <Backdrop bgFile="Interface\BUTTONS\WHITE8X8" edgeFile="Interface\BUTTONS\WHITE8X8" tile="false">
-            <EdgeSize val="1" />
-            <TileSize val="0" />
-            <BackgroundInsets left="0" right="0" top="0" bottom="0" />
-            <Color r="0.2" g="0.2" b="0.2" a="1" />
-            <BorderColor r="0" g="0" b="0" a="1" />
-        </Backdrop>
-        <Layers>
-            <Layer level="BACKGROUND" textureSubLevel="1">
-                <Texture parentKey="Skin" nonBlocking="true" file="Interface\AddOns\SVUI\assets\artwork\Template\DEFAULT" setAllPoints="true" />
-                <Color r="0.2" g="0.2" b="0.2" a="1" />
-            </Layer>
-            <Layer level="BORDER">
-                <Texture parentKey="BorderLeft" file="Interface\BUTTONS\WHITE8X8">
-                    <Anchors>
-                        <Anchor point="TOPLEFT" relativePoint="TOPLEFT" />
-                        <Anchor point="BOTTOMLEFT" relativePoint="BOTTOMLEFT" />
-                    </Anchors>
-                    <Size>
-                        <AbsDimension x="1" />
-                    </Size>
-                    <Color r="0" g="0" b="0" a="1" />
-                </Texture>
-                <Texture parentKey="BorderRight" file="Interface\BUTTONS\WHITE8X8">
-                    <Anchors>
-                        <Anchor point="TOPRIGHT" relativePoint="TOPRIGHT" />
-                        <Anchor point="BOTTOMRIGHT" relativePoint="BOTTOMRIGHT" />
-                    </Anchors>
-                    <Size>
-                        <AbsDimension x="1" />
-                    </Size>
-                    <Color r="0" g="0" b="0" a="1" />
-                </Texture>
-                <Texture parentKey="BorderTop" file="Interface\BUTTONS\WHITE8X8">
-                    <Anchors>
-                        <Anchor point="TOPLEFT" relativePoint="TOPLEFT" />
-                        <Anchor point="TOPRIGHT" relativePoint="TOPRIGHT" />
-                    </Anchors>
-                    <Size>
-                        <AbsDimension y="1" />
-                    </Size>
-                    <Color r="0" g="0" b="0" a="1" />
-                </Texture>
-                <Texture parentKey="BorderBottom" file="Interface\BUTTONS\WHITE8X8">
-                    <Anchors>
-                        <Anchor point="BOTTOMLEFT" relativePoint="BOTTOMLEFT" />
-                        <Anchor point="BOTTOMRIGHT" relativePoint="BOTTOMRIGHT" />
-                    </Anchors>
-                    <Size>
-                        <AbsDimension y="1" />
-                    </Size>
-                    <Color r="0" g="0" b="0" a="1" />
-                </Texture>
-            </Layer>
-        </Layers>
-    </Frame>
-
-    <Frame name="SVUI_PanelTemplate_Transparent" virtual="true">
-        <Attributes>
-            <Attribute name="panelID" type="string" value="transparent" />
-            <Attribute name="panelPadding" type="number" value="2" />
-            <Attribute name="panelColor" type="string" value="transparent" />
-            <Attribute name="panelGradient" type="boolean" value="false" />
-            <Attribute name="panelTexUpdate" type="boolean" value="false" />
-            <Attribute name="panelSkipUpdate" type="boolean" value="true" />
-        </Attributes>
-        <Backdrop bgFile="Interface\BUTTONS\WHITE8X8" edgeFile="Interface\BUTTONS\WHITE8X8" tile="false">
-            <EdgeSize val="2" />
-            <TileSize val="0" />
-            <BackgroundInsets left="0" right="0" top="0" bottom="0" />
-            <Color r="0" g="0" b="0" a="0.5" />
-            <BorderColor r="0" g="0" b="0" a="1" />
-        </Backdrop>
-        <Layers>
-            <Layer level="BORDER">
-                <Texture parentKey="BorderLeft" file="Interface\BUTTONS\WHITE8X8">
-                    <Anchors>
-                        <Anchor point="TOPLEFT" relativePoint="TOPLEFT" />
-                        <Anchor point="BOTTOMLEFT" relativePoint="BOTTOMLEFT" />
-                    </Anchors>
-                    <Size>
-                        <AbsDimension x="1" />
-                    </Size>
-                    <Color r="0" g="0" b="0" a="1" />
-                </Texture>
-                <Texture parentKey="BorderRight" file="Interface\BUTTONS\WHITE8X8">
-                    <Anchors>
-                        <Anchor point="TOPRIGHT" relativePoint="TOPRIGHT" />
-                        <Anchor point="BOTTOMRIGHT" relativePoint="BOTTOMRIGHT" />
-                    </Anchors>
-                    <Size>
-                        <AbsDimension x="1" />
-                    </Size>
-                    <Color r="0" g="0" b="0" a="1" />
-                </Texture>
-                <Texture parentKey="BorderTop" file="Interface\BUTTONS\WHITE8X8">
-                    <Anchors>
-                        <Anchor point="TOPLEFT" relativePoint="TOPLEFT" />
-                        <Anchor point="TOPRIGHT" relativePoint="TOPRIGHT" />
-                    </Anchors>
-                    <Size>
-                        <AbsDimension y="1" />
-                    </Size>
-                    <Color r="0" g="0" b="0" a="1" />
-                </Texture>
-                <Texture parentKey="BorderBottom" file="Interface\BUTTONS\WHITE8X8">
-                    <Anchors>
-                        <Anchor point="BOTTOMLEFT" relativePoint="BOTTOMLEFT" />
-                        <Anchor point="BOTTOMRIGHT" relativePoint="BOTTOMRIGHT" />
-                    </Anchors>
-                    <Size>
-                        <AbsDimension y="1" />
-                    </Size>
-                    <Color r="0" g="0" b="0" a="1" />
-                </Texture>
-            </Layer>
-        </Layers>
-    </Frame>
-
-    <Frame name="SVUI_PanelTemplate_Component" virtual="true">
-        <Attributes>
-            <Attribute name="panelID" type="string" value="component" />
-            <Attribute name="panelPadding" type="number" value="1" />
-            <Attribute name="panelColor" type="string" value="default" />
-            <Attribute name="panelGradient" type="string" value="default" />
-            <Attribute name="panelTexUpdate" type="boolean" value="false" />
-            <Attribute name="panelSkipUpdate" type="boolean" value="false" />
-        </Attributes>
-        <Backdrop bgFile="Interface\BUTTONS\WHITE8X8" edgeFile="Interface\BUTTONS\WHITE8X8" tile="false">
-            <EdgeSize val="2" />
-            <TileSize val="0" />
-            <BackgroundInsets left="0" right="0" top="0" bottom="0" />
-            <Color r="0.2" g="0.2" b="0.2" a="1" />
-            <BorderColor r="0" g="0" b="0" a="1" />
-        </Backdrop>
-        <Layers>
-            <Layer level="BACKGROUND" textureSubLevel="1">
-                <Texture parentKey="Skin" nonBlocking="true" file="Interface\AddOns\SVUI\assets\artwork\Template\DEFAULT" setAllPoints="true" />
-                <Color r="0.2" g="0.2" b="0.2" a="1" />
-            </Layer>
-            <Layer level="BORDER">
-                <Texture parentKey="BorderLeft" file="Interface\BUTTONS\WHITE8X8">
-                    <Anchors>
-                        <Anchor point="TOPLEFT" relativePoint="TOPLEFT" />
-                        <Anchor point="BOTTOMLEFT" relativePoint="BOTTOMLEFT" />
-                    </Anchors>
-                    <Size>
-                        <AbsDimension x="1" />
-                    </Size>
-                    <Color r="0" g="0" b="0" a="1" />
-                </Texture>
-                <Texture parentKey="BorderRight" file="Interface\BUTTONS\WHITE8X8">
-                    <Anchors>
-                        <Anchor point="TOPRIGHT" relativePoint="TOPRIGHT" />
-                        <Anchor point="BOTTOMRIGHT" relativePoint="BOTTOMRIGHT" />
-                    </Anchors>
-                    <Size>
-                        <AbsDimension x="1" />
-                    </Size>
-                    <Color r="0" g="0" b="0" a="1" />
-                </Texture>
-                <Texture parentKey="BorderTop" file="Interface\BUTTONS\WHITE8X8">
-                    <Anchors>
-                        <Anchor point="TOPLEFT" relativePoint="TOPLEFT" />
-                        <Anchor point="TOPRIGHT" relativePoint="TOPRIGHT" />
-                    </Anchors>
-                    <Size>
-                        <AbsDimension y="1" />
-                    </Size>
-                    <Color r="0" g="0" b="0" a="1" />
-                </Texture>
-                <Texture parentKey="BorderBottom" file="Interface\BUTTONS\WHITE8X8">
-                    <Anchors>
-                        <Anchor point="BOTTOMLEFT" relativePoint="BOTTOMLEFT" />
-                        <Anchor point="BOTTOMRIGHT" relativePoint="BOTTOMRIGHT" />
-                    </Anchors>
-                    <Size>
-                        <AbsDimension y="1" />
-                    </Size>
-                    <Color r="0" g="0" b="0" a="1" />
-                </Texture>
-            </Layer>
-        </Layers>
-        <Frames>
-            <Frame parentKey="Shadow" inherits="SVUI_ShadowTemplate" />
-        </Frames>
-    </Frame>
-
-    <Frame name="SVUI_PanelTemplate_Headline" virtual="true">
-        <Attributes>
-            <Attribute name="panelID" type="string" value="headline" />
-            <Attribute name="panelPadding" type="number" value="1" />
-            <Attribute name="panelColor" type="string" value="hinted" />
-            <Attribute name="panelGradient" type="boolean" value="false" />
-            <Attribute name="panelTexUpdate" type="boolean" value="false" />
-            <Attribute name="panelSkipUpdate" type="boolean" value="false" />
-        </Attributes>
-        <Backdrop bgFile="Interface\AddOns\SVUI\assets\artwork\Template\DEFAULT" tile="true" edgeFile="Interface\BUTTONS\WHITE8X8">
-            <EdgeSize val="1" />
-            <TileSize val="20" />
-            <BackgroundInsets left="0" right="0" top="0" bottom="0" />
-            <BorderColor r="0" g="0" b="0" a="1" />
-            <Color r="0" g="0" b="0" a="0.25" />
-        </Backdrop>
-    </Frame>
-
-    <Frame name="SVUI_PanelTemplate_Button" virtual="true">
-        <Attributes>
-            <Attribute name="panelID" type="string" value="button" />
-            <Attribute name="panelPadding" type="number" value="1" />
-            <Attribute name="panelColor" type="string" value="default" />
-            <Attribute name="panelGradient" type="boolean" value="false" />
-            <Attribute name="panelTexUpdate" type="boolean" value="false" />
-            <Attribute name="panelSkipUpdate" type="boolean" value="false" />
-        </Attributes>
-        <Backdrop bgFile="Interface\AddOns\SVUI\assets\artwork\Template\BUTTON" edgeFile="Interface\BUTTONS\WHITE8X8" tile="false">
-            <EdgeSize val="2" />
-            <TileSize val="0" />
-            <BackgroundInsets left="0" right="0" top="0" bottom="0" />
-            <Color r="0.2" g="0.2" b="0.2" a="1" />
-            <BorderColor r="0" g="0" b="0" a="1" />
-        </Backdrop>
-        <Layers>
-            <Layer level="BORDER">
-                <Texture parentKey="BorderLeft" file="Interface\BUTTONS\WHITE8X8">
-                    <Anchors>
-                        <Anchor point="TOPLEFT" relativePoint="TOPLEFT" />
-                        <Anchor point="BOTTOMLEFT" relativePoint="BOTTOMLEFT" />
-                    </Anchors>
-                    <Size>
-                        <AbsDimension x="1" />
-                    </Size>
-                    <Color r="0" g="0" b="0" a="1" />
-                </Texture>
-                <Texture parentKey="BorderRight" file="Interface\BUTTONS\WHITE8X8">
-                    <Anchors>
-                        <Anchor point="TOPRIGHT" relativePoint="TOPRIGHT" />
-                        <Anchor point="BOTTOMRIGHT" relativePoint="BOTTOMRIGHT" />
-                    </Anchors>
-                    <Size>
-                        <AbsDimension x="1" />
-                    </Size>
-                    <Color r="0" g="0" b="0" a="1" />
-                </Texture>
-                <Texture parentKey="BorderTop" file="Interface\BUTTONS\WHITE8X8">
-                    <Anchors>
-                        <Anchor point="TOPLEFT" relativePoint="TOPLEFT" />
-                        <Anchor point="TOPRIGHT" relativePoint="TOPRIGHT" />
-                    </Anchors>
-                    <Size>
-                        <AbsDimension y="1" />
-                    </Size>
-                    <Color r="0" g="0" b="0" a="1" />
-                </Texture>
-                <Texture parentKey="BorderBottom" file="Interface\BUTTONS\WHITE8X8">
-                    <Anchors>
-                        <Anchor point="BOTTOMLEFT" relativePoint="BOTTOMLEFT" />
-                        <Anchor point="BOTTOMRIGHT" relativePoint="BOTTOMRIGHT" />
-                    </Anchors>
-                    <Size>
-                        <AbsDimension y="1" />
-                    </Size>
-                    <Color r="0" g="0" b="0" a="1" />
-                </Texture>
-            </Layer>
-        </Layers>
-        <Frames>
-            <Frame parentKey="Shadow" inherits="SVUI_ShadowTemplate" />
-        </Frames>
-    </Frame>
-
-    <Frame name="SVUI_PanelTemplate_FramedTop" virtual="true">
-        <Attributes>
-            <Attribute name="panelID" type="string" value="framedtop" />
-            <Attribute name="panelPadding" type="number" value="1" />
-            <Attribute name="panelColor" type="string" value="default" />
-            <Attribute name="panelGradient" type="string" value="darkest2" />
-            <Attribute name="panelTexUpdate" type="boolean" value="true" />
-            <Attribute name="panelSkipUpdate" type="boolean" value="false" />
-        </Attributes>
-        <Backdrop bgFile="Interface\BUTTONS\WHITE8X8" edgeFile="Interface\BUTTONS\WHITE8X8" tile="false">
-            <EdgeSize val="1" />
-            <TileSize val="0" />
-            <BackgroundInsets left="0" right="0" top="0" bottom="0" />
-            <Color r="0.2" g="0.2" b="0.2" a="1" />
-            <BorderColor r="0" g="0" b="0" a="1" />
-        </Backdrop>
-        <Layers>
-            <Layer level="BACKGROUND" textureSubLevel="1">
-                <Texture parentKey="Skin" nonBlocking="true" file="Interface\AddOns\SVUI\assets\artwork\Template\DEFAULT2" setAllPoints="true" />
-                <Color r="0.2" g="0.2" b="0.2" a="1" />
-            </Layer>
-            <Layer level="BORDER">
-                <Texture parentKey="BorderLeft" file="Interface\BUTTONS\WHITE8X8">
-                    <Anchors>
-                        <Anchor point="TOPLEFT" relativePoint="TOPLEFT" />
-                        <Anchor point="BOTTOMLEFT" relativePoint="BOTTOMLEFT" />
-                    </Anchors>
-                    <Size>
-                        <AbsDimension x="1" />
-                    </Size>
-                    <Color r="0" g="0" b="0" a="1" />
-                </Texture>
-                <Texture parentKey="BorderRight" file="Interface\BUTTONS\WHITE8X8">
-                    <Anchors>
-                        <Anchor point="TOPRIGHT" relativePoint="TOPRIGHT" />
-                        <Anchor point="BOTTOMRIGHT" relativePoint="BOTTOMRIGHT" />
-                    </Anchors>
-                    <Size>
-                        <AbsDimension x="1" />
-                    </Size>
-                    <Color r="0" g="0" b="0" a="1" />
-                </Texture>
-                <Texture parentKey="BorderTop" file="Interface\BUTTONS\WHITE8X8">
-                    <Anchors>
-                        <Anchor point="TOPLEFT" relativePoint="TOPLEFT" />
-                        <Anchor point="TOPRIGHT" relativePoint="TOPRIGHT" />
-                    </Anchors>
-                    <Size>
-                        <AbsDimension y="1" />
-                    </Size>
-                    <Color r="0" g="0" b="0" a="1" />
-                </Texture>
-                <Texture parentKey="BorderBottom" file="Interface\BUTTONS\WHITE8X8">
-                    <Anchors>
-                        <Anchor point="BOTTOMLEFT" relativePoint="BOTTOMLEFT" />
-                        <Anchor point="BOTTOMRIGHT" relativePoint="BOTTOMRIGHT" />
-                    </Anchors>
-                    <Size>
-                        <AbsDimension y="1" />
-                    </Size>
-                    <Color r="0" g="0" b="0" a="1" />
-                </Texture>
-            </Layer>
-        </Layers>
-    </Frame>
-
-    <Frame name="SVUI_PanelTemplate_FramedBottom" virtual="true">
-        <Attributes>
-            <Attribute name="panelID" type="string" value="framedbottom" />
-            <Attribute name="panelPadding" type="number" value="1" />
-            <Attribute name="panelColor" type="string" value="default" />
-            <Attribute name="panelGradient" type="string" value="darkest" />
-            <Attribute name="panelTexUpdate" type="boolean" value="true" />
-            <Attribute name="panelSkipUpdate" type="boolean" value="false" />
-        </Attributes>
-        <Backdrop bgFile="Interface\BUTTONS\WHITE8X8" edgeFile="Interface\BUTTONS\WHITE8X8" tile="false">
-            <EdgeSize val="1" />
-            <TileSize val="0" />
-            <BackgroundInsets left="0" right="0" top="0" bottom="0" />
-            <Color r="0.2" g="0.2" b="0.2" a="1" />
-            <BorderColor r="0" g="0" b="0" a="1" />
-        </Backdrop>
-        <Layers>
-            <Layer level="BACKGROUND" textureSubLevel="1">
-                <Texture parentKey="Skin" nonBlocking="true" file="Interface\AddOns\SVUI\assets\artwork\Template\DEFAULT" setAllPoints="true" />
-                <Color r="0.2" g="0.2" b="0.2" a="1" />
-            </Layer>
-            <Layer level="BORDER">
-                <Texture parentKey="BorderLeft" file="Interface\BUTTONS\WHITE8X8">
-                    <Anchors>
-                        <Anchor point="TOPLEFT" relativePoint="TOPLEFT" />
-                        <Anchor point="BOTTOMLEFT" relativePoint="BOTTOMLEFT" />
-                    </Anchors>
-                    <Size>
-                        <AbsDimension x="1" />
-                    </Size>
-                    <Color r="0" g="0" b="0" a="1" />
-                </Texture>
-                <Texture parentKey="BorderRight" file="Interface\BUTTONS\WHITE8X8">
-                    <Anchors>
-                        <Anchor point="TOPRIGHT" relativePoint="TOPRIGHT" />
-                        <Anchor point="BOTTOMRIGHT" relativePoint="BOTTOMRIGHT" />
-                    </Anchors>
-                    <Size>
-                        <AbsDimension x="1" />
-                    </Size>
-                    <Color r="0" g="0" b="0" a="1" />
-                </Texture>
-                <Texture parentKey="BorderTop" file="Interface\BUTTONS\WHITE8X8">
-                    <Anchors>
-                        <Anchor point="TOPLEFT" relativePoint="TOPLEFT" />
-                        <Anchor point="TOPRIGHT" relativePoint="TOPRIGHT" />
-                    </Anchors>
-                    <Size>
-                        <AbsDimension y="1" />
-                    </Size>
-                    <Color r="0" g="0" b="0" a="1" />
-                </Texture>
-                <Texture parentKey="BorderBottom" file="Interface\BUTTONS\WHITE8X8">
-                    <Anchors>
-                        <Anchor point="BOTTOMLEFT" relativePoint="BOTTOMLEFT" />
-                        <Anchor point="BOTTOMRIGHT" relativePoint="BOTTOMRIGHT" />
-                    </Anchors>
-                    <Size>
-                        <AbsDimension y="1" />
-                    </Size>
-                    <Color r="0" g="0" b="0" a="1" />
-                </Texture>
-            </Layer>
-        </Layers>
-    </Frame>
-
-    <Frame name="SVUI_PanelTemplate_Bar" virtual="true">
-        <Attributes>
-            <Attribute name="panelID" type="string" value="bar" />
-            <Attribute name="panelPadding" type="number" value="1" />
-            <Attribute name="panelColor" type="string" value="transparent" />
-            <Attribute name="panelGradient" type="boolean" value="false" />
-            <Attribute name="panelTexUpdate" type="boolean" value="false" />
-            <Attribute name="panelSkipUpdate" type="boolean" value="true" />
-        </Attributes>
-        <Backdrop bgFile="Interface\AddOns\SVUI\assets\artwork\Template\DEFAULT" edgeFile="Interface\BUTTONS\WHITE8X8" tile="false">
-            <EdgeSize val="1" />
-            <TileSize val="0" />
-            <BackgroundInsets left="0" right="0" top="0" bottom="0" />
-            <Color r="0" g="0" b="0" a="0.5" />
-            <BorderColor r="0" g="0" b="0" a="1" />
-        </Backdrop>
-        <Layers>
-            <Layer level="BORDER">
-                <Texture parentKey="BorderLeft" file="Interface\BUTTONS\WHITE8X8">
-                    <Anchors>
-                        <Anchor point="TOPLEFT" relativePoint="TOPLEFT" />
-                        <Anchor point="BOTTOMLEFT" relativePoint="BOTTOMLEFT" />
-                    </Anchors>
-                    <Size>
-                        <AbsDimension x="1" />
-                    </Size>
-                    <Color r="0" g="0" b="0" a="1" />
-                </Texture>
-                <Texture parentKey="BorderRight" file="Interface\BUTTONS\WHITE8X8">
-                    <Anchors>
-                        <Anchor point="TOPRIGHT" relativePoint="TOPRIGHT" />
-                        <Anchor point="BOTTOMRIGHT" relativePoint="BOTTOMRIGHT" />
-                    </Anchors>
-                    <Size>
-                        <AbsDimension x="1" />
-                    </Size>
-                    <Color r="0" g="0" b="0" a="1" />
-                </Texture>
-                <Texture parentKey="BorderTop" file="Interface\BUTTONS\WHITE8X8">
-                    <Anchors>
-                        <Anchor point="TOPLEFT" relativePoint="TOPLEFT" />
-                        <Anchor point="TOPRIGHT" relativePoint="TOPRIGHT" />
-                    </Anchors>
-                    <Size>
-                        <AbsDimension y="1" />
-                    </Size>
-                    <Color r="0" g="0" b="0" a="1" />
-                </Texture>
-                <Texture parentKey="BorderBottom" file="Interface\BUTTONS\WHITE8X8">
-                    <Anchors>
-                        <Anchor point="BOTTOMLEFT" relativePoint="BOTTOMLEFT" />
-                        <Anchor point="BOTTOMRIGHT" relativePoint="BOTTOMRIGHT" />
-                    </Anchors>
-                    <Size>
-                        <AbsDimension y="1" />
-                    </Size>
-                    <Color r="0" g="0" b="0" a="1" />
-                </Texture>
-            </Layer>
-        </Layers>
-    </Frame>
-
-    <Frame name="SVUI_PanelTemplate_Slot" virtual="true">
-        <Attributes>
-            <Attribute name="panelID" type="string" value="slot" />
-            <Attribute name="panelPadding" type="number" value="2" />
-            <Attribute name="panelColor" type="string" value="transparent" />
-            <Attribute name="panelGradient" type="boolean" value="false" />
-            <Attribute name="panelTexUpdate" type="boolean" value="false" />
-            <Attribute name="panelSkipUpdate" type="boolean" value="true" />
-        </Attributes>
-        <Backdrop bgFile="Interface\AddOns\SVUI\assets\artwork\Template\DEFAULT" edgeFile="Interface\BUTTONS\WHITE8X8" tile="false">
-            <EdgeSize val="1" />
-            <TileSize val="0" />
-            <BackgroundInsets left="1" right="1" top="1" bottom="1" />
-            <Color r="0" g="0" b="0" a="0.5" />
-            <BorderColor r="0" g="0" b="0" a="1" />
-        </Backdrop>
-        <Layers>
-            <Layer level="BORDER">
-                <Texture parentKey="BorderLeft" file="Interface\BUTTONS\WHITE8X8">
-                    <Anchors>
-                        <Anchor point="TOPLEFT" relativePoint="TOPLEFT" />
-                        <Anchor point="BOTTOMLEFT" relativePoint="BOTTOMLEFT" />
-                    </Anchors>
-                    <Size>
-                        <AbsDimension x="2" />
-                    </Size>
-                    <Color r="0" g="0" b="0" a="1" />
-                </Texture>
-                <Texture parentKey="BorderRight" file="Interface\BUTTONS\WHITE8X8">
-                    <Anchors>
-                        <Anchor point="TOPRIGHT" relativePoint="TOPRIGHT" />
-                        <Anchor point="BOTTOMRIGHT" relativePoint="BOTTOMRIGHT" />
-                    </Anchors>
-                    <Size>
-                        <AbsDimension x="2" />
-                    </Size>
-                    <Color r="0" g="0" b="0" a="1" />
-                </Texture>
-                <Texture parentKey="BorderTop" file="Interface\BUTTONS\WHITE8X8">
-                    <Anchors>
-                        <Anchor point="TOPLEFT" relativePoint="TOPLEFT" />
-                        <Anchor point="TOPRIGHT" relativePoint="TOPRIGHT" />
-                    </Anchors>
-                    <Size>
-                        <AbsDimension y="2" />
-                    </Size>
-                    <Color r="0" g="0" b="0" a="1" />
-                </Texture>
-                <Texture parentKey="BorderBottom" file="Interface\BUTTONS\WHITE8X8">
-                    <Anchors>
-                        <Anchor point="BOTTOMLEFT" relativePoint="BOTTOMLEFT" />
-                        <Anchor point="BOTTOMRIGHT" relativePoint="BOTTOMRIGHT" />
-                    </Anchors>
-                    <Size>
-                        <AbsDimension y="2" />
-                    </Size>
-                    <Color r="0" g="0" b="0" a="1" />
-                </Texture>
-            </Layer>
-        </Layers>
-        <Frames>
-            <Frame parentKey="Shadow" inherits="SVUI_ShadowTemplate" />
-        </Frames>
-    </Frame>
-
-    <Frame name="SVUI_PanelTemplate_Icon" virtual="true">
-        <Attributes>
-            <Attribute name="panelID" type="string" value="slot" />
-            <Attribute name="panelPadding" type="number" value="2" />
-            <Attribute name="panelColor" type="string" value="invisible" />
-            <Attribute name="panelGradient" type="boolean" value="false" />
-            <Attribute name="panelTexUpdate" type="boolean" value="false" />
-            <Attribute name="panelSkipUpdate" type="boolean" value="true" />
-        </Attributes>
-        <Backdrop bgFile="Interface\AddOns\SVUI\assets\artwork\Template\DEFAULT" edgeFile="Interface\BUTTONS\WHITE8X8" tile="false">
-            <EdgeSize val="1" />
-            <TileSize val="0" />
-            <BackgroundInsets left="1" right="1" top="1" bottom="1" />
-            <Color r="0" g="0" b="0" a="0" />
-            <BorderColor r="0" g="0" b="0" a="1" />
-        </Backdrop>
-        <Layers>
-            <Layer level="BORDER">
-                <Texture parentKey="BorderLeft" file="Interface\BUTTONS\WHITE8X8">
-                    <Anchors>
-                        <Anchor point="TOPLEFT" relativePoint="TOPLEFT" />
-                        <Anchor point="BOTTOMLEFT" relativePoint="BOTTOMLEFT" />
-                    </Anchors>
-                    <Size>
-                        <AbsDimension x="2" />
-                    </Size>
-                    <Color r="0" g="0" b="0" a="1" />
-                </Texture>
-                <Texture parentKey="BorderRight" file="Interface\BUTTONS\WHITE8X8">
-                    <Anchors>
-                        <Anchor point="TOPRIGHT" relativePoint="TOPRIGHT" />
-                        <Anchor point="BOTTOMRIGHT" relativePoint="BOTTOMRIGHT" />
-                    </Anchors>
-                    <Size>
-                        <AbsDimension x="2" />
-                    </Size>
-                    <Color r="0" g="0" b="0" a="1" />
-                </Texture>
-                <Texture parentKey="BorderTop" file="Interface\BUTTONS\WHITE8X8">
-                    <Anchors>
-                        <Anchor point="TOPLEFT" relativePoint="TOPLEFT" />
-                        <Anchor point="TOPRIGHT" relativePoint="TOPRIGHT" />
-                    </Anchors>
-                    <Size>
-                        <AbsDimension y="2" />
-                    </Size>
-                    <Color r="0" g="0" b="0" a="1" />
-                </Texture>
-                <Texture parentKey="BorderBottom" file="Interface\BUTTONS\WHITE8X8">
-                    <Anchors>
-                        <Anchor point="BOTTOMLEFT" relativePoint="BOTTOMLEFT" />
-                        <Anchor point="BOTTOMRIGHT" relativePoint="BOTTOMRIGHT" />
-                    </Anchors>
-                    <Size>
-                        <AbsDimension y="2" />
-                    </Size>
-                    <Color r="0" g="0" b="0" a="1" />
-                </Texture>
-            </Layer>
-        </Layers>
-        <Frames>
-            <Frame parentKey="Shadow" inherits="SVUI_ShadowTemplate" />
-        </Frames>
-    </Frame>
-
-    <Frame name="SVUI_PanelTemplate_Checkbox" virtual="true">
-        <Attributes>
-            <Attribute name="panelID" type="string" value="checkbox" />
-            <Attribute name="panelPadding" type="number" value="1" />
-            <Attribute name="panelBorderColor" type="string" value="default" />
-            <Attribute name="panelColor" type="string" value="transparent" />
-            <Attribute name="panelGradient" type="boolean" value="false" />
-            <Attribute name="panelTexUpdate" type="boolean" value="false" />
+            <Attribute name="panelID" type="string" value="paper" />
+            <Attribute name="panelPadding" type="number" value="3" />
+            <Attribute name="panelColor" type="string" value="white" />
+            <Attribute name="panelGradient" type="string" value="white" />
+            <Attribute name="panelTexUpdate" type="boolean" value="true" />
             <Attribute name="panelSkipUpdate" type="boolean" value="true" />
         </Attributes>
-        <Backdrop bgFile="Interface\AddOns\SVUI\assets\artwork\Template\DEFAULT" edgeFile="Interface\BUTTONS\WHITE8X8" tile="false">
+        <Backdrop bgFile="Interface\AddOns\SVUI\assets\artwork\Template\Background\PAPER" edgeFile="Interface\BUTTONS\WHITE8X8" tile="false">
             <EdgeSize val="1" />
             <TileSize val="0" />
             <BackgroundInsets left="0" right="0" top="0" bottom="0" />
-            <Color r="0" g="0" b="0" a="0.5" />
-            <BorderColor r="0.1" g="0.1" b="0.1" a="1" />
+            <Color r="1" g="1" b="1" a="1" />
+            <BorderColor r="0" g="0" b="0" a="1" />
         </Backdrop>
         <Layers>
-            <Layer level="BORDER">
-                <Texture parentKey="BorderLeft" file="Interface\BUTTONS\WHITE8X8">
-                    <Anchors>
-                        <Anchor point="TOPLEFT" relativePoint="TOPLEFT" />
-                        <Anchor point="BOTTOMLEFT" relativePoint="BOTTOMLEFT" />
-                    </Anchors>
-                    <Size>
-                        <AbsDimension x="1" />
-                    </Size>
-                    <Color r="0.1" g="0.1" b="0.1" a="1" />
-                </Texture>
-                <Texture parentKey="BorderRight" file="Interface\BUTTONS\WHITE8X8">
-                    <Anchors>
-                        <Anchor point="TOPRIGHT" relativePoint="TOPRIGHT" />
-                        <Anchor point="BOTTOMRIGHT" relativePoint="BOTTOMRIGHT" />
-                    </Anchors>
-                    <Size>
-                        <AbsDimension x="1" />
-                    </Size>
-                    <Color r="0.1" g="0.1" b="0.1" a="1" />
-                </Texture>
-                <Texture parentKey="BorderTop" file="Interface\BUTTONS\WHITE8X8">
-                    <Anchors>
-                        <Anchor point="TOPLEFT" relativePoint="TOPLEFT" />
-                        <Anchor point="TOPRIGHT" relativePoint="TOPRIGHT" />
-                    </Anchors>
-                    <Size>
-                        <AbsDimension y="1" />
-                    </Size>
-                    <Color r="0.1" g="0.1" b="0.1" a="1" />
-                </Texture>
-                <Texture parentKey="BorderBottom" file="Interface\BUTTONS\WHITE8X8">
-                    <Anchors>
-                        <Anchor point="BOTTOMLEFT" relativePoint="BOTTOMLEFT" />
-                        <Anchor point="BOTTOMRIGHT" relativePoint="BOTTOMRIGHT" />
-                    </Anchors>
-                    <Size>
-                        <AbsDimension y="1" />
-                    </Size>
-                    <Color r="0.1" g="0.1" b="0.1" a="1" />
-                </Texture>
+            <Layer level="BACKGROUND" textureSubLevel="1">
+                <Texture parentKey="Skin" nonBlocking="true" file="Interface\AddOns\SVUI\assets\artwork\Template\Background\PAPER" setAllPoints="true" />
+                <Color r="1" g="1" b="1" a="1" />
             </Layer>
-        </Layers>
-    </Frame>
-
-    <Frame name="SVUI_PanelTemplate_Inset" virtual="true">
-        <Attributes>
-            <Attribute name="panelID" type="string" value="inset" />
-            <Attribute name="panelPadding" type="number" value="1" />
-            <Attribute name="panelColor" type="string" value="transparent" />
-            <Attribute name="panelGradient" type="boolean" value="false" />
-            <Attribute name="panelTexUpdate" type="boolean" value="false" />
-            <Attribute name="panelSkipUpdate" type="boolean" value="true" />
-        </Attributes>
-        <Backdrop bgFile="Interface\AddOns\SVUI\assets\artwork\Template\DEFAULT" edgeFile="Interface\AddOns\SVUI\assets\artwork\Template\INSET" tile="false">
-            <EdgeSize val="6" />
-            <TileSize val="0" />
-            <BackgroundInsets left="0" right="0" top="0" bottom="0" />
-            <Color r="0" g="0" b="0" a="0.5" />
-            <BorderColor r="0" g="0" b="0" a="0.5" />
-        </Backdrop>
-        <Layers>
             <Layer level="BORDER">
                 <Texture parentKey="BorderLeft" file="Interface\BUTTONS\WHITE8X8">
                     <Anchors>
@@ -702,7 +27,7 @@
                         <Anchor point="BOTTOMLEFT" relativePoint="BOTTOMLEFT" />
                     </Anchors>
                     <Size>
-                        <AbsDimension x="1" />
+                        <AbsDimension x="3" />
                     </Size>
                     <Color r="0" g="0" b="0" a="1" />
                 </Texture>
@@ -712,7 +37,7 @@
                         <Anchor point="BOTTOMRIGHT" relativePoint="BOTTOMRIGHT" />
                     </Anchors>
                     <Size>
-                        <AbsDimension x="1" />
+                        <AbsDimension x="3" />
                     </Size>
                     <Color r="0" g="0" b="0" a="1" />
                 </Texture>
@@ -722,7 +47,7 @@
                         <Anchor point="TOPRIGHT" relativePoint="TOPRIGHT" />
                     </Anchors>
                     <Size>
-                        <AbsDimension y="1" />
+                        <AbsDimension y="3" />
                     </Size>
                     <Color r="0" g="0" b="0" a="1" />
                 </Texture>
@@ -732,7 +57,7 @@
                         <Anchor point="BOTTOMRIGHT" relativePoint="BOTTOMRIGHT" />
                     </Anchors>
                     <Size>
-                        <AbsDimension y="1" />
+                        <AbsDimension y="3" />
                     </Size>
                     <Color r="0" g="0" b="0" a="1" />
                 </Texture>
@@ -740,70 +65,26 @@
         </Layers>
     </Frame>

-    <Frame name="SVUI_PanelTemplate_Comic" virtual="true">
-        <Attributes>
-            <Attribute name="panelID" type="string" value="comic" />
-            <Attribute name="panelPadding" type="number" value="1" />
-            <Attribute name="panelColor" type="string" value="class" />
-            <Attribute name="panelGradient" type="string" value="class" />
-            <Attribute name="panelTexUpdate" type="boolean" value="true" />
-            <Attribute name="panelSkipUpdate" type="boolean" value="false" />
-        </Attributes>
-        <Backdrop bgFile="Interface\AddOns\SVUI\assets\artwork\Template\Background\COMIC1" tile="false">
-            <TileSize val="0" />
-            <BackgroundInsets left="0" right="0" top="0" bottom="0" />
-            <Color r="0.2" g="0.2" b="0.2" a="1" />
-        </Backdrop>
-        <Layers>
-            <Layer level="BACKGROUND" textureSubLevel="1">
-                <Texture parentKey="Skin" nonBlocking="true" file="Interface\AddOns\SVUI\assets\artwork\Template\Background\COMIC1" setAllPoints="true" />
-                <Color r="0.2" g="0.2" b="0.2" a="1" />
-            </Layer>
-        </Layers>
-    </Frame>
-
-    <Frame name="SVUI_PanelTemplate_Model" virtual="true">
-        <Attributes>
-            <Attribute name="panelID" type="string" value="model" />
-            <Attribute name="panelPadding" type="number" value="1" />
-            <Attribute name="panelColor" type="string" value="special" />
-            <Attribute name="panelGradient" type="string" value="class" />
-            <Attribute name="panelTexUpdate" type="boolean" value="true" />
-            <Attribute name="panelSkipUpdate" type="boolean" value="false" />
-        </Attributes>
-        <Backdrop bgFile="Interface\AddOns\SVUI\assets\artwork\Template\Background\COMIC-MODEL" tile="false">
-            <TileSize val="0" />
-            <BackgroundInsets left="0" right="0" top="0" bottom="0" />
-            <Color r="0.37" g="0.32" b="0.29" a="1" />
-        </Backdrop>
-        <Layers>
-            <Layer level="BACKGROUND" textureSubLevel="1">
-                <Texture parentKey="Skin" nonBlocking="true" file="Interface\AddOns\SVUI\assets\artwork\Template\Background\COMIC-MODEL" setAllPoints="true" />
-                <Color r="0.37" g="0.32" b="0.29" a="1" />
-            </Layer>
-        </Layers>
-    </Frame>
-
-    <Frame name="SVUI_PanelTemplate_ModelBorder" virtual="true">
+    <Frame name="SVUI_StyleTemplate_Container" virtual="true">
         <Attributes>
-            <Attribute name="panelID" type="string" value="modelborder" />
+            <Attribute name="panelID" type="string" value="container" />
             <Attribute name="panelPadding" type="number" value="2" />
-            <Attribute name="panelColor" type="string" value="special" />
-            <Attribute name="panelGradient" type="string" value="class" />
+            <Attribute name="panelColor" type="string" value="container" />
+            <Attribute name="panelGradient" type="string" value="container" />
             <Attribute name="panelTexUpdate" type="boolean" value="true" />
             <Attribute name="panelSkipUpdate" type="boolean" value="false" />
         </Attributes>
-        <Backdrop bgFile="Interface\AddOns\SVUI\assets\artwork\Template\Background\COMIC-MODEL" edgeFile="Interface\BUTTONS\WHITE8X8" tile="false">
-            <EdgeSize val="2" />
+        <Backdrop bgFile="Interface\AddOns\SVUI\assets\artwork\Template\Background\PAPER" edgeFile="Interface\BUTTONS\WHITE8X8" tile="false">
+            <EdgeSize val="1" />
             <TileSize val="0" />
             <BackgroundInsets left="0" right="0" top="0" bottom="0" />
-            <Color r="0" g="0" b="0" a="0.5" />
+            <Color r="0.22" g="0.21" b="0.2" a="1" />
             <BorderColor r="0" g="0" b="0" a="1" />
         </Backdrop>
         <Layers>
             <Layer level="BACKGROUND" textureSubLevel="1">
-                <Texture parentKey="Skin" nonBlocking="true" file="Interface\AddOns\SVUI\assets\artwork\Template\Background\COMIC-MODEL" setAllPoints="true" />
-                <Color r="0.37" g="0.32" b="0.29" a="1" />
+                <Texture parentKey="Skin" nonBlocking="true" file="Interface\AddOns\SVUI\assets\artwork\Template\Background\PAPER" setAllPoints="true" />
+                <Color r="0.22" g="0.21" b="0.2" a="1" />
             </Layer>
             <Layer level="BORDER">
                 <Texture parentKey="BorderLeft" file="Interface\BUTTONS\WHITE8X8">
@@ -848,31 +129,28 @@
                 </Texture>
             </Layer>
         </Layers>
-        <Frames>
-            <Frame parentKey="Shadow" inherits="SVUI_ShadowTemplate" />
-        </Frames>
     </Frame>

-    <Frame name="SVUI_PanelTemplate_Paper" virtual="true">
+    <Frame name="SVUI_StyleTemplate_Pattern" virtual="true">
         <Attributes>
-            <Attribute name="panelID" type="string" value="paper" />
+            <Attribute name="panelID" type="string" value="pattern" />
             <Attribute name="panelPadding" type="number" value="3" />
-            <Attribute name="panelColor" type="string" value="white" />
-            <Attribute name="panelGradient" type="string" value="white" />
+            <Attribute name="panelColor" type="string" value="special" />
+            <Attribute name="panelGradient" type="string" value="special" />
             <Attribute name="panelTexUpdate" type="boolean" value="true" />
-            <Attribute name="panelSkipUpdate" type="boolean" value="true" />
+            <Attribute name="panelSkipUpdate" type="boolean" value="false" />
         </Attributes>
-        <Backdrop bgFile="Interface\AddOns\SVUI\assets\artwork\Template\Background\PAPER" edgeFile="Interface\BUTTONS\WHITE8X8" tile="false">
+        <Backdrop bgFile="Interface\AddOns\SVUI\assets\artwork\Template\Background\PATTERN1" edgeFile="Interface\BUTTONS\WHITE8X8" tile="false">
             <EdgeSize val="1" />
             <TileSize val="0" />
             <BackgroundInsets left="0" right="0" top="0" bottom="0" />
-            <Color r="1" g="1" b="1" a="1" />
+            <Color r="0.37" g="0.32" b="0.29" a="1" />
             <BorderColor r="0" g="0" b="0" a="1" />
         </Backdrop>
         <Layers>
             <Layer level="BACKGROUND" textureSubLevel="1">
-                <Texture parentKey="Skin" nonBlocking="true" file="Interface\AddOns\SVUI\assets\artwork\Template\Background\PAPER" setAllPoints="true" />
-                <Color r="1" g="1" b="1" a="1" />
+                <Texture parentKey="Skin" nonBlocking="true" file="Interface\AddOns\SVUI\assets\artwork\Template\Background\PATTERN1" setAllPoints="true" />
+                <Color r="0.37" g="0.32" b="0.29" a="1" />
             </Layer>
             <Layer level="BORDER">
                 <Texture parentKey="BorderLeft" file="Interface\BUTTONS\WHITE8X8">
@@ -917,93 +195,74 @@
                 </Texture>
             </Layer>
         </Layers>
+        <Frames>
+            <Frame parentKey="Shadow" inherits="SVUI_ShadowTemplate" />
+        </Frames>
     </Frame>

-    <Frame name="SVUI_PanelTemplate_Container" virtual="true">
+    <Frame name="SVUI_StyleTemplate_Premium" virtual="true">
         <Attributes>
-            <Attribute name="panelID" type="string" value="container" />
-            <Attribute name="panelPadding" type="number" value="2" />
-            <Attribute name="panelColor" type="string" value="container" />
-            <Attribute name="panelGradient" type="string" value="container" />
+            <Attribute name="panelID" type="string" value="premium" />
+            <Attribute name="panelPadding" type="number" value="1" />
+            <Attribute name="panelColor" type="string" value="class" />
+            <Attribute name="panelGradient" type="string" value="class" />
             <Attribute name="panelTexUpdate" type="boolean" value="true" />
             <Attribute name="panelSkipUpdate" type="boolean" value="false" />
         </Attributes>
-        <Backdrop bgFile="Interface\AddOns\SVUI\assets\artwork\Template\Background\PAPER" edgeFile="Interface\BUTTONS\WHITE8X8" tile="false">
-            <EdgeSize val="1" />
+        <Backdrop bgFile="Interface\AddOns\SVUI\assets\artwork\Template\Background\COMIC1" tile="false">
             <TileSize val="0" />
             <BackgroundInsets left="0" right="0" top="0" bottom="0" />
-            <Color r="0.22" g="0.21" b="0.2" a="1" />
-            <BorderColor r="0" g="0" b="0" a="1" />
+            <Color r="0.2" g="0.2" b="0.2" a="1" />
         </Backdrop>
         <Layers>
             <Layer level="BACKGROUND" textureSubLevel="1">
-                <Texture parentKey="Skin" nonBlocking="true" file="Interface\AddOns\SVUI\assets\artwork\Template\Background\PAPER" setAllPoints="true" />
-                <Color r="0.22" g="0.21" b="0.2" a="1" />
-            </Layer>
-            <Layer level="BORDER">
-                <Texture parentKey="BorderLeft" file="Interface\BUTTONS\WHITE8X8">
-                    <Anchors>
-                        <Anchor point="TOPLEFT" relativePoint="TOPLEFT" />
-                        <Anchor point="BOTTOMLEFT" relativePoint="BOTTOMLEFT" />
-                    </Anchors>
-                    <Size>
-                        <AbsDimension x="2" />
-                    </Size>
-                    <Color r="0" g="0" b="0" a="1" />
-                </Texture>
-                <Texture parentKey="BorderRight" file="Interface\BUTTONS\WHITE8X8">
-                    <Anchors>
-                        <Anchor point="TOPRIGHT" relativePoint="TOPRIGHT" />
-                        <Anchor point="BOTTOMRIGHT" relativePoint="BOTTOMRIGHT" />
-                    </Anchors>
-                    <Size>
-                        <AbsDimension x="2" />
-                    </Size>
-                    <Color r="0" g="0" b="0" a="1" />
-                </Texture>
-                <Texture parentKey="BorderTop" file="Interface\BUTTONS\WHITE8X8">
-                    <Anchors>
-                        <Anchor point="TOPLEFT" relativePoint="TOPLEFT" />
-                        <Anchor point="TOPRIGHT" relativePoint="TOPRIGHT" />
-                    </Anchors>
-                    <Size>
-                        <AbsDimension y="2" />
-                    </Size>
-                    <Color r="0" g="0" b="0" a="1" />
-                </Texture>
-                <Texture parentKey="BorderBottom" file="Interface\BUTTONS\WHITE8X8">
-                    <Anchors>
-                        <Anchor point="BOTTOMLEFT" relativePoint="BOTTOMLEFT" />
-                        <Anchor point="BOTTOMRIGHT" relativePoint="BOTTOMRIGHT" />
-                    </Anchors>
-                    <Size>
-                        <AbsDimension y="2" />
-                    </Size>
-                    <Color r="0" g="0" b="0" a="1" />
-                </Texture>
+                <Texture parentKey="Skin" nonBlocking="true" file="Interface\AddOns\SVUI\assets\artwork\Template\Background\COMIC1" setAllPoints="true" />
+                <Color r="0.2" g="0.2" b="0.2" a="1" />
             </Layer>
         </Layers>
     </Frame>

-    <Frame name="SVUI_PanelTemplate_Pattern" virtual="true">
+    <Frame name="SVUI_StyleTemplate_Model" virtual="true">
         <Attributes>
-            <Attribute name="panelID" type="string" value="pattern" />
-            <Attribute name="panelPadding" type="number" value="3" />
+            <Attribute name="panelID" type="string" value="model" />
+            <Attribute name="panelPadding" type="number" value="1" />
             <Attribute name="panelColor" type="string" value="special" />
-            <Attribute name="panelGradient" type="string" value="special" />
+            <Attribute name="panelGradient" type="string" value="class" />
             <Attribute name="panelTexUpdate" type="boolean" value="true" />
             <Attribute name="panelSkipUpdate" type="boolean" value="false" />
         </Attributes>
-        <Backdrop bgFile="Interface\AddOns\SVUI\assets\artwork\Template\Background\PATTERN1" edgeFile="Interface\BUTTONS\WHITE8X8" tile="false">
-            <EdgeSize val="1" />
+        <Backdrop bgFile="Interface\AddOns\SVUI\assets\artwork\Template\Background\COMIC-MODEL" tile="false">
             <TileSize val="0" />
             <BackgroundInsets left="0" right="0" top="0" bottom="0" />
             <Color r="0.37" g="0.32" b="0.29" a="1" />
+        </Backdrop>
+        <Layers>
+            <Layer level="BACKGROUND" textureSubLevel="1">
+                <Texture parentKey="Skin" nonBlocking="true" file="Interface\AddOns\SVUI\assets\artwork\Template\Background\COMIC-MODEL" setAllPoints="true" />
+                <Color r="0.37" g="0.32" b="0.29" a="1" />
+            </Layer>
+        </Layers>
+    </Frame>
+
+    <Frame name="SVUI_StyleTemplate_ModelBorder" virtual="true">
+        <Attributes>
+            <Attribute name="panelID" type="string" value="modelborder" />
+            <Attribute name="panelPadding" type="number" value="2" />
+            <Attribute name="panelColor" type="string" value="special" />
+            <Attribute name="panelGradient" type="string" value="class" />
+            <Attribute name="panelTexUpdate" type="boolean" value="true" />
+            <Attribute name="panelSkipUpdate" type="boolean" value="false" />
+        </Attributes>
+        <Backdrop bgFile="Interface\AddOns\SVUI\assets\artwork\Template\Background\COMIC-MODEL" edgeFile="Interface\BUTTONS\WHITE8X8" tile="false">
+            <EdgeSize val="2" />
+            <TileSize val="0" />
+            <BackgroundInsets left="0" right="0" top="0" bottom="0" />
+            <Color r="0" g="0" b="0" a="0.5" />
             <BorderColor r="0" g="0" b="0" a="1" />
         </Backdrop>
         <Layers>
             <Layer level="BACKGROUND" textureSubLevel="1">
-                <Texture parentKey="Skin" nonBlocking="true" file="Interface\AddOns\SVUI\assets\artwork\Template\Background\PATTERN1" setAllPoints="true" />
+                <Texture parentKey="Skin" nonBlocking="true" file="Interface\AddOns\SVUI\assets\artwork\Template\Background\COMIC-MODEL" setAllPoints="true" />
                 <Color r="0.37" g="0.32" b="0.29" a="1" />
             </Layer>
             <Layer level="BORDER">
@@ -1013,7 +272,7 @@
                         <Anchor point="BOTTOMLEFT" relativePoint="BOTTOMLEFT" />
                     </Anchors>
                     <Size>
-                        <AbsDimension x="3" />
+                        <AbsDimension x="2" />
                     </Size>
                     <Color r="0" g="0" b="0" a="1" />
                 </Texture>
@@ -1023,7 +282,7 @@
                         <Anchor point="BOTTOMRIGHT" relativePoint="BOTTOMRIGHT" />
                     </Anchors>
                     <Size>
-                        <AbsDimension x="3" />
+                        <AbsDimension x="2" />
                     </Size>
                     <Color r="0" g="0" b="0" a="1" />
                 </Texture>
@@ -1033,7 +292,7 @@
                         <Anchor point="TOPRIGHT" relativePoint="TOPRIGHT" />
                     </Anchors>
                     <Size>
-                        <AbsDimension y="3" />
+                        <AbsDimension y="2" />
                     </Size>
                     <Color r="0" g="0" b="0" a="1" />
                 </Texture>
@@ -1043,7 +302,7 @@
                         <Anchor point="BOTTOMRIGHT" relativePoint="BOTTOMRIGHT" />
                     </Anchors>
                     <Size>
-                        <AbsDimension y="3" />
+                        <AbsDimension y="2" />
                     </Size>
                     <Color r="0" g="0" b="0" a="1" />
                 </Texture>
@@ -1054,9 +313,9 @@
         </Frames>
     </Frame>

-    <Frame name="SVUI_PanelTemplate_Action" virtual="true">
+    <Frame name="SVUI_StyleTemplate_Composite1" virtual="true">
         <Attributes>
-            <Attribute name="panelID" type="string" value="action" />
+            <Attribute name="panelID" type="string" value="composite1" />
             <Attribute name="panelPadding" type="number" value="2" />
             <Attribute name="panelColor" type="string" value="default" />
             <Attribute name="panelGradient" type="string" value="special" />
@@ -1076,7 +335,7 @@
                 <Color r="0.2" g="0.2" b="0.2" a="1" />
             </Layer>
             <Layer level="BACKGROUND" textureSubLevel="2">
-                <Texture parentKey="ExtendedTopLeft" nonBlocking="true" file="Interface\AddOns\SVUI\assets\artwork\Template\Extended\ACTION_TOPLEFT">
+                <Texture parentKey="ExtendedTopLeft" nonBlocking="true" file="Interface\AddOns\SVUI\assets\artwork\Template\Extended\HALFTONE_TOPLEFT">
                     <Anchors>
                         <Anchor point="TOPLEFT" relativePoint="TOPLEFT" />
                         <Anchor point="TOPRIGHT" relativePoint="TOP" />
@@ -1084,7 +343,7 @@
                     </Anchors>
                     <Color r="0.05" g="0.05" b="0.05" a="0.5" />
                 </Texture>
-                <Texture parentKey="ExtendedTopRight" nonBlocking="true" file="Interface\AddOns\SVUI\assets\artwork\Template\Extended\ACTION_TOPRIGHT">
+                <Texture parentKey="ExtendedTopRight" nonBlocking="true" file="Interface\AddOns\SVUI\assets\artwork\Template\Extended\HALFTONE_TOPRIGHT">
                     <Anchors>
                         <Anchor point="TOPRIGHT" relativePoint="TOPRIGHT" />
                         <Anchor point="TOPLEFT" relativePoint="TOP" />
@@ -1092,7 +351,7 @@
                     </Anchors>
                     <Color r="0.05" g="0.05" b="0.05" a="0.5" />
                 </Texture>
-                <Texture parentKey="ExtendedBottomLeft" nonBlocking="true" file="Interface\AddOns\SVUI\assets\artwork\Template\Extended\ACTION_BOTTOMLEFT">
+                <Texture parentKey="ExtendedBottomLeft" nonBlocking="true" file="Interface\AddOns\SVUI\assets\artwork\Template\Extended\HALFTONE_BOTTOMLEFT">
                     <Anchors>
                         <Anchor point="BOTTOMLEFT" relativePoint="BOTTOMLEFT" />
                         <Anchor point="BOTTOMRIGHT" relativePoint="BOTTOM" />
@@ -1100,7 +359,7 @@
                     </Anchors>
                     <Color r="0.1" g="0.1" b="0.1" a="0.5" />
                 </Texture>
-                <Texture parentKey="ExtendedBottomRight" nonBlocking="true" file="Interface\AddOns\SVUI\assets\artwork\Template\Extended\ACTION_BOTTOMRIGHT">
+                <Texture parentKey="ExtendedBottomRight" nonBlocking="true" file="Interface\AddOns\SVUI\assets\artwork\Template\Extended\HALFTONE_BOTTOMRIGHT">
                     <Anchors>
                         <Anchor point="BOTTOMRIGHT" relativePoint="BOTTOMRIGHT" />
                         <Anchor point="BOTTOMLEFT" relativePoint="BOTTOM" />
@@ -1157,9 +416,9 @@
         </Frames>
     </Frame>

-    <Frame name="SVUI_PanelTemplate_Halftone" virtual="true">
+    <Frame name="SVUI_StyleTemplate_Composite2" virtual="true">
         <Attributes>
-            <Attribute name="panelID" type="string" value="halftone" />
+            <Attribute name="panelID" type="string" value="composite2" />
             <Attribute name="panelPadding" type="number" value="2" />
             <Attribute name="panelColor" type="string" value="default" />
             <Attribute name="panelGradient" type="string" value="special" />
@@ -1179,7 +438,7 @@
                 <Color r="0.2" g="0.2" b="0.2" a="1" />
             </Layer>
             <Layer level="BACKGROUND" textureSubLevel="2">
-                <Texture parentKey="ExtendedTopLeft" nonBlocking="true" file="Interface\AddOns\SVUI\assets\artwork\Template\Extended\HALFTONE_TOPLEFT">
+                <Texture parentKey="ExtendedTopLeft" nonBlocking="true" file="Interface\AddOns\SVUI\assets\artwork\Template\Extended\ACTION_TOPLEFT">
                     <Anchors>
                         <Anchor point="TOPLEFT" relativePoint="TOPLEFT" />
                         <Anchor point="TOPRIGHT" relativePoint="TOP" />
@@ -1187,7 +446,7 @@
                     </Anchors>
                     <Color r="0.05" g="0.05" b="0.05" a="0.5" />
                 </Texture>
-                <Texture parentKey="ExtendedTopRight" nonBlocking="true" file="Interface\AddOns\SVUI\assets\artwork\Template\Extended\HALFTONE_TOPRIGHT">
+                <Texture parentKey="ExtendedTopRight" nonBlocking="true" file="Interface\AddOns\SVUI\assets\artwork\Template\Extended\ACTION_TOPRIGHT">
                     <Anchors>
                         <Anchor point="TOPRIGHT" relativePoint="TOPRIGHT" />
                         <Anchor point="TOPLEFT" relativePoint="TOP" />
@@ -1195,7 +454,7 @@
                     </Anchors>
                     <Color r="0.05" g="0.05" b="0.05" a="0.5" />
                 </Texture>
-                <Texture parentKey="ExtendedBottomLeft" nonBlocking="true" file="Interface\AddOns\SVUI\assets\artwork\Template\Extended\HALFTONE_BOTTOMLEFT">
+                <Texture parentKey="ExtendedBottomLeft" nonBlocking="true" file="Interface\AddOns\SVUI\assets\artwork\Template\Extended\ACTION_BOTTOMLEFT">
                     <Anchors>
                         <Anchor point="BOTTOMLEFT" relativePoint="BOTTOMLEFT" />
                         <Anchor point="BOTTOMRIGHT" relativePoint="BOTTOM" />
@@ -1203,7 +462,7 @@
                     </Anchors>
                     <Color r="0.1" g="0.1" b="0.1" a="0.5" />
                 </Texture>
-                <Texture parentKey="ExtendedBottomRight" nonBlocking="true" file="Interface\AddOns\SVUI\assets\artwork\Template\Extended\HALFTONE_BOTTOMRIGHT">
+                <Texture parentKey="ExtendedBottomRight" nonBlocking="true" file="Interface\AddOns\SVUI\assets\artwork\Template\Extended\ACTION_BOTTOMRIGHT">
                     <Anchors>
                         <Anchor point="BOTTOMRIGHT" relativePoint="BOTTOMRIGHT" />
                         <Anchor point="BOTTOMLEFT" relativePoint="BOTTOM" />
@@ -1260,7 +519,7 @@
         </Frames>
     </Frame>

-    <Frame name="SVUI_PanelTemplate_Blackout" virtual="true">
+    <Frame name="SVUI_StyleTemplate_Blackout" virtual="true">
         <Attributes>
             <Attribute name="panelID" type="string" value="blackout" />
             <Attribute name="panelPadding" type="number" value="2" />
@@ -1330,7 +589,7 @@
         </Frames>
     </Frame>

-    <Frame name="SVUI_PanelTemplate_UnitLarge" virtual="true">
+    <Frame name="SVUI_StyleTemplate_UnitLarge" virtual="true">
         <Attributes>
             <Attribute name="panelID" type="string" value="unitlarge" />
             <Attribute name="panelPadding" type="number" value="0" />
@@ -1349,7 +608,7 @@
         </Layers>
     </Frame>

-    <Frame name="SVUI_PanelTemplate_UnitSmall" virtual="true">
+    <Frame name="SVUI_StyleTemplate_UnitSmall" virtual="true">
         <Attributes>
             <Attribute name="panelID" type="string" value="unitlarge" />
             <Attribute name="panelPadding" type="number" value="0" />
diff --git a/Interface/AddOns/SVUI/framework/docks/dock_core.lua b/Interface/AddOns/SVUI/framework/docks/dock_core.lua
index d45dabe..c3e10d5 100644
--- a/Interface/AddOns/SVUI/framework/docks/dock_core.lua
+++ b/Interface/AddOns/SVUI/framework/docks/dock_core.lua
@@ -105,54 +105,97 @@ local ErrorSound = SV.Sounds:Blend("Malfunction", "Sparks", "Wired");
 CORE FUNCTIONS
 ##########################################################
 ]]--
-_G.HideSuperDocks = function(self, button)
+_G.ToggleSuperDockLeft = function(self, button)
 	GameTooltip:Hide()
 	if(button and IsAltKeyDown()) then
 		SV:StaticPopup_Show('RESETDOCKS_CHECK')
 	else
-		if SV.cache.Docks.IsFaded then
-			SV.cache.Docks.IsFaded = nil;
+		if SV.cache.Docks.LeftFaded then
+			SV.cache.Docks.LeftFaded = nil;
 			Dock.BottomLeft:FadeIn(0.2, Dock.BottomLeft:GetAlpha(), 1)
 			Dock.BottomLeft.Bar:FadeIn(0.2, Dock.BottomLeft.Bar:GetAlpha(), 1)
-			Dock.BottomRight:FadeIn(0.2, Dock.BottomRight:GetAlpha(), 1)
-			Dock.BottomRight.Bar:FadeIn(0.2, Dock.BottomRight.Bar:GetAlpha(), 1)
-			SV.Events:Trigger("DOCKS_FADE_IN");
+			SV.Events:Trigger("DOCK_LEFT_FADE_IN");
 			PlaySoundFile([[sound\doodad\be_scryingorb_explode.ogg]])
-			--PlaySoundFile([[sound\interface\ui_etherealwindow_open.ogg]])
 		else
-			SV.cache.Docks.IsFaded = true;
+			SV.cache.Docks.LeftFaded = true;
 			Dock.BottomLeft:FadeOut(0.2, Dock.BottomLeft:GetAlpha(), 0)
 			Dock.BottomLeft.Bar:FadeOut(0.2, Dock.BottomLeft.Bar:GetAlpha(), 0)
+			SV.Events:Trigger("DOCK_LEFT_FADE_OUT");
+			PlaySoundFile([[sound\doodad\be_scryingorb_explode.ogg]])
+		end
+	end
+end
+
+_G.ToggleSuperDockRight = function(self, button)
+	GameTooltip:Hide()
+	if(button and IsAltKeyDown()) then
+		SV:StaticPopup_Show('RESETDOCKS_CHECK')
+	else
+		if SV.cache.Docks.RightFaded then
+			SV.cache.Docks.RightFaded = nil;
+			Dock.BottomRight:FadeIn(0.2, Dock.BottomRight:GetAlpha(), 1)
+			Dock.BottomRight.Bar:FadeIn(0.2, Dock.BottomRight.Bar:GetAlpha(), 1)
+			SV.Events:Trigger("DOCK_RIGHT_FADE_IN");
+			PlaySoundFile([[sound\doodad\be_scryingorb_explode.ogg]])
+		else
+			SV.cache.Docks.RightFaded = true;
 			Dock.BottomRight:FadeOut(0.2, Dock.BottomRight:GetAlpha(), 0)
 			Dock.BottomRight.Bar:FadeOut(0.2, Dock.BottomRight.Bar:GetAlpha(), 0)
-			SV.Events:Trigger("DOCKS_FADE_OUT");
+			SV.Events:Trigger("DOCK_RIGHT_FADE_OUT");
 			PlaySoundFile([[sound\doodad\be_scryingorb_explode.ogg]])
-			--PlaySoundFile([[sound\interface\ui_etherealwindow_close.ogg]])
 		end
 	end
 end

+_G.ToggleSuperDocks = function()
+	if(SV.cache.Docks.AllFaded) then
+		SV.cache.Docks.AllFaded = nil;
+		SV.cache.Docks.LeftFaded = nil;
+		SV.cache.Docks.RightFaded = nil;
+		Dock.BottomLeft:FadeIn(0.2, Dock.BottomLeft:GetAlpha(), 1)
+		Dock.BottomLeft.Bar:FadeIn(0.2, Dock.BottomLeft.Bar:GetAlpha(), 1)
+		SV.Events:Trigger("DOCK_LEFT_FADE_IN");
+		Dock.BottomRight:FadeIn(0.2, Dock.BottomRight:GetAlpha(), 1)
+		Dock.BottomRight.Bar:FadeIn(0.2, Dock.BottomRight.Bar:GetAlpha(), 1)
+		SV.Events:Trigger("DOCK_RIGHT_FADE_IN");
+		PlaySoundFile([[sound\doodad\be_scryingorb_explode.ogg]])
+	else
+		SV.cache.Docks.AllFaded = true;
+		SV.cache.Docks.LeftFaded = true;
+		SV.cache.Docks.RightFaded = true;
+		Dock.BottomLeft:FadeOut(0.2, Dock.BottomLeft:GetAlpha(), 0)
+		Dock.BottomLeft.Bar:FadeOut(0.2, Dock.BottomLeft.Bar:GetAlpha(), 0)
+		SV.Events:Trigger("DOCK_LEFT_FADE_OUT");
+		Dock.BottomRight:FadeOut(0.2, Dock.BottomRight:GetAlpha(), 0)
+		Dock.BottomRight.Bar:FadeOut(0.2, Dock.BottomRight.Bar:GetAlpha(), 0)
+		SV.Events:Trigger("DOCK_RIGHT_FADE_OUT");
+		PlaySoundFile([[sound\doodad\be_scryingorb_explode.ogg]])
+	end
+end
+
 function Dock:EnterFade()
-	if SV.cache.Docks.IsFaded then
-		--self.BottomLeft:Show()
+	if SV.cache.Docks.LeftFaded then
 		self.BottomLeft:FadeIn(0.2, self.BottomLeft:GetAlpha(), 1)
 		self.BottomLeft.Bar:FadeIn(0.2, self.BottomLeft.Bar:GetAlpha(), 1)
-		--self.BottomRight:Show()
+		SV.Events:Trigger("DOCK_LEFT_FADE_IN");
+	end
+	if SV.cache.Docks.RightFaded then
 		self.BottomRight:FadeIn(0.2, self.BottomRight:GetAlpha(), 1)
 		self.BottomRight.Bar:FadeIn(0.2, self.BottomRight.Bar:GetAlpha(), 1)
-		SV.Events:Trigger("DOCKS_FADE_IN");
-		--PlaySoundFile([[sound\doodad\be_scryingorb_explode.ogg]])
+		SV.Events:Trigger("DOCK_RIGHT_FADE_IN");
 	end
 end

 function Dock:ExitFade()
-	if SV.cache.Docks.IsFaded then
+	if SV.cache.Docks.LeftFaded then
 		self.BottomLeft:FadeOut(2, self.BottomLeft:GetAlpha(), 0)
 		self.BottomLeft.Bar:FadeOut(2, self.BottomLeft.Bar:GetAlpha(), 0)
+		SV.Events:Trigger("DOCK_LEFT_FADE_OUT");
+	end
+	if SV.cache.Docks.RightFaded then
 		self.BottomRight:FadeOut(2, self.BottomRight:GetAlpha(), 0)
 		self.BottomRight.Bar:FadeOut(2, self.BottomRight.Bar:GetAlpha(), 0)
-		SV.Events:Trigger("DOCKS_FADE_OUT");
-		--PlaySoundFile([[sound\doodad\be_scryingorb_explode.ogg]])
+		SV.Events:Trigger("DOCK_RIGHT_FADE_OUT");
 	end
 end
 --[[
@@ -669,7 +712,7 @@ local CreateBasicToolButton = function(self, displayName, texture, onclick, glob

 	button:ClearAllPoints()
 	button:SetSize(size, size)
-	button:SetStylePanel("Framed")
+	button:SetStylePanel("HeavyButton")
 	button.Icon:SetTexture(dockIcon)
 	button:SetAttribute("tipText", displayName)
 	button:SetAttribute("tipAnchor", self.Data.TipAnchor)
@@ -801,12 +844,16 @@ function Dock:SetSuperDockStyle(dock, isBottom)
 	return backdrop
 end

-local function InitDockButton(button)
+local function InitDockButton(button, location)
 	button:SetPanelColor("default")
 	button.Icon:SetGradient(unpack(SV.Media.gradient.icon))
 	button:SetScript("OnEnter", DockButton_OnEnter)
 	button:SetScript("OnLeave", DockletButton_OnLeave)
-	button:SetScript("OnClick", HideSuperDocks)
+	if(location == "BottomLeft") then
+		button:SetScript("OnClick", ToggleSuperDockLeft)
+	else
+		button:SetScript("OnClick", ToggleSuperDockRight)
+	end
 end

 local function BorderColorUpdates()
@@ -1010,8 +1057,16 @@ end
 function Dock:Initialize()
 	SV.cache.Docks = SV.cache.Docks	or {}

-	if(not SV.cache.Docks.IsFaded) then
-		SV.cache.Docks.IsFaded = false
+	if(not SV.cache.Docks.AllFaded) then
+		SV.cache.Docks.AllFaded = false
+	end
+
+	if(not SV.cache.Docks.LeftFaded) then
+		SV.cache.Docks.LeftFaded = false
+	end
+
+	if(not SV.cache.Docks.RightFaded) then
+		SV.cache.Docks.RightFaded = false
 	end

 	if(not SV.cache.Docks.Order) then
@@ -1100,10 +1155,10 @@ function Dock:Initialize()

 		if(dock.Bar.Button) then
 	    	dock.Bar.Button:SetSize(buttonsize, buttonsize)
-	    	dock.Bar.Button:SetStylePanel("Framed")
+	    	dock.Bar.Button:SetStylePanel("HeavyButton")
 	    	dock.Bar.ToolBar:SetSize(1, buttonsize)
 	    	dock.Bar.ToolBar:SetPointToScale(barAnchor, dock.Bar.Button, barReverse, (spacing * mod), 0)
-	    	InitDockButton(dock.Bar.Button)
+	    	InitDockButton(dock.Bar.Button, location)
 	    else
 	    	dock.Bar.ToolBar:SetSize(1, buttonsize)
 	    	dock.Bar.ToolBar:SetPointToScale(barAnchor, dock.Bar, barAnchor, 0, 0)
@@ -1124,22 +1179,21 @@ function Dock:Initialize()
 	    dock.Window:SetSize(width, height)
 	    dock.Window:SetPoint(anchor, dock.Alert, reverse, 0, (4 * vertMod))

-	    SV.Mentalo:Add(dock.Bar, location .. " Dock ToolBar");
-
 		if(isBottom) then
 			dock.backdrop = self:SetSuperDockStyle(dock.Window, isBottom)
 			dock.Alert.backdrop = self:SetSuperDockStyle(dock.Alert, isBottom)
 			dock.Alert.backdrop:Hide()
+			SV.Mentalo:Add(dock.Bar, location .. " Dock ToolBar");
+			SV.Mentalo:Add(dock, location .. " Dock Window")
 		end
-
-		SV.Mentalo:Add(dock, location .. " Dock Window")
 	end

-	if SV.cache.Docks.IsFaded then Dock.BottomLeft:Hide() Dock.BottomRight:Hide() end
+	if SV.cache.Docks.LeftFaded then Dock.BottomLeft:Hide() end
+	if SV.cache.Docks.RightFaded then Dock.BottomRight:Hide() end

-	SV:AddToDisplayAudit(self.BottomRight.Window)
-	SV:AddToDisplayAudit(self.TopLeft)
-	SV:AddToDisplayAudit(self.TopRight)
+	SV:ManageVisibility(self.BottomRight.Window)
+	SV:ManageVisibility(self.TopLeft)
+	SV:ManageVisibility(self.TopRight)

 	if not InCombatLockdown() then
 		self.BottomLeft.Bar:Refresh()
diff --git a/Interface/AddOns/SVUI/framework/docks/dock_stats.lua b/Interface/AddOns/SVUI/framework/docks/dock_stats.lua
index 6f04228..cb279e9 100644
--- a/Interface/AddOns/SVUI/framework/docks/dock_stats.lua
+++ b/Interface/AddOns/SVUI/framework/docks/dock_stats.lua
@@ -64,7 +64,12 @@ Dock.DataHolders = {};
 Dock.DataTypes = {};
 Dock.DataTooltip = CreateFrame("GameTooltip", "SVUI_DataTooltip", UIParent, "GameTooltipTemplate");

-local PVP_STAT_ORDER = {"Honor", "Kills", "Assists", "Damage", "Healing", "Deaths"};
+Dock.BGHolders = {};
+local PVP_STAT_ORDER = {
+	{"Honor", "Kills", "Assists"},
+	{"Damage", "Healing", "Deaths"}
+};
+
 local PVP_STAT_LOOKUP = {
 	["Name"] = {1, NAME},
 	["Kills"] = {2, KILLS},
@@ -272,7 +277,7 @@ local function GetDataSlot(parent, index)
 	return parent.Stats.Slots[index];
 end

-function Dock:NewDataHolder(parent, maxCount, tipAnchor, isTop, customTemplate, isVertical, bgEnabled)
+function Dock:NewDataHolder(parent, maxCount, tipAnchor, pvpSet, customTemplate, isVertical)
 	DIRTY_LIST = true

 	local parentName = parent:GetName();
@@ -282,7 +287,10 @@ function Dock:NewDataHolder(parent, maxCount, tipAnchor, isTop, customTemplate,
 	parent.Stats.Slots = {};
 	parent.Stats.Orientation = isVertical and "VERTICAL" or "HORIZONTAL";
 	parent.Stats.TooltipAnchor = tipAnchor or "ANCHOR_CURSOR";
-	parent.Stats.BGEnabled = bgEnabled or false;
+	if(pvpSet) then
+		parent.Stats.BGStats = pvpSet;
+		Dock.BGHolders[pvpSet] = parentName;
+	end

 	local point1, point2, x, y = "LEFT", "RIGHT", 4, 0;
 	if(isVertical) then
@@ -290,13 +298,13 @@ function Dock:NewDataHolder(parent, maxCount, tipAnchor, isTop, customTemplate,
 	end

 	if(customTemplate) then
-		parent.Stats.templateType = "Fixed"
+		parent.Stats.templateType = "!_Frame"
 		parent.Stats.templateName = customTemplate
 		parent.Stats.textStrata = "LOW"
 	else
-		parent.Stats.templateType = "Framed"
-		parent.Stats.templateName = isTop and "FramedTop" or "FramedBottom"
-		parent.Stats.textStrata = "MEDIUM"
+		parent.Stats.templateType = "HeavyButton";
+		parent.Stats.templateName = "Heavy";
+		parent.Stats.textStrata = "MEDIUM";
 	end

 	for i = 1, maxCount do
@@ -394,11 +402,8 @@ do

 	local BG_OnUpdate = function(self)
 		local scoreString;
-		local parentName = self:GetParent():GetName();
-		local key = self.SlotKey
-		local lookup = PVP_STAT_ORDER[key]
-		local scoreindex = PVP_STAT_LOOKUP[lookup][1]
-		local scoreType = PVP_STAT_LOOKUP[lookup][2]
+		local scoreindex = self.scoreindex;
+		local scoreType = self.scoretype;
 		local scoreCount = GetNumBattlefieldScores()
 		for i = 1, scoreCount do
 			SCORE_CACHE = {GetBattlefieldScore(i)}
@@ -474,9 +479,9 @@ do
 			local numPoints = #slots;
 			for i = 1, numPoints do
 				local subList = twipe(slots[i].MenuList)
-				tinsert(subList,{text = NONE, func = function() Dock:ChangeDBVar("", i, "dataHolders", place); Dock:UpdateDataSlots() end});
+				tinsert(subList,{text = NONE, func = function() Dock:ChangeDBVar("", i, "statSlots", place); Dock:UpdateDataSlots() end});
 				for _,name in pairs(statMenu) do
-					tinsert(subList,{text = name, func = function() Dock:ChangeDBVar(name, i, "dataHolders", place); Dock:UpdateDataSlots() end});
+					tinsert(subList,{text = name, func = function() Dock:ChangeDBVar(name, i, "statSlots", place); Dock:UpdateDataSlots() end});
 				end
 			end
 		end
@@ -496,9 +501,11 @@ do
 		for place, parent in pairs(anchorTable) do
 			local slots = parent.Stats.Slots;
 			local numPoints = #slots;
+			local pvpIndex = parent.Stats.BGStats;
+			local pvpSwitch = (allowPvP and pvpIndex and (Dock.BGHolders[pvpIndex] == parent:GetName()))

 			for i = 1, numPoints do
-				local pvpTable = (allowPvP and parent.Stats.BGEnabled) and PVP_STAT_ORDER[i]
+				local pvpTable = (pvpSwitch and PVP_STAT_ORDER[pvpIndex]) and PVP_STAT_ORDER[pvpIndex][i]
 				local slot = slots[i];

 				slot:UnregisterAllEvents()
@@ -521,7 +528,9 @@ do

 				slot:Hide()

-				if(pvpTable and ((instance and groupType == "pvp") or parent.lockedOpen)) then
+				if(pvpTable and ((instance and groupType == "pvp") or parent.lockedOpen)) then
+					slot.scoreindex = PVP_STAT_LOOKUP[pvpTable][1]
+					slot.scoretype = PVP_STAT_LOOKUP[pvpTable][2]
 					slot:RegisterEvent("UPDATE_BATTLEFIELD_SCORE")
 					slot:SetScript("OnEvent", BG_OnUpdate)
 					slot:SetScript("OnEnter", BG_OnEnter)
@@ -533,7 +542,7 @@ do
 					slot:Show()
 				else
 					for name, config in pairs(statTable) do
-						for panelName, panelData in pairs(db.dataHolders) do
+						for panelName, panelData in pairs(db.statSlots) do
 							if(panelData and type(panelData) == "table") then
 								if(panelName == place and panelData[i] and panelData[i] == name) then
 									_load(slot, name, config)
@@ -567,17 +576,24 @@ end

 function Dock:RefreshStats()
 	local centerWidth = SV.db.Dock.dockCenterWidth;
-	local centerHeight = SV.db.Dock.dockCenterHeight;
+	local dockWidth = centerWidth * 0.5;
+	local dockHeight = SV.db.Dock.dockCenterHeight;
+
+	self.BottomCenter:SetWidth(centerWidth);
+	self.BottomCenter.Left:SetSize(dockWidth, dockHeight);
+	self.BottomCenter.Right:SetSize(dockWidth, dockHeight);

-	self.BottomCenter:SetSize(centerWidth, centerHeight);
-	self.TopCenter:SetSize(centerWidth, centerHeight);
+	self.TopCenter:SetWidth(centerWidth);
+	self.TopCenter.Left:SetSize(dockWidth, dockHeight);
+	self.TopCenter.Right:SetSize(dockWidth, dockHeight);

 	self:UpdateDataSlots();
 end

 function Dock:InitializeStats()
 	local centerWidth = SV.db.Dock.dockCenterWidth;
-	local centerHeight = SV.db.Dock.dockCenterHeight;
+	local dockWidth = centerWidth * 0.5;
+	local dockHeight = SV.db.Dock.dockCenterHeight;

 	hexHighlight = SV:HexColor("highlight") or "FFFFFF"
 	local hexClass = classColor.colorStr
@@ -590,20 +606,49 @@ function Dock:InitializeStats()
 	--BOTTOM CENTER BAR
 	self.BottomCenter:SetParent(SV.Screen)
 	self.BottomCenter:ClearAllPoints()
-	self.BottomCenter:SetSize(centerWidth, centerHeight)
+	self.BottomCenter:SetSize(centerWidth, 1)
 	self.BottomCenter:SetPoint("BOTTOM", SV.Screen, "BOTTOM", 0, 0)
-	SV.Mentalo:Add(self.BottomCenter, L["Bottom Data Dock"])
-	self:NewDataHolder(self.BottomCenter, 6, "ANCHOR_CURSOR")
-	--SV:AddToDisplayAudit(self.BottomCenter)
+
+	local bottomLeft = CreateFrame("Frame", "SVUI_StatDockBottomLeft", self.BottomCenter)
+	bottomLeft:SetSize(dockWidth, dockHeight)
+	bottomLeft:SetPoint("BOTTOMLEFT", self.BottomCenter, "BOTTOMLEFT", 0, 0)
+	SV.Mentalo:Add(bottomLeft, L["Data Dock 1"])
+	self:NewDataHolder(bottomLeft, 3, "ANCHOR_CURSOR")
+
+	local bottomRight = CreateFrame("Frame", "SVUI_StatDockBottomRight", self.BottomCenter)
+	bottomRight:SetSize(dockWidth, dockHeight)
+	bottomRight:SetPoint("BOTTOMRIGHT", self.BottomCenter, "BOTTOMRIGHT", 0, 0)
+	SV.Mentalo:Add(bottomRight, L["Data Dock 2"])
+	self:NewDataHolder(bottomRight, 3, "ANCHOR_CURSOR")
+	--SV:ManageVisibility(self.BottomCenter)

 	--TOP CENTER BAR
 	self.TopCenter:SetParent(SV.Screen)
 	self.TopCenter:ClearAllPoints()
-	self.TopCenter:SetSize(centerWidth, centerHeight)
+	self.TopCenter:SetSize(centerWidth, 1)
 	self.TopCenter:SetPoint("TOP", SV.Screen, "TOP", 0, 0)
-	SV.Mentalo:Add(self.TopCenter, L["Top Data Dock"])
-	self:NewDataHolder(self.TopCenter, 6, "ANCHOR_CURSOR")
-	SV:AddToDisplayAudit(self.TopCenter)
+
+	local topLeft = CreateFrame("Frame", "SVUI_StatDockTopLeft", self.TopCenter)
+	topLeft:SetSize(dockWidth, dockHeight)
+	topLeft:SetPoint("TOPLEFT", self.TopCenter, "TOPLEFT", 0, 0)
+
+	SV.Mentalo:Add(topLeft, L["Data Dock 3"])
+	self:NewDataHolder(topLeft, 3, "ANCHOR_CURSOR", 1)
+
+	local topRight = CreateFrame("Frame", "SVUI_StatDockTopRight", self.TopCenter)
+	topRight:SetSize(dockWidth, dockHeight)
+	topRight:SetPoint("TOPRIGHT", self.TopCenter, "TOPRIGHT", 0, 0)
+
+	SV.Mentalo:Add(topRight, L["Data Dock 4"])
+	self:NewDataHolder(topRight, 3, "ANCHOR_CURSOR", 2)
+
+
+	self.BottomCenter.Left = bottomLeft;
+	self.BottomCenter.Right = bottomRight;
+	self.TopCenter.Left = topLeft;
+	self.TopCenter.Right = topRight;
+
+	SV:ManageVisibility(self.TopCenter)

 	-- self.DataTooltip:SetParent(SV.Screen)
 	self.DataTooltip:SetFrameStrata("DIALOG")
diff --git a/Interface/AddOns/SVUI/framework/framework.lua b/Interface/AddOns/SVUI/framework/framework.lua
index b80eca3..e264952 100644
--- a/Interface/AddOns/SVUI/framework/framework.lua
+++ b/Interface/AddOns/SVUI/framework/framework.lua
@@ -36,5 +36,4 @@ function SV:LoadFramework()
   self.Drunk:Initialize();
 	self.GameMenu:Initialize();
   self.AFK:Initialize();
-  self.SuperButton:Initialize();
 end
\ No newline at end of file
diff --git a/Interface/AddOns/SVUI/framework/movers/mover_dragger.lua b/Interface/AddOns/SVUI/framework/movers/mover_dragger.lua
index dbd96a3..5aa29b6 100644
--- a/Interface/AddOns/SVUI/framework/movers/mover_dragger.lua
+++ b/Interface/AddOns/SVUI/framework/movers/mover_dragger.lua
@@ -216,7 +216,7 @@ local DraggerEventHandler = function(self, event, ...)
 	if(InCombatLockdown()) then return end

 	local noMoreChanges = true;
-	local allCentered = SV.db.general.multiMonitor
+	local allCentered = SV.db.screen.multiMonitor

 	for frameName, data in pairs(UIPanels) do
 		if(not self.Frames[frameName] or (self.Frames[frameName] and type(self.Frames[frameName]) ~= 'string')) then
@@ -357,10 +357,6 @@ function Dragger:Initialize()
 	if(not SV.db.SVQuest.enable) then
 		UIPanels["ObjectiveTrackerFrame"] = { moving = false, snapped = false, canupdate = false, cansetpoint = false, centered = false };
 	end
-	-- if(SV.db.SVMap.tinyWorldMap) then
-	-- 	UIPanels["WorldMapFrame"] = { moving = false, snapped = false, canupdate = false, cansetpoint = false, centered = false };
-	-- 	WorldMapTitleButton:EnableMouse(false)
-	-- end

 	self.EventsActive = true

diff --git a/Interface/AddOns/SVUI/framework/movers/mover_mentalo.lua b/Interface/AddOns/SVUI/framework/movers/mover_mentalo.lua
index 29ad08a..840fd8d 100644
--- a/Interface/AddOns/SVUI/framework/movers/mover_mentalo.lua
+++ b/Interface/AddOns/SVUI/framework/movers/mover_mentalo.lua
@@ -516,7 +516,7 @@ local Movable_OnLeave = function(self)
 end

 local Movable_OnMouseDown = function(self, arg)
-	if arg == "RightButton"then
+	if arg == "RightButton" then
 		TheHand.UserHeld = false;
 		if(CurrentFrameTarget == self and not SVUI_MentaloPrecision:IsShown()) then
 			Movable_OnUpdate()
@@ -570,7 +570,7 @@ function Mentalo:New(frame, moveName, title, snap, dragStopFunc, callbackOnEnter
 	end

 	movable:SetPoint(anchor1, anchorParent, anchor2, xPos, yPos)
-	movable:SetStylePanel("Fixed", "Transparent")
+	movable:SetStylePanel("!_Frame", "Transparent")
 	movable:SetAlpha(0.4)

 	frame:SetScript("OnSizeChanged", Movable_OnSizeChanged)
@@ -878,7 +878,7 @@ Initialize
 function Mentalo:Initialize()
 	SV.cache.Anchors = SV.cache.Anchors or {}

-	SVUI_Mentalo:SetStylePanel("Fixed", "Component")
+	SVUI_Mentalo:SetStylePanel("!_Frame", "Heavy")
 	SVUI_Mentalo:SetPanelColor("yellow")
 	SVUI_Mentalo:RegisterForDrag("LeftButton")
 	SVUI_Mentalo:RegisterEvent("PLAYER_REGEN_DISABLED")
@@ -887,7 +887,7 @@ function Mentalo:Initialize()
 	SVUI_MentaloGridButton:SetScript("OnClick", XML_MentaloGridButton_OnClick)
 	SVUI_MentaloLockButton:SetScript("OnClick", XML_MentaloLockButton_OnClick)

-	SVUI_MentaloPrecision:SetStylePanel("Default", "Transparent")
+	SVUI_MentaloPrecision:SetStylePanel("Frame", "Transparent")
 	SVUI_MentaloPrecision:EnableMouse(true)

 	SVUI_MentaloPrecisionSetX:SetStylePanel("Editbox")
diff --git a/Interface/AddOns/SVUI/framework/widgets/widget_dropdown.lua b/Interface/AddOns/SVUI/framework/widgets/widget_dropdown.lua
index fac1e54..47da86a 100644
--- a/Interface/AddOns/SVUI/framework/widgets/widget_dropdown.lua
+++ b/Interface/AddOns/SVUI/framework/widgets/widget_dropdown.lua
@@ -220,7 +220,7 @@ function SV.Dropdown:Initialize()
 	self:SetParent(SV.Screen)
 	self:SetFrameStrata("DIALOG")
 	self:SetFrameLevel(99)
-	self:SetStylePanel("Default", "Default")
+	self:SetStylePanel("Frame", "Default")
 	self.option = {}
 	self:SetClampedToScreen(true)
 	self:SetSize(155, 94)
@@ -231,5 +231,5 @@ function SV.Dropdown:Initialize()
 		end
 	end)

-	SV:AddToDisplayAudit(self)
+	SV:ManageVisibility(self)
 end
\ No newline at end of file
diff --git a/Interface/AddOns/SVUI/framework/widgets/widget_superbutton.lua b/Interface/AddOns/SVUI/framework/widgets/widget_superbutton.lua
deleted file mode 100644
index 3e53e88..0000000
--- a/Interface/AddOns/SVUI/framework/widgets/widget_superbutton.lua
+++ /dev/null
@@ -1,827 +0,0 @@
---[[
-##############################################################################
-_____/\\\\\\\\\\\____/\\\________/\\\__/\\\________/\\\__/\\\\\\\\\\\_       #
- ___/\\\/////////\\\_\/\\\_______\/\\\_\/\\\_______\/\\\_\/////\\\///__      #
-  __\//\\\______\///__\//\\\______/\\\__\/\\\_______\/\\\_____\/\\\_____     #
-   ___\////\\\__________\//\\\____/\\\___\/\\\_______\/\\\_____\/\\\_____    #
-    ______\////\\\________\//\\\__/\\\____\/\\\_______\/\\\_____\/\\\_____   #
-     _________\////\\\______\//\\\/\\\_____\/\\\_______\/\\\_____\/\\\_____  #
-      __/\\\______\//\\\______\//\\\\\______\//\\\______/\\\______\/\\\_____ #
-       _\///\\\\\\\\\\\/________\//\\\________\///\\\\\\\\\/____/\\\\\\\\\\\_#
-        ___\///////////___________\///___________\/////////_____\///////////_#
-##############################################################################
-S U P E R - V I L L A I N - U I   By: Munglunch                              #
-##############################################################################
-##########################################################
-LOCALIZED LUA FUNCTIONS
-##########################################################
-]]--
---[[ GLOBALS ]]--
-local _G = _G;
-local unpack 	= _G.unpack;
-local select 	= _G.select;
-local pairs 	= _G.pairs;
-local string 	= _G.string;
-local math 		= _G.math;
---[[ STRING METHODS ]]--
-local find, format, split = string.find, string.format, string.split;
-local gsub = string.gsub;
---[[ MATH METHODS ]]--
-local ceil = math.ceil;
---[[
-##########################################################
-GET ADDON DATA
-##########################################################
-]]--
-local SV = select(2, ...)
-local L = SV.L;
-local SuperButton = _G["SVUI_SuperButtonFrame"];
-SuperButton.RegisteredButtons = {};
-SuperButton.ActionBlackList = {};
-SuperButton.SpellBlackList = {};
-SuperButton.ItemBlackList = {};
-local ORDERED_LIST = {};
-local NO_ART = [[Interface\AddOns\SVUI\assets\artwork\Template\EMPTY]];
---[[
-##########################################################
-HELPERS
-##########################################################
-]]--
-local UpdateActionCooldown = function(self)
-	if(self:IsShown() and self.action) then
-		local start, duration, enable = GetActionCooldown(self.action)
-		if((start and start > 0) and (duration and duration > 0)) then
-			self.Cooldown:SetCooldown(start, duration)
-			self.Cooldown:Show()
-		else
-			self.Cooldown:Hide()
-		end
-	end
-end
-
-local UpdateSpellCooldown = function(self)
-	if(self:IsShown() and self.spellName) then
-		local start, duration, enable = GetSpellCooldown(self.spellName)
-		if((start and start > 0) and (duration and duration > 0)) then
-			self.Cooldown:SetCooldown(start, duration)
-			self.Cooldown:Show()
-		else
-			self.Cooldown:Hide()
-		end
-	end
-end
-
-local UpdateItemCooldown = function(self)
-	if(self:IsShown() and self.itemID) then
-		local start, duration, enable = GetItemCooldown(self.itemID)
-		if((start and start > 0) and (duration and duration > 0)) then
-			self.Cooldown:SetCooldown(start, duration)
-			self.Cooldown:Show()
-		else
-			self.Cooldown:Hide()
-		end
-	end
-end
---[[
-##########################################################
-SCRIPT HANDLERS
-##########################################################
-]]--
-local SuperActionButton_OnEnter = function(self)
-	if(self.action) then
-		GameTooltip:SetOwner(self, 'ANCHOR_LEFT')
-		GameTooltip:SetAction(self.action)
-	end
-end
-
-local SuperSpellButton_OnEnter = function(self)
-	if(self.spellID) then
-		GameTooltip:SetOwner(self, 'ANCHOR_LEFT')
-		GameTooltip:SetSpellByID(self.spellID)
-	end
-end
-
-local SuperItemButton_OnEnter = function(self)
-	if(self.itemID) then
-		GameTooltip:SetOwner(self, 'ANCHOR_LEFT')
-		GameTooltip:SetHyperlink(self.itemLink)
-	end
-end
-
-local SuperButton_OnShow = function(self)
-	self:FadeIn()
-	if(self.Artwork) then
-		self.Artwork:SetTexture(self.ArtFile or [[Interface\ExtraButton\Smash]]);
-		self.Artwork:FadeIn()
-	end
-end
-
-local SuperButton_OnHide = function(self)
-	if(self.Artwork) then
-		self.Artwork:FadeOut()
-		self.Artwork:SetTexture([[Interface\AddOns\SVUI\assets\artwork\Template\EMPTY]]);
-	end
-end
-
-local GetSetPositions = function(self)
-	local highestIndex = 0;
-	local lastFrame = SuperButton;
-	for name, frame in pairs(SuperButton.RegisteredButtons) do
-		if((frame ~= self) and frame:IsShown() and (frame.___posIndex > highestIndex)) then
-			highestIndex = frame.___posIndex;
-			lastFrame = name;
-		end
-	end
-
-	self.___posIndex = highestIndex + 1;
-	--print(self:GetName() .. " = " .. self.___posIndex)
-	return lastFrame;
-end
-
-local GetResetPositions = function(self)
-	self.___posIndex = 0;
-	for name, frame in pairs(SuperButton.RegisteredButtons) do
-		if((frame ~= self) and frame:IsShown() and (frame.___posIndex == 1)) then
-			tinsert(ORDERED_LIST, name)
-		end
-	end
-	for name, frame in pairs(SuperButton.RegisteredButtons) do
-		if((frame ~= self) and frame:IsShown() and (frame.___posIndex > 1)) then
-			tinsert(ORDERED_LIST, name)
-		end
-	end
-	return ORDERED_LIST;
-end
-
-local UpdateGeneric = function(self)
-	return true;
-end
-
-local SuperButtonAction_OnEvent = function(self, event)
-	if(event == 'PLAYER_REGEN_ENABLED') then
-		self:SetAttribute('action', self.attribute)
-		self:UnregisterEvent(event)
-		self:UpdateCooldown()
-	elseif(event == 'UPDATE_BINDINGS') then
-		if(self:IsShown()) then
-			self:SetAbility()
-			self:SetAttribute('binding', GetTime())
-		end
-	else
-		self:Update()
-	end
-end
-
-local SuperButtonSpell_OnEvent = function(self, event)
-	if(event == 'PLAYER_REGEN_ENABLED') then
-		self:SetAttribute('spell', self.attribute)
-		self:UnregisterEvent(event)
-		self:UpdateCooldown()
-	elseif(event == 'UPDATE_BINDINGS') then
-		if(self:IsShown()) then
-			self:SetAbility()
-			self:SetAttribute('binding', GetTime())
-		end
-	else
-		self:Update()
-	end
-end
-
-local SuperButtonItem_OnEvent = function(self, event)
-	if(event == 'BAG_UPDATE_COOLDOWN') then
-		self:UpdateCooldown()
-	elseif(event == 'PLAYER_REGEN_ENABLED') then
-		self:SetAttribute('item', self.attribute)
-		self:UnregisterEvent(event)
-		self:UpdateCooldown()
-	elseif(event == 'UPDATE_BINDINGS') then
-		if(self:IsShown()) then
-			self:SetAbility()
-			self:SetAttribute('binding', GetTime())
-		end
-	else
-		self:Update()
-	end
-end
---[[
-##########################################################
-ACTION BUTTON INTERNALS
-##########################################################
-]]--
-local SetSuperButtonAction = function(self, action)
-	if(action) then
-		if(action == self.action and self:IsShown()) then
-			return false
-		end
-		self.action = action
-
-		if(SuperButton.ActionBlackList[self.action]) then
-			return false
-		end
-	end
-
-	local HotKey = self.HotKey
-	local key = GetBindingKey(self.___binding)
-	if(key) then
-		HotKey:SetText(GetBindingText(key, 1))
-		HotKey:Show()
-	elseif(ActionHasRange(self.action)) then
-		HotKey:SetText(RANGE_INDICATOR)
-		HotKey:Show()
-	else
-		HotKey:Hide()
-	end
-
-	if(InCombatLockdown()) then
-		self.attribute = self.action
-		self:RegisterEvent('PLAYER_REGEN_ENABLED')
-	else
-		self:SetAttribute('action', self.action)
-		self:UpdateCooldown()
-	end
-
-	return true
-end
-
-local RemoveSuperButtonAction = function(self)
-	self:FadeOut()
-	if(InCombatLockdown()) then
-		self.attribute = nil;
-		self:RegisterEvent('PLAYER_REGEN_ENABLED')
-	else
-		self:SetAttribute('action', nil)
-	end
-end
-
-local SuperActionButton_OnUpdate = function(self, elapsed)
-	if(not self.action) then return end
-	if(self.rangeTimer > 0.2) then
-		local HotKey = self.HotKey
-		local inRange = IsActionInRange(self.action, 'target')
-		if(HotKey:GetText() == RANGE_INDICATOR) then
-			if(inRange == false) then
-				HotKey:SetTextColor(1, 0.1, 0.1)
-				HotKey:Show()
-			elseif(inRange) then
-				HotKey:SetTextColor(1, 1, 1)
-				HotKey:Show()
-			else
-				HotKey:Hide()
-			end
-		else
-			if(inRange == false) then
-				HotKey:SetTextColor(1, 0.1, 0.1)
-			else
-				HotKey:SetTextColor(1, 1, 1)
-			end
-		end
-
-		self.rangeTimer = 0
-	else
-		self.rangeTimer = self.rangeTimer + elapsed
-	end
-
-	if(self.updateTimer > 5) then
-		self:Update()
-		self.updateTimer = 0
-	else
-		self.updateTimer = self.updateTimer + elapsed
-	end
-end
---[[
-##########################################################
-SPELL BUTTON INTERNALS
-##########################################################
-]]--
-local SetSuperButtonSpell = function(self, spellID, spellName, texture)
-	if(spellID and spellName) then
-		if(spellID == self.spellID and self:IsShown()) then
-			return false
-		end
-
-		self.Icon:SetTexture(texture)
-		self.spellID = spellID
-		self.spellName = spellName
-
-		if(SuperButton.SpellBlackList[self.spellID]) then
-			return false
-		end
-	end
-
-	local HotKey = self.HotKey
-	local key = GetBindingKey(self.___binding)
-	if(key) then
-		HotKey:SetText(GetBindingText(key, 1))
-		HotKey:Show()
-	elseif(SpellHasRange(self.spellName)) then
-		HotKey:SetText(RANGE_INDICATOR)
-		HotKey:Show()
-	else
-		HotKey:Hide()
-	end
-
-	if(InCombatLockdown()) then
-		self.attribute = self.spellName
-		self:RegisterEvent('PLAYER_REGEN_ENABLED')
-	else
-		self:SetAttribute('spell', self.spellName)
-		self:UpdateCooldown()
-	end
-
-	return true
-end
-
-local RemoveSuperButtonSpell = function(self)
-	self:FadeOut()
-	if(InCombatLockdown()) then
-		self.attribute = nil;
-		self:RegisterEvent('PLAYER_REGEN_ENABLED');
-	else
-		self:SetAttribute('spell', nil);
-	end
-end
-
-local SuperSpellButton_OnUpdate = function(self, elapsed)
-	if(not self.spellName) then return end
-	if(self.rangeTimer > 0.2) then
-		local HotKey = self.HotKey
-		local inRange = IsSpellInRange(self.spellName, 'target')
-		if(HotKey:GetText() == RANGE_INDICATOR) then
-			if(inRange == false) then
-				HotKey:SetTextColor(1, 0.1, 0.1)
-				HotKey:Show()
-			elseif(inRange) then
-				HotKey:SetTextColor(1, 1, 1)
-				HotKey:Show()
-			else
-				HotKey:Hide()
-			end
-		else
-			if(inRange == false) then
-				HotKey:SetTextColor(1, 0.1, 0.1)
-			else
-				HotKey:SetTextColor(1, 1, 1)
-			end
-		end
-
-		self.rangeTimer = 0
-	else
-		self.rangeTimer = self.rangeTimer + elapsed
-	end
-
-	if(self.updateTimer > 5) then
-		self:Update()
-		self.updateTimer = 0
-	else
-		self.updateTimer = self.updateTimer + elapsed
-	end
-end
---[[
-##########################################################
-ITEM BUTTON INTERNALS
-##########################################################
-]]--
-local SetSuperButtonItem = function(self, itemLink, texture)
-	if(itemLink) then
-		if(itemLink == self.itemLink and self:IsShown()) then
-			return false
-		end
-
-		self.Icon:SetTexture(texture)
-		self.itemID, self.itemName = string.match(itemLink, '|Hitem:(.-):.-|h%[(.+)%]|h')
-		self.itemLink = itemLink
-
-		if(SuperButton.ItemBlackList[self.itemID]) then
-			return false
-		end
-	end
-
-	local HotKey = self.HotKey
-	local key = GetBindingKey(self.___binding)
-	if(key) then
-		HotKey:SetText(GetBindingText(key, 1))
-		HotKey:Show()
-	elseif(ItemHasRange(self.itemLink)) then
-		HotKey:SetText(RANGE_INDICATOR)
-		HotKey:Show()
-	else
-		HotKey:Hide()
-	end
-
-	if(InCombatLockdown()) then
-		self.attribute = self.itemName
-		self:RegisterEvent('PLAYER_REGEN_ENABLED')
-	else
-		self:SetAttribute('item', self.itemName)
-		self:UpdateCooldown()
-	end
-
-	return true
-end
-
-local RemoveSuperButtonItem = function(self)
-	self:FadeOut()
-	if(InCombatLockdown()) then
-		self.attribute = nil;
-		self:RegisterEvent('PLAYER_REGEN_ENABLED');
-	else
-		self:SetAttribute('item', nil)
-	end
-end
-
-local SuperItemButton_OnUpdate = function(self, elapsed)
-	if(not self.itemID) then return end
-	if(self.rangeTimer > 0.2) then
-		local HotKey = self.HotKey
-		local inRange = IsItemInRange(self.itemID, 'target')
-		if(HotKey:GetText() == RANGE_INDICATOR) then
-			if(inRange == false) then
-				HotKey:SetTextColor(1, 0.1, 0.1)
-				HotKey:Show()
-			elseif(inRange) then
-				HotKey:SetTextColor(1, 1, 1)
-				HotKey:Show()
-			else
-				HotKey:Hide()
-			end
-		else
-			if(inRange == false) then
-				HotKey:SetTextColor(1, 0.1, 0.1)
-			else
-				HotKey:SetTextColor(1, 1, 1)
-			end
-		end
-
-		self.rangeTimer = 0
-	else
-		self.rangeTimer = self.rangeTimer + elapsed
-	end
-
-	if(self.updateTimer > 5) then
-		self:Update()
-		self.updateTimer = 0
-	else
-		self.updateTimer = self.updateTimer + elapsed
-	end
-end
---[[
-##########################################################
-CONSTRUCTS
-##########################################################
-]]--
-function SuperButton:SetFrameReferences()
-	local listing = self.RegisteredButtons;
-	for buttonName, button in pairs(listing) do
-		button:SetFrameRef("SVUI_SuperButtonFrame", SVUI_SuperButtonFrame);
-		for name, frame in pairs(listing) do
-			if(frame ~= button) then
-				button:SetFrameRef(name, frame);
-			end
-		end
-	end
-end
-
-function SuperButton:AddAction(buttonName, updateFunc, eventFunc, bindingKey)
-	local special = CreateFrame('Button', buttonName, UIParent, 'SecureActionButtonTemplate, SecureHandlerStateTemplate, SecureHandlerAttributeTemplate');
-	special:SetSizeToScale(50,50);
-	special:SetPointToScale("CENTER", self, "CENTER", 0, 0);
-	special:SetAlpha(0);
-	special:SetStylePanel("Icon");
-	special:SetScript('OnEnter', SuperActionButton_OnEnter);
-	special:SetScript('OnLeave', GameTooltip_Hide);
-	special:SetScript('OnShow', SuperButton_OnShow);
-	special:SetScript('OnHide', SuperButton_OnHide);
-
-	special.___posIndex = 1;
-	special.___binding = bindingKey;
-	special.updateTimer = 0;
-	special.rangeTimer = 0;
-
-	special.GetPositionRef = GetSetPositions;
-	special.GetResetRefList = GetResetPositions;
-	special.SetAbility = SetSuperButtonAction;
-	special.RemoveAbility = RemoveSuperButtonAction;
-	special.UpdateCooldown = UpdateActionCooldown;
-	if(updateFunc and type(updateFunc) == 'function') then
-		special.Update = updateFunc;
-	else
-		special.Update = UpdateGeneric;
-	end
-	if(eventFunc and type(eventFunc) == 'function') then
-		special:SetScript('OnEvent', eventFunc)
-	else
-		special:SetScript('OnEvent', SuperButtonAction_OnEvent)
-	end
-
-	local Artwork = special.Panel:CreateTexture('$parentArtwork', 'BACKGROUND')
-	Artwork:SetPoint('CENTER', -2, 2)
-	Artwork:SetSizeToScale(256, 128)
-	Artwork:SetTexture(NO_ART)
-	Artwork:SetAlpha(0)
-	special.Artwork = Artwork
-
-	local Icon = special:CreateTexture('$parentIcon', 'BACKGROUND')
-	Icon:SetTexCoord(0.1, 0.9, 0.1, 0.9)
-	Icon:SetAllPoints()
-	special.Icon = Icon
-
-	local HotKey = special:CreateFontString('$parentHotKey', nil, 'NumberFontNormal')
-	HotKey:SetPoint('BOTTOMRIGHT', -5, 5)
-	special.HotKey = HotKey
-
-	local Cooldown = CreateFrame('Cooldown', '$parentCooldown', special, 'CooldownFrameTemplate')
-	Cooldown:ClearAllPoints()
-	Cooldown:SetPoint('TOPRIGHT', -2, -3)
-	Cooldown:SetPoint('BOTTOMLEFT', 2, 1)
-	Cooldown:Hide()
-	special.Cooldown = Cooldown
-
-	local Count = Cooldown:CreateFontString(nil, 'OVERLAY', 'NumberFontNormal')
-	Count:SetPoint('BOTTOMLEFT', 5, 5)
-	special.Count = Count
-
-	special:SetScript('OnUpdate', SuperActionButton_OnUpdate)
-	special:RegisterEvent('UPDATE_BINDINGS')
-
-
-
-	special:SetAttribute('type', 'action');
-	special:SetAttribute('_onattributechanged', [[
-		if(name == 'action') then
-			if(value and not self:IsShown()) then
-				local refName = self:CallMethod('GetPositionRef');
-				local lastFrame = self:GetFrameRef(refName);
-				if(lastFrame) then
-					self:ClearAllPoints()
-					self:SetPoint("BOTTOM", lastFrame, "TOP", 0, 8)
-				end
-				self:Show()
-			elseif(not value) then
-				local refList = self:CallMethod('GetResetRefList');
-				local lastFrame, nextFrame;
-				if(refList) then
-					for _,refName in ipairs(refList) do
-						nextFrame = self:GetFrameRef(refName);
-						if(nextFrame) then
-							nextFrame:ClearAllPoints()
-							if(not lastFrame) then
-								lastFrame = self:GetFrameRef("SVUI_SuperButtonFrame");
-								nextFrame:SetPoint("CENTER", lastFrame, "CENTER", 0, 0);
-							else
-								nextFrame:SetPoint("BOTTOM", lastFrame, "TOP", 0, 8);
-							end
-						end
-					end
-				end
-				self:Hide()
-				self:ClearBindings()
-			end
-		end
-		if(self:IsShown() and (self.___binding ~= nil) and (name == 'action' or name == 'binding')) then
-			self:ClearBindings()
-			local key = GetBindingKey(self.___binding)
-			if(key) then
-				self:SetBindingClick(1, key, self, 'LeftButton')
-			end
-		end
-	]]);
-
-	self.RegisteredButtons[buttonName] = special;
-
-	self:SetFrameReferences()
-
-	--special:Hide()
-
-	return special
-end
-
-function SuperButton:AddSpell(buttonName, updateFunc, eventFunc, bindingKey)
-	local special = CreateFrame('Button', buttonName, UIParent, 'SecureActionButtonTemplate, SecureHandlerStateTemplate, SecureHandlerAttributeTemplate');
-	special:SetSizeToScale(50,50);
-	special:SetPointToScale("CENTER", self, "CENTER", 0, 0);
-	special:SetAlpha(0);
-	special:SetStylePanel("Icon");
-	special:SetScript('OnEnter', SuperSpellButton_OnEnter);
-	special:SetScript('OnLeave', GameTooltip_Hide);
-	special:SetScript('OnShow', SuperButton_OnShow);
-	special:SetScript('OnHide', SuperButton_OnHide);
-
-	special.___posIndex = 1;
-	special.___binding = bindingKey;
-	special.updateTimer = 0;
-	special.rangeTimer = 0;
-
-	special.GetPositionRef = GetSetPositions;
-	special.GetResetRefList = GetResetPositions;
-	special.SetAbility = SetSuperButtonSpell;
-	special.RemoveAbility = RemoveSuperButtonSpell;
-	special.UpdateCooldown = UpdateSpellCooldown;
-
-	if(updateFunc and type(updateFunc) == 'function') then
-		special.Update = updateFunc
-	else
-		special.Update = UpdateGeneric
-	end
-	if(eventFunc and type(eventFunc) == 'function') then
-		special:SetScript('OnEvent', eventFunc)
-	else
-		special:SetScript('OnEvent', SuperButtonSpell_OnEvent)
-	end
-
-	local Artwork = special.Panel:CreateTexture('$parentArtwork', 'BACKGROUND')
-	Artwork:SetPoint('CENTER', -2, 2)
-	Artwork:SetSizeToScale(256, 128)
-	Artwork:SetTexture(NO_ART)
-	Artwork:SetAlpha(0)
-	special.Artwork = Artwork
-
-	local Icon = special:CreateTexture('$parentIcon', 'BACKGROUND')
-	Icon:SetTexCoord(0.1, 0.9, 0.1, 0.9)
-	Icon:SetAllPoints()
-	special.Icon = Icon
-
-	local HotKey = special:CreateFontString('$parentHotKey', nil, 'NumberFontNormal')
-	HotKey:SetPoint('BOTTOMRIGHT', -5, 5)
-	special.HotKey = HotKey
-
-	local Cooldown = CreateFrame('Cooldown', '$parentCooldown', special, 'CooldownFrameTemplate')
-	Cooldown:ClearAllPoints()
-	Cooldown:SetPoint('TOPRIGHT', -2, -3)
-	Cooldown:SetPoint('BOTTOMLEFT', 2, 1)
-	Cooldown:Hide()
-	special.Cooldown = Cooldown
-
-	special:SetScript('OnUpdate', SuperSpellButton_OnUpdate)
-	special:RegisterEvent('UPDATE_BINDINGS')
-
-	special:SetAttribute('type', 'spell');
-	special:SetAttribute('_onattributechanged', [[
-		if(name == 'spell') then
-			if(value and not self:IsShown()) then
-				local refName = self:CallMethod('GetPositionRef');
-				local lastFrame = self:GetFrameRef(refName);
-				if(lastFrame) then
-					self:ClearAllPoints()
-					self:SetPoint("BOTTOM", lastFrame, "TOP", 0, 8)
-				end
-				self:Show()
-			elseif(not value) then
-				local refList = self:CallMethod('GetResetRefList');
-				local lastFrame, nextFrame;
-				if(refList) then
-					for _,refName in ipairs(refList) do
-						nextFrame = self:GetFrameRef(refName);
-						if(nextFrame) then
-							nextFrame:ClearAllPoints()
-							if(not lastFrame) then
-								lastFrame = self:GetFrameRef("SVUI_SuperButtonFrame");
-								nextFrame:SetPoint("CENTER", lastFrame, "CENTER", 0, 0);
-							else
-								nextFrame:SetPoint("BOTTOM", lastFrame, "TOP", 0, 8);
-							end
-						end
-					end
-				end
-				self:Hide()
-				self:ClearBindings()
-			end
-		end
-		if(self:IsShown() and (self.___binding ~= nil) and (name == 'spell' or name == 'binding')) then
-			self:ClearBindings()
-			local key = GetBindingKey(self.___binding)
-			if(key) then
-				self:SetBindingClick(1, key, self, 'LeftButton')
-			end
-		end
-	]]);
-
-	self.RegisteredButtons[buttonName] = special;
-
-	self:SetFrameReferences()
-
-	--special:Hide()
-
-	return special
-end
-
-function SuperButton:AddItem(buttonName, updateFunc, eventFunc, bindingKey)
-	local special = CreateFrame('Button', buttonName, UIParent, 'SecureActionButtonTemplate, SecureHandlerStateTemplate, SecureHandlerAttributeTemplate');
-	special:SetSizeToScale(50,50);
-	special:SetPointToScale("CENTER", self, "CENTER", 0, 0);
-	special:SetAlpha(0);
-	special:SetStylePanel("Icon");
-	special:SetScript('OnEnter', SuperItemButton_OnEnter);
-	special:SetScript('OnLeave', GameTooltip_Hide);
-	special:SetScript('OnShow', SuperButton_OnShow);
-	special:SetScript('OnHide', SuperButton_OnHide);
-
-	special.___posIndex = 1;
-	special.___binding = bindingKey;
-	special.updateTimer = 0;
-	special.rangeTimer = 0;
-
-	special.GetPositionRef = GetSetPositions;
-	special.GetResetRefList = GetResetPositions;
-	special.SetAbility = SetSuperButtonItem;
-	special.RemoveAbility = RemoveSuperButtonItem;
-	special.UpdateCooldown = UpdateItemCooldown;
-
-	if(updateFunc and type(updateFunc) == 'function') then
-		special.Update = updateFunc
-	else
-		special.Update = UpdateGeneric
-	end
-	if(eventFunc and type(eventFunc) == 'function') then
-		special:SetScript('OnEvent', eventFunc)
-	else
-		special:SetScript('OnEvent', SuperButtonItem_OnEvent)
-	end
-
-	local Artwork = special.Panel:CreateTexture('$parentArtwork', 'BACKGROUND')
-	Artwork:SetPoint('CENTER', -2, 2)
-	Artwork:SetSizeToScale(256, 128)
-	Artwork:SetTexture(NO_ART)
-	Artwork:SetAlpha(0)
-	special.Artwork = Artwork
-
-	local Icon = special:CreateTexture('$parentIcon', 'BACKGROUND')
-	Icon:SetTexCoord(0.1, 0.9, 0.1, 0.9)
-	Icon:SetAllPoints()
-	special.Icon = Icon
-
-	local HotKey = special:CreateFontString('$parentHotKey', nil, 'NumberFontNormal')
-	HotKey:SetPoint('BOTTOMRIGHT', -5, 5)
-	special.HotKey = HotKey
-
-	local Cooldown = CreateFrame('Cooldown', '$parentCooldown', special, 'CooldownFrameTemplate')
-	Cooldown:ClearAllPoints()
-	Cooldown:SetPoint('TOPRIGHT', -2, -3)
-	Cooldown:SetPoint('BOTTOMLEFT', 2, 1)
-	Cooldown:Hide()
-	special.Cooldown = Cooldown
-
-	special:RegisterEvent('UPDATE_BINDINGS')
-
-	special:SetAttribute('type', 'item');
-	special:SetAttribute('_onattributechanged', [[
-		if(name == 'item') then
-			if(value and not self:IsShown()) then
-				local refName = self:CallMethod('GetPositionRef');
-				local lastFrame = self:GetFrameRef(refName);
-				if(lastFrame) then
-					self:ClearAllPoints()
-					self:SetPoint("BOTTOM", lastFrame, "TOP", 0, 8)
-				end
-				self:Show()
-			elseif(not value) then
-				local refList = self:CallMethod('GetResetRefList');
-				local lastFrame, nextFrame;
-				if(refList) then
-					for _,refName in ipairs(refList) do
-						nextFrame = self:GetFrameRef(refName);
-						if(nextFrame) then
-							nextFrame:ClearAllPoints()
-							if(not lastFrame) then
-								lastFrame = self:GetFrameRef("SVUI_SuperButtonFrame");
-								nextFrame:SetPoint("CENTER", lastFrame, "CENTER", 0, 0);
-							else
-								nextFrame:SetPoint("BOTTOM", lastFrame, "TOP", 0, 8);
-							end
-						end
-					end
-				end
-				self:Hide()
-				self:ClearBindings()
-			end
-		end
-		if(self:IsShown() and (self.___binding ~= nil) and (name == 'item' or name == 'binding')) then
-			self:ClearBindings()
-			local key = GetBindingKey(self.___binding)
-			if(key) then
-				self:SetBindingClick(1, key, self, 'LeftButton')
-			end
-		end
-	]]);
-
-	self.RegisteredButtons[buttonName] = special;
-
-	self:SetFrameReferences()
-
-	--special:Hide()
-
-	return special
-end
---[[
-##########################################################
-PACKAGE CALL
-##########################################################
-]]--
-function SuperButton:Initialize()
-	self:SetParent(SV.Screen)
-	self:SetPointToScale("BOTTOM", SV.Screen, "BOTTOM", 0, 325)
-	self:SetSizeToScale(50,50)
-
-	SV.Mentalo:Add(self, L["Special Ability Button"])
-end
-
-SV.SuperButton = SuperButton;
\ No newline at end of file
diff --git a/Interface/AddOns/SVUI/framework/widgets/widgets.xml b/Interface/AddOns/SVUI/framework/widgets/widgets.xml
index 5917881..036cb0b 100644
--- a/Interface/AddOns/SVUI/framework/widgets/widgets.xml
+++ b/Interface/AddOns/SVUI/framework/widgets/widgets.xml
@@ -1,5 +1,5 @@
 <Ui xmlns="http://www.blizzard.com/wow/ui/">
-	<Frame name="SVUI_PanelTemplate" virtual="true" toplevel="true">
+	<Frame name="SVUI_StyleTemplate" virtual="true" toplevel="true">
         <Layers>
             <Layer level="BACKGROUND">
                 <Texture name="$parentBG" setAllPoints="true"/>
@@ -222,13 +222,6 @@
         </Frames>
     </Frame>

-    <Frame name="SVUI_SuperButtonFrame" parent="UIParent" hidden="true">
-        <Size x="64" y="64"/>
-        <Anchors>
-            <Anchor point="BOTTOM" x="0" y="160"/>
-        </Anchors>
-    </Frame>
-
     <Frame name="SVUI_BoozedUpFrame" parent="UIParent" setAllPoints="true">
         <Frames>
             <PlayerModel name="$parentScreenEffect1" parentKey="ScreenEffect1" frameStrata="BACKGROUND" setAllPoints="true" />
diff --git a/Interface/AddOns/SVUI/packages/aura/SVAura.lua b/Interface/AddOns/SVUI/packages/aura/SVAura.lua
index 3adf281..76f6c02 100644
--- a/Interface/AddOns/SVUI/packages/aura/SVAura.lua
+++ b/Interface/AddOns/SVUI/packages/aura/SVAura.lua
@@ -584,7 +584,7 @@ function MOD:Load()
 	local auras = CreateFrame("Frame", "SVUI_AurasAnchor", UIParent)
 	auras:SetSize(CB_WIDTH, CB_HEIGHT)
 	auras:SetPointToScale("TOPRIGHT", Minimap, "TOPLEFT", -8, 0)
-	SV:AddToDisplayAudit(auras)
+	SV:ManageVisibility(auras)

 	self.BuffFrame = CreateAuraHeader("HELPFUL")
 	self.BuffFrame:SetPoint("TOPRIGHT", auras, "TOPLEFT", -8, 0)
@@ -594,7 +594,7 @@ function MOD:Load()
 	-- SVUI_ConsolidatedBuffs:SetParent(SV.Screen)
 	SVUI_ConsolidatedBuffs:SetAllPoints(auras)
 	SVUI_ConsolidatedBuffs:SetFrameStrata("BACKGROUND")
-	SV:AddToDisplayAudit(SVUI_ConsolidatedBuffs)
+	SV:ManageVisibility(SVUI_ConsolidatedBuffs)

 	for i = 1, NUM_LE_RAID_BUFF_TYPES do
 		SVUI_ConsolidatedBuffs[i] = CreateHyperBuff(i)
diff --git a/Interface/AddOns/SVUI/packages/bag/SVBag.lua b/Interface/AddOns/SVUI/packages/bag/SVBag.lua
index 07371ce..24abe2e 100644
--- a/Interface/AddOns/SVUI/packages/bag/SVBag.lua
+++ b/Interface/AddOns/SVUI/packages/bag/SVBag.lua
@@ -44,6 +44,8 @@ local SV = select(2, ...)
 local L = SV.L
 local MOD = SV:NewPackage("SVBag", L["Bags"]);
 local TTIP = SV.SVTip;
+
+MOD.VendorQueue = {};
 --[[
 ##########################################################
 LOCAL VARS
@@ -66,7 +68,6 @@ local ICON_DEPOSIT = [[Interface\AddOns\SVUI\assets\artwork\Icons\BAGS-DEPOSIT]]
 local ICON_VENDOR = [[Interface\AddOns\SVUI\assets\artwork\Icons\BAGS-VENDOR]];
 local ICON_REAGENTS = [[Interface\AddOns\SVUI\assets\artwork\Icons\BAGS-REAGENTS]];
 local numBagFrame = NUM_BAG_FRAMES + 1;
-local VendorQueue = {};
 local GEAR_CACHE, GEARSET_LISTING = {}, {};
 local internalTimer;
 local RefProfessionColors = {
@@ -80,7 +81,6 @@ local RefProfessionColors = {
 	[0x10000] = {222/255,13/255,65/255},
 	[0x100000] = {18/255,224/255,180/255}
 }
-local BagFilters = CreateFrame("Frame", "SVUI_BagFilterMenu", UIParent);
 --[[
 ##########################################################
 LOCAL FUNCTIONS
@@ -210,47 +210,6 @@ local function BuildEquipmentMap()
 		end
 	end
 end
-
-local DD_OnClick = function(self)
-	SetBagSlotFlag(self.BagID, self.FilterID, not GetBagSlotFlag(self.BagID, self.FilterID))
-	self:GetParent():Hide()
-end
-
-local DDClear_OnClick = function(self)
-	for i = LE_BAG_FILTER_FLAG_EQUIPMENT, NUM_LE_BAG_FILTER_FLAGS do
-		SetBagSlotFlag(self.BagID, i, false)
-	end
-	self:GetParent():Hide()
-end
-
-local DD_OnEnter = function(self)
-	self.hoverTex:Show()
-end
-
-local DD_OnLeave = function(self)
-	self.hoverTex:Hide()
-end
-
-local function SetFilterMenu(self)
-	for i = LE_BAG_FILTER_FLAG_EQUIPMENT, NUM_LE_BAG_FILTER_FLAGS do
-		if(GetBagSlotFlag(self.internalID, i)) then
-			BagFilters.buttons[i].activeTex:Show()
-		else
-			BagFilters.buttons[i].activeTex:Hide()
-		end
-		BagFilters.buttons[i].BagID = self.internalID
-	end
-
-	BagFilters.buttons[NUM_LE_BAG_FILTER_FLAGS + 1].BagID = self.internalID
-
-	local maxHeight = ((NUM_LE_BAG_FILTER_FLAGS) * 16) + 30
-	local maxWidth = 135
-
-	BagFilters:SetSize(maxWidth, maxHeight)
-	BagFilters:ClearAllPoints()
-	BagFilters:SetPoint("TOPLEFT", self, "BOTTOMLEFT", 0, -8)
-	ToggleFrame(BagFilters)
-end
 --[[
 ##########################################################
 CORE FUNCTIONS
@@ -306,7 +265,7 @@ function MOD:SlotUpdate(bagID, slotID)
 	local isQuestItem, questId, isActiveQuest = GetContainerItemQuestInfo(bagID, slotID);

 	local itemID = GetContainerItemID(bagID, slotID);
-	if(itemID and VendorQueue[itemID]) then
+	if(itemID and MOD.VendorQueue[itemID]) then
 		slot.JunkIcon:Show()
 	else
 		slot.JunkIcon:Hide()
@@ -391,7 +350,7 @@ local SlotUpdate = function(self, slotID)
 	local isQuestItem, questId, isActiveQuest = GetContainerItemQuestInfo(bag, slotID);

 	local itemID = GetContainerItemID(bag, slotID);
-	if(itemID and VendorQueue[itemID]) then
+	if(itemID and MOD.VendorQueue[itemID]) then
 		slot.JunkIcon:Show()
 	else
 		slot.JunkIcon:Hide()
@@ -491,48 +450,6 @@ local RefreshReagentSlots = function(self)
 	end
 end

-local BagMenu_OnEnter = function(self)
-	local parent = self.parent
-	if(not parent) then return end
-	for bagID, bag in pairs(parent.Bags) do
-		local numSlots = GetContainerNumSlots(bagID)
-		for slotID = 1, numSlots do
-			if bag[slotID] then
-				if bagID == self.internalID then
-					bag[slotID]:SetAlpha(1)
-				else
-					bag[slotID]:SetAlpha(0.1)
-				end
-			end
-		end
-	end
-
-	GameTooltip:AppendText(" |cff00FF11[SHIFT-CLICK] To Set Filters|r")
-end
-
-local BagMenu_OnLeave = function(self)
-	local parent = self.parent
-	if(not parent) then return end
-	for bagID, bag in pairs(parent.Bags) do
-		local numSlots = GetContainerNumSlots(bagID)
-		for slotID = 1, numSlots do
-			if bag[slotID] then
-				bag[slotID]:SetAlpha(1)
-			end
-		end
-	end
-end
-
-local BAG_FILTER_LABELS = _G.BAG_FILTER_LABELS;
-
-local BagMenu_OnClick = function(self)
-	if IsShiftKeyDown() then
-		SetFilterMenu(self);
-	elseif(BagFilters:IsShown()) then
-		ToggleFrame(BagFilters)
-	end
-end
-
 local ContainerFrame_UpdateCooldowns = function(self)
 	if self.isReagent then return end
 	for _, bagID in ipairs(self.BagIDs) do
@@ -633,20 +550,13 @@ local ContainerFrame_UpdateLayout = function(self)
 				bagSlot:SetPushedTexture("")
 				bagSlot:SetScript("OnClick", nil)
 				bagSlot:RemoveTextures()
-				bagSlot:SetStylePanel("Slot", true, 2, 0, 0, 0.5);
+				bagSlot:SetStylePanel("Slot", 2, 0, 0, 0.5);

 				if(not bagSlot.icon) then
 					bagSlot.icon = bagSlot:CreateTexture(nil, "BORDER");
 				end
 				bagSlot.icon:SetAllPointsIn()
 				bagSlot.icon:SetTexCoord(0.1, 0.9, 0.1, 0.9)
-				-- hooksecurefunc(bagSlot.icon, "SetTexture", function(self)
-				-- 	if(DEBUG_BAGS) then
-				-- 		print(self:GetParent():GetName())
-				-- 	end
-				-- end)
-				hooksecurefunc(bagSlot, "UpdateTooltip", BagMenu_OnEnter)
-				bagSlot:HookScript("OnLeave", BagMenu_OnLeave)

 				if(not bagSlot.tooltipText) then
 					bagSlot.tooltipText = ""
@@ -656,7 +566,7 @@ local ContainerFrame_UpdateLayout = function(self)
 					bagSlot:SetID(bagID - 4)
 					bagSlot.internalID = bagID;
 				else
-					bagSlot:HookScript("OnClick", BagMenu_OnClick)
+					MOD:NewFilterMenu(bagSlot)
 					bagSlot.internalID = (bagID + 1);
 				end

@@ -726,7 +636,7 @@ local ContainerFrame_UpdateLayout = function(self)
 					self.Bags[bagID][slotID]:SetNormalTexture("");
 					self.Bags[bagID][slotID]:SetCheckedTexture("");
 					self.Bags[bagID][slotID]:RemoveTextures();
-					self.Bags[bagID][slotID]:SetStylePanel("Slot", true, 1, 0, 0);
+					self.Bags[bagID][slotID]:SetStylePanel("Slot", 1, 0, 0);

 					if(not self.Bags[bagID][slotID].NewItemTexture) then
 						self.Bags[bagID][slotID].NewItemTexture = self.Bags[bagID][slotID]:CreateTexture(nil, "OVERLAY", 1);
@@ -868,7 +778,7 @@ local ReagentFrame_UpdateLayout = function(self)
 			slot:SetNormalTexture(nil);
 			slot:SetCheckedTexture(nil);
 			slot:RemoveTextures()
-			slot:SetStylePanel("Slot", true, 2, 0, 0);
+			slot:SetStylePanel("Slot", 2, 0, 0);

 			slot.NewItemTexture = slot:CreateTexture(nil, "OVERLAY", 1);
 			slot.NewItemTexture:SetAllPointsIn(slot);
@@ -975,9 +885,8 @@ function MOD:VendorGrays(destroy, silent, request)
 							end
 							totalValue = totalValue + sellPrice;
 							canDelete = canDelete + 1
-						elseif(itemID and VendorQueue[itemID]) then
+						elseif(itemID and MOD.VendorQueue[itemID]) then
 							if(not request) then
-								VendorQueue[itemID] = nil
 								PickupContainerItem(bagID, slot)
 								DeleteCursorItem()
 							end
@@ -991,9 +900,8 @@ function MOD:VendorGrays(destroy, silent, request)
 								PickupMerchantItem()
 							end
 							totalValue = totalValue + sellPrice
-						elseif(itemID and VendorQueue[itemID]) then
+						elseif(itemID and MOD.VendorQueue[itemID]) then
 							if(not request) then
-								VendorQueue[itemID] = nil
 								UseContainerItem(bagID, slot)
 								PickupMerchantItem()
 							end
@@ -1075,8 +983,8 @@ do
 		local icon = _G[bar:GetName().."IconTexture"]
 		bar.oldTex = icon:GetTexture()
 		bar:RemoveTextures()
-		bar:SetStylePanel("Fixed", "Default")
-		bar:SetStylePanel("Slot", false, 1, nil, nil, true)
+		bar:SetStylePanel("!_Frame", "Default")
+		bar:SetStylePanel("!_Slot", 1, nil, nil, true)
 		icon:SetTexture(bar.oldTex)
 		icon:SetAllPointsIn()
 		icon:SetTexCoord(0.1, 0.9, 0.1, 0.9 )
@@ -1180,7 +1088,7 @@ do
 		end

 	    if not SVUI_BagBar_MOVE then
-	    	SVUI_BagBar:SetStylePanel("Default", "Default")
+	    	SVUI_BagBar:SetStylePanel("Frame", "Default")
 	        SV.Mentalo:Add(SVUI_BagBar, L["Bags Bar"])
 	    end

@@ -1346,7 +1254,7 @@ do
 		local bagsCount = #self.BagFrames + 1;
 		local frame = CreateFrame("Button", "SVUI_ContainerFrame", UIParent)

-		frame:SetStylePanel("Default", "Container")
+		frame:SetStylePanel("Frame", "Container")
 		frame:SetFrameStrata("HIGH")
 		frame.UpdateLayout = ContainerFrame_UpdateLayout;
 		frame.RefreshBags = ContainerFrame_UpdateBags;
@@ -1399,7 +1307,7 @@ do

 		frame.BagMenu = CreateFrame("Button", "SVUI_ContainerFrameBagMenu", frame)
 		frame.BagMenu:SetPointToScale("BOTTOMLEFT", frame, "TOPLEFT", 0, 1)
-		frame.BagMenu:SetStylePanel("Fixed", "Transparent")
+		frame.BagMenu:SetStylePanel("!_Frame", "Transparent")
 		frame.BagMenu:Hide()

 		frame.goldText = frame:CreateFontString(nil, "OVERLAY")
@@ -1480,8 +1388,8 @@ do
 		frame.bagsButton:SetScript("OnLeave", Tooltip_Hide)
 		local BagBtn_OnClick = function()
 			PlaySound("igMainMenuOption");
-			if(BagFilters:IsShown()) then
-				ToggleFrame(BagFilters)
+			if(SVUI_BagFilterMenu and SVUI_BagFilterMenu:IsShown()) then
+				ToggleFrame(SVUI_BagFilterMenu)
 			end
 			ToggleFrame(frame.BagMenu)
 		end
@@ -1504,7 +1412,7 @@ do
 		for h = 1, MAX_WATCHED_TOKENS do
 			frame.currencyButton[h] = CreateFrame("Button", nil, frame.currencyButton)
 			frame.currencyButton[h]:SetSizeToScale(22)
-			frame.currencyButton[h]:SetStylePanel("Fixed", "Default")
+			frame.currencyButton[h]:SetStylePanel("!_Frame", "Default")
 			frame.currencyButton[h]:SetID(h)
 			frame.currencyButton[h].icon = frame.currencyButton[h]:CreateTexture(nil, "OVERLAY")
 			frame.currencyButton[h].icon:SetAllPointsIn()
@@ -1534,7 +1442,7 @@ do
 		local bagsCount = #self.BagFrames + 1;

 		local frame = CreateFrame("Button", bagName, isReagent and self.BankFrame or SV.Screen)
-		frame:SetStylePanel("Default", "Container")
+		frame:SetStylePanel("Frame", "Container")
 		frame:SetFrameStrata("HIGH")
 		frame:SetFrameLevel(SVUI_ContainerFrame:GetFrameLevel() + 99)

@@ -1610,7 +1518,7 @@ do
 		if(not isReagent) then
 			frame.BagMenu = CreateFrame("Button", bagName.."BagMenu", frame)
 			frame.BagMenu:SetPointToScale("BOTTOMLEFT", frame, "TOPLEFT", 0, 1)
-			frame.BagMenu:SetStylePanel("Fixed", "Transparent")
+			frame.BagMenu:SetStylePanel("!_Frame", "Transparent")
 			frame.BagMenu:Hide()

 			local Sort_OnClick = MOD:RunSortingProcess(MOD.Sort, "bank", SortBankBags)
@@ -1639,8 +1547,8 @@ do
 			frame.bagsButton:SetScript("OnLeave", Tooltip_Hide)
 			local BagBtn_OnClick = function()
 				PlaySound("igMainMenuOption");
-				if(BagFilters:IsShown()) then
-					ToggleFrame(BagFilters)
+				if(SVUI_BagFilterMenu and SVUI_BagFilterMenu:IsShown()) then
+					ToggleFrame(SVUI_BagFilterMenu)
 				end
 				local numSlots, _ = GetNumBankSlots()
 				if numSlots  >= 1 then
@@ -1828,12 +1736,12 @@ local _hook_OnModifiedClick = function(self, button)
     	local bagID = self:GetParent():GetID()
     	local itemID = GetContainerItemID(bagID, slotID);
     	if(itemID) then
-    		if(VendorQueue[itemID]) then
+    		if(MOD.VendorQueue[itemID]) then
     			if(self.JunkIcon) then self.JunkIcon:Hide() end
-    			VendorQueue[itemID] = nil
+    			MOD.VendorQueue[itemID] = nil
 	    	else
 	    		if(self.JunkIcon) then self.JunkIcon:Show() end
-	    		VendorQueue[itemID] = true
+	    		MOD.VendorQueue[itemID] = true
 	    	end
     	end
     end
@@ -1901,83 +1809,18 @@ function MOD:Load()
 		return
 	end
 	if not SV.db.SVBag.enable then return end
+
+	SV.cache.VendorMarks = SV.cache.VendorMarks or {}
+
+	self.VendorQueue = SV.cache.VendorMarks;
+
 	self:ModifyBagBar()
 	self.BagFrames = {}
 	self:MakeBags()
 	self:ModifyBags()
 	self.BagFrame:UpdateLayout()

-	-- BagFilters:SetParent(SV.Screen)
-	BagFilters:SetStylePanel("Default", "Default")
-	BagFilters.buttons = {}
-	BagFilters:SetFrameStrata("DIALOG")
-	BagFilters:SetClampedToScreen(true)
-
-	for i = LE_BAG_FILTER_FLAG_EQUIPMENT, NUM_LE_BAG_FILTER_FLAGS do
-		BagFilters.buttons[i] = CreateFrame("Button", nil, BagFilters)
-
-		BagFilters.buttons[i].hoverTex = BagFilters.buttons[i]:CreateTexture(nil, 'OVERLAY')
-		BagFilters.buttons[i].hoverTex:SetAllPoints()
-		BagFilters.buttons[i].hoverTex:SetTexture([[Interface\QuestFrame\UI-QuestTitleHighlight]])
-		BagFilters.buttons[i].hoverTex:SetBlendMode("ADD")
-		BagFilters.buttons[i].hoverTex:Hide()
-
-		BagFilters.buttons[i].activeTex = BagFilters.buttons[i]:CreateTexture(nil, 'OVERLAY')
-		BagFilters.buttons[i].activeTex:SetAllPoints()
-		BagFilters.buttons[i].activeTex:SetTexture([[Interface\QuestFrame\UI-QuestTitleHighlight]])
-		BagFilters.buttons[i].activeTex:SetVertexColor(0,0.7,0)
-		BagFilters.buttons[i].activeTex:SetBlendMode("ADD")
-		BagFilters.buttons[i].activeTex:Hide()
-
-		BagFilters.buttons[i].text = BagFilters.buttons[i]:CreateFontString(nil, 'BORDER')
-		BagFilters.buttons[i].text:SetAllPoints()
-		BagFilters.buttons[i].text:SetFont(SV.Media.font.default,12,"OUTLINE")
-		BagFilters.buttons[i].text:SetJustifyH("LEFT")
-		BagFilters.buttons[i].text:SetText(BAG_FILTER_LABELS[i])
-
-		BagFilters.buttons[i]:SetScript("OnEnter", DD_OnEnter)
-		BagFilters.buttons[i]:SetScript("OnLeave", DD_OnLeave)
-
-		BagFilters.buttons[i]:SetHeight(16)
-		BagFilters.buttons[i]:SetWidth(115)
-
-		BagFilters.buttons[i].FilterID = i
-		BagFilters.buttons[i]:SetScript("OnClick", DD_OnClick)
-
-		if i == LE_BAG_FILTER_FLAG_EQUIPMENT then
-			BagFilters.buttons[i]:SetPoint("TOPLEFT", BagFilters, "TOPLEFT", 10, -10)
-		else
-			BagFilters.buttons[i]:SetPoint("TOPLEFT", BagFilters.buttons[i - 1], "BOTTOMLEFT", 0, 0)
-		end
-
-		BagFilters.buttons[i]:Show()
-	end
-
-	local clearID = NUM_LE_BAG_FILTER_FLAGS + 1
-
-	BagFilters.buttons[clearID] = CreateFrame("Button", nil, BagFilters)
-	BagFilters.buttons[clearID].hoverTex = BagFilters.buttons[clearID]:CreateTexture(nil, 'OVERLAY')
-	BagFilters.buttons[clearID].hoverTex:SetAllPoints()
-	BagFilters.buttons[clearID].hoverTex:SetTexture([[Interface\QuestFrame\UI-QuestTitleHighlight]])
-	BagFilters.buttons[clearID].hoverTex:SetBlendMode("ADD")
-	BagFilters.buttons[clearID].hoverTex:Hide()
-	BagFilters.buttons[clearID].text = BagFilters.buttons[clearID]:CreateFontString(nil, 'BORDER')
-	BagFilters.buttons[clearID].text:SetAllPoints()
-	BagFilters.buttons[clearID].text:SetFont(SV.Media.font.default,12,"OUTLINE")
-	BagFilters.buttons[clearID].text:SetJustifyH("LEFT")
-	BagFilters.buttons[clearID].text:SetText(CLEAR_ALL .. " " .. FILTERS)
-	BagFilters.buttons[clearID]:SetScript("OnEnter", DD_OnEnter)
-	BagFilters.buttons[clearID]:SetScript("OnLeave", DD_OnLeave)
-	BagFilters.buttons[clearID]:SetHeight(16)
-	BagFilters.buttons[clearID]:SetWidth(115)
-	BagFilters.buttons[clearID].FilterID = 0
-	BagFilters.buttons[clearID]:SetScript("OnClick", DDClear_OnClick)
-	BagFilters.buttons[clearID]:SetPoint("TOPLEFT", BagFilters.buttons[NUM_LE_BAG_FILTER_FLAGS], "BOTTOMLEFT", 0, -10)
-	BagFilters.buttons[clearID]:Show()
-
-
-	BagFilters:Hide()
-	SV:AddToDisplayAudit(BagFilters)
+	self:InitializeMenus()

 	BankFrame:UnregisterAllEvents()
 	for i = 1, NUM_CONTAINER_FRAMES do
@@ -1993,9 +1836,8 @@ function MOD:Load()
 	hooksecurefunc("ToggleAllBags", _toggleBackpack)
 	hooksecurefunc("ToggleBackpack", _toggleBackpack)
 	hooksecurefunc("BackpackTokenFrame_Update", self.RefreshTokens)
-	hooksecurefunc("ContainerFrameItemButton_OnModifiedClick", _hook_OnModifiedClick)

-	--hooksecurefunc("BankFrameItemButton_Update", function(button) print(button:GetName()) end)
+	hooksecurefunc("ContainerFrameItemButton_OnModifiedClick", _hook_OnModifiedClick)

 	self:RegisterEvent("BANKFRAME_OPENED")
 	self:RegisterEvent("BANKFRAME_CLOSED")
diff --git a/Interface/AddOns/SVUI/packages/bag/SVBag.xml b/Interface/AddOns/SVUI/packages/bag/SVBag.xml
index fa7315f..8015600 100644
--- a/Interface/AddOns/SVUI/packages/bag/SVBag.xml
+++ b/Interface/AddOns/SVUI/packages/bag/SVBag.xml
@@ -1,5 +1,6 @@
 <Ui xmlns="http://www.blizzard.com/wow/ui/">
 	<Script file='SVBag.lua'/>
+	<Script file="components\organization.lua"/>
 	<Script file="components\sorting.lua"/>
 	<Script file="components\breakstuff.lua"/>
 </Ui>
\ No newline at end of file
diff --git a/Interface/AddOns/SVUI/packages/bag/components/breakstuff.lua b/Interface/AddOns/SVUI/packages/bag/components/breakstuff.lua
index a49c95e..2feed49 100644
--- a/Interface/AddOns/SVUI/packages/bag/components/breakstuff.lua
+++ b/Interface/AddOns/SVUI/packages/bag/components/breakstuff.lua
@@ -312,7 +312,7 @@ function MOD:BreakStuffLoader()
 	BreakStuffButton:SetSizeToScale(size, size)
 	BreakStuffButton:SetPointToScale("RIGHT", SV.Dock.BottomRight.Bar.ToolBar, "LEFT", -6, 0)
 	BreakStuffButton:Show();
-	BreakStuffButton:SetStylePanel("Framed")
+	BreakStuffButton:SetStylePanel("HeavyButton")
 	BreakStuffButton.icon=BreakStuffButton:CreateTexture(nil,"OVERLAY")
 	BreakStuffButton.icon:SetAllPointsIn(BreakStuffButton,2,2)
 	BreakStuffButton.icon:SetTexture(ICONARTFILE)
diff --git a/Interface/AddOns/SVUI/packages/bag/components/organization.lua b/Interface/AddOns/SVUI/packages/bag/components/organization.lua
new file mode 100644
index 0000000..f3c9ea1
--- /dev/null
+++ b/Interface/AddOns/SVUI/packages/bag/components/organization.lua
@@ -0,0 +1,212 @@
+--[[
+##############################################################################
+_____/\\\\\\\\\\\____/\\\________/\\\__/\\\________/\\\__/\\\\\\\\\\\_       #
+ ___/\\\/////////\\\_\/\\\_______\/\\\_\/\\\_______\/\\\_\/////\\\///__      #
+  __\//\\\______\///__\//\\\______/\\\__\/\\\_______\/\\\_____\/\\\_____     #
+   ___\////\\\__________\//\\\____/\\\___\/\\\_______\/\\\_____\/\\\_____    #
+	______\////\\\________\//\\\__/\\\____\/\\\_______\/\\\_____\/\\\_____   #
+	 _________\////\\\______\//\\\/\\\_____\/\\\_______\/\\\_____\/\\\_____  #
+	  __/\\\______\//\\\______\//\\\\\______\//\\\______/\\\______\/\\\_____ #
+	   _\///\\\\\\\\\\\/________\//\\\________\///\\\\\\\\\/____/\\\\\\\\\\\_#
+		___\///////////___________\///___________\/////////_____\///////////_#
+##############################################################################
+S U P E R - V I L L A I N - U I   By: Munglunch                              #
+##############################################################################
+##########################################################
+LOCALIZED LUA FUNCTIONS
+##########################################################
+]]--
+--[[ GLOBALS ]]--
+local _G = _G;
+local unpack  = _G.unpack;
+local select  = _G.select;
+local pairs   = _G.pairs;
+local ipairs  = _G.ipairs;
+local tinsert   = _G.tinsert;
+local table   = _G.table;
+local match = string.match;
+--[[ TABLE METHODS ]]--
+local tremove, tcopy, twipe, tsort, tcat = table.remove, table.copy, table.wipe, table.sort, table.concat;
+--[[
+##########################################################
+GET ADDON DATA
+##########################################################
+]]--
+local SV = select(2, ...)
+local L = SV.L;
+local MOD = SV.SVBag;
+local TTIP = SV.SVTip;
+--[[
+##########################################################
+LOCAL VARS
+##########################################################
+]]--
+local BAG_FILTER_LABELS = _G.BAG_FILTER_LABELS;
+
+local BagFilters = CreateFrame("Frame", "SVUI_BagFilterMenu", UIParent);
+--[[
+##########################################################
+LOCAL FUNCTIONS
+##########################################################
+]]--
+local DD_OnClick = function(self)
+	SetBagSlotFlag(self.BagID, self.FilterID, not GetBagSlotFlag(self.BagID, self.FilterID))
+	self:GetParent():Hide()
+end
+
+local DDClear_OnClick = function(self)
+	for i = LE_BAG_FILTER_FLAG_EQUIPMENT, NUM_LE_BAG_FILTER_FLAGS do
+		SetBagSlotFlag(self.BagID, i, false)
+	end
+	self:GetParent():Hide()
+end
+
+local DD_OnEnter = function(self)
+	self.hoverTex:Show()
+end
+
+local DD_OnLeave = function(self)
+	self.hoverTex:Hide()
+end
+
+local SetFilterMenu = function(self)
+	for i = LE_BAG_FILTER_FLAG_EQUIPMENT, NUM_LE_BAG_FILTER_FLAGS do
+		if(GetBagSlotFlag(self.internalID, i)) then
+			BagFilters.buttons[i].activeTex:Show()
+		else
+			BagFilters.buttons[i].activeTex:Hide()
+		end
+		BagFilters.buttons[i].BagID = self.internalID
+	end
+
+	BagFilters.buttons[NUM_LE_BAG_FILTER_FLAGS + 1].BagID = self.internalID
+
+	local maxHeight = ((NUM_LE_BAG_FILTER_FLAGS) * 16) + 30
+	local maxWidth = 135
+
+	BagFilters:SetSize(maxWidth, maxHeight)
+	BagFilters:ClearAllPoints()
+	BagFilters:SetPoint("TOPLEFT", self, "BOTTOMLEFT", 0, -8)
+	ToggleFrame(BagFilters)
+end
+
+local BagMenu_OnEnter = function(self)
+	local parent = self.parent
+	if(not parent) then return end
+	for bagID, bag in pairs(parent.Bags) do
+		local numSlots = GetContainerNumSlots(bagID)
+		for slotID = 1, numSlots do
+			if bag[slotID] then
+				if bagID == self.internalID then
+					bag[slotID]:SetAlpha(1)
+				else
+					bag[slotID]:SetAlpha(0.1)
+				end
+			end
+		end
+	end
+
+	GameTooltip:AppendText(" |cff00FF11[SHIFT-CLICK] To Set Filters|r")
+end
+
+local BagMenu_OnLeave = function(self)
+	local parent = self.parent
+	if(not parent) then return end
+	for bagID, bag in pairs(parent.Bags) do
+		local numSlots = GetContainerNumSlots(bagID)
+		for slotID = 1, numSlots do
+			if bag[slotID] then
+				bag[slotID]:SetAlpha(1)
+			end
+		end
+	end
+end
+
+local BagMenu_OnClick = function(self)
+	if IsShiftKeyDown() then
+		SetFilterMenu(self);
+	elseif(BagFilters:IsShown()) then
+		ToggleFrame(BagFilters)
+	end
+end
+
+
+function MOD:NewFilterMenu(bag)
+	hooksecurefunc(bag, "UpdateTooltip", BagMenu_OnEnter)
+	bag:HookScript("OnLeave", BagMenu_OnLeave)
+	bag:HookScript("OnClick", BagMenu_OnClick)
+end
+
+function MOD:InitializeMenus()
+	-- BagFilters:SetParent(SV.Screen)
+	BagFilters:SetStylePanel("Frame", "Default")
+	BagFilters.buttons = {}
+	BagFilters:SetFrameStrata("DIALOG")
+	BagFilters:SetClampedToScreen(true)
+
+	for i = LE_BAG_FILTER_FLAG_EQUIPMENT, NUM_LE_BAG_FILTER_FLAGS do
+		BagFilters.buttons[i] = CreateFrame("Button", nil, BagFilters)
+
+		BagFilters.buttons[i].hoverTex = BagFilters.buttons[i]:CreateTexture(nil, 'OVERLAY')
+		BagFilters.buttons[i].hoverTex:SetAllPoints()
+		BagFilters.buttons[i].hoverTex:SetTexture([[Interface\QuestFrame\UI-QuestTitleHighlight]])
+		BagFilters.buttons[i].hoverTex:SetBlendMode("ADD")
+		BagFilters.buttons[i].hoverTex:Hide()
+
+		BagFilters.buttons[i].activeTex = BagFilters.buttons[i]:CreateTexture(nil, 'OVERLAY')
+		BagFilters.buttons[i].activeTex:SetAllPoints()
+		BagFilters.buttons[i].activeTex:SetTexture([[Interface\QuestFrame\UI-QuestTitleHighlight]])
+		BagFilters.buttons[i].activeTex:SetVertexColor(0,0.7,0)
+		BagFilters.buttons[i].activeTex:SetBlendMode("ADD")
+		BagFilters.buttons[i].activeTex:Hide()
+
+		BagFilters.buttons[i].text = BagFilters.buttons[i]:CreateFontString(nil, 'BORDER')
+		BagFilters.buttons[i].text:SetAllPoints()
+		BagFilters.buttons[i].text:SetFont(SV.Media.font.default,12,"OUTLINE")
+		BagFilters.buttons[i].text:SetJustifyH("LEFT")
+		BagFilters.buttons[i].text:SetText(BAG_FILTER_LABELS[i])
+
+		BagFilters.buttons[i]:SetScript("OnEnter", DD_OnEnter)
+		BagFilters.buttons[i]:SetScript("OnLeave", DD_OnLeave)
+
+		BagFilters.buttons[i]:SetHeight(16)
+		BagFilters.buttons[i]:SetWidth(115)
+
+		BagFilters.buttons[i].FilterID = i
+		BagFilters.buttons[i]:SetScript("OnClick", DD_OnClick)
+
+		if i == LE_BAG_FILTER_FLAG_EQUIPMENT then
+			BagFilters.buttons[i]:SetPoint("TOPLEFT", BagFilters, "TOPLEFT", 10, -10)
+		else
+			BagFilters.buttons[i]:SetPoint("TOPLEFT", BagFilters.buttons[i - 1], "BOTTOMLEFT", 0, 0)
+		end
+
+		BagFilters.buttons[i]:Show()
+	end
+
+	local clearID = NUM_LE_BAG_FILTER_FLAGS + 1
+
+	BagFilters.buttons[clearID] = CreateFrame("Button", nil, BagFilters)
+	BagFilters.buttons[clearID].hoverTex = BagFilters.buttons[clearID]:CreateTexture(nil, 'OVERLAY')
+	BagFilters.buttons[clearID].hoverTex:SetAllPoints()
+	BagFilters.buttons[clearID].hoverTex:SetTexture([[Interface\QuestFrame\UI-QuestTitleHighlight]])
+	BagFilters.buttons[clearID].hoverTex:SetBlendMode("ADD")
+	BagFilters.buttons[clearID].hoverTex:Hide()
+	BagFilters.buttons[clearID].text = BagFilters.buttons[clearID]:CreateFontString(nil, 'BORDER')
+	BagFilters.buttons[clearID].text:SetAllPoints()
+	BagFilters.buttons[clearID].text:SetFont(SV.Media.font.default,12,"OUTLINE")
+	BagFilters.buttons[clearID].text:SetJustifyH("LEFT")
+	BagFilters.buttons[clearID].text:SetText(CLEAR_ALL .. " " .. FILTERS)
+	BagFilters.buttons[clearID]:SetScript("OnEnter", DD_OnEnter)
+	BagFilters.buttons[clearID]:SetScript("OnLeave", DD_OnLeave)
+	BagFilters.buttons[clearID]:SetHeight(16)
+	BagFilters.buttons[clearID]:SetWidth(115)
+	BagFilters.buttons[clearID].FilterID = 0
+	BagFilters.buttons[clearID]:SetScript("OnClick", DDClear_OnClick)
+	BagFilters.buttons[clearID]:SetPoint("TOPLEFT", BagFilters.buttons[NUM_LE_BAG_FILTER_FLAGS], "BOTTOMLEFT", 0, -10)
+	BagFilters.buttons[clearID]:Show()
+
+
+	BagFilters:Hide()
+	SV:ManageVisibility(BagFilters)
+end
\ No newline at end of file
diff --git a/Interface/AddOns/SVUI/packages/bar/SVBar.lua b/Interface/AddOns/SVUI/packages/bar/SVBar.lua
index d3622a5..5f47038 100644
--- a/Interface/AddOns/SVUI/packages/bar/SVBar.lua
+++ b/Interface/AddOns/SVUI/packages/bar/SVBar.lua
@@ -175,7 +175,7 @@ local function SaveActionButton(parent)
 	end
 	MOD:FixKeybindText(parent)
 	MOD.ButtonCache[parent] = true
-	parent:SetStylePanel("Slot", true, 2, 0, 0, 0.75, true)
+	parent:SetStylePanel("Slot", 2, 0, 0, 0.75, true)
 	parent:SetCheckedTexture("")
 end

@@ -898,7 +898,7 @@ CreateActionBars = function(self)
 		bg:SetAllPoints()
 		bg:SetFrameLevel(0)
 		thisBar:SetFrameLevel(5)
-		bg:SetStylePanel("Default", "Component")
+		bg:SetStylePanel("Frame", "Heavy")
 		bg:SetPanelColor("dark")
 		thisBar.backdrop = bg

@@ -1087,7 +1087,7 @@ do
 	  local bg = CreateFrame("Frame", nil, stanceBar)
 	  bg:SetAllPoints();
 	  bg:SetFrameLevel(0);
-	  bg:SetStylePanel("Default", "Component")
+	  bg:SetStylePanel("Frame", "Heavy")
 	  bg:SetPanelColor("dark")
 	  stanceBar.backdrop = bg;

@@ -1208,7 +1208,7 @@ do
 		local bg = CreateFrame("Frame", nil, petBar)
 		bg:SetAllPoints();
 		bg:SetFrameLevel(0);
-		bg:SetStylePanel("Default", "Component")
+		bg:SetStylePanel("Frame", "Heavy")
 		bg:SetPanelColor("dark")
 		petBar.backdrop = bg;
 		for i = 1, NUM_PET_ACTION_SLOTS do
@@ -1261,7 +1261,6 @@ local CreateExtraBar = function(self)
 			button.pushed = true;
 			button.checked = true;
 			ModifyActionButton(button)
-			--button:SetStylePanel('Button')
 			_G[icon]:SetDrawLayer("ARTWORK")
 			_G[cool]:SetAllPointsIn()
 			local checkedTexture = button:CreateTexture(nil, "OVERLAY")
@@ -1422,7 +1421,7 @@ function MOD:Load()
 	CreatePetBar(self)
 	CreateExtraBar(self)
 	self:InitializeMicroBar()
-	self:InitializeExtraButtons()
+	self:InitializeZoneButton()

 	self:LoadKeyBinder()

diff --git a/Interface/AddOns/SVUI/packages/bar/SVBar.xml b/Interface/AddOns/SVUI/packages/bar/SVBar.xml
index 8049a73..c55ea29 100644
--- a/Interface/AddOns/SVUI/packages/bar/SVBar.xml
+++ b/Interface/AddOns/SVUI/packages/bar/SVBar.xml
@@ -1,6 +1,13 @@
-<Ui xmlns="http://www.blizzard.com/wow/ui/">
+<Ui xmlns="http://www.blizzard.com/wow/ui/">
+	<Frame name="SVUI_DraenorButtonHolder" parent="UIParent" hidden="true">
+        <Size x="64" y="64"/>
+        <Anchors>
+            <Anchor point="BOTTOM" x="0" y="160"/>
+        </Anchors>
+    </Frame>
+
 	<Script file="SVBar.lua"/>
 	<Script file="components\keybind.lua"/>
 	<Script file="components\micro.lua"/>
-	<Script file="components\extra.lua"/>
+	<Script file="components\zone.lua"/>
 </Ui>
\ No newline at end of file
diff --git a/Interface/AddOns/SVUI/packages/bar/components/extra.lua b/Interface/AddOns/SVUI/packages/bar/components/extra.lua
deleted file mode 100644
index 6a8c1a8..0000000
--- a/Interface/AddOns/SVUI/packages/bar/components/extra.lua
+++ /dev/null
@@ -1,184 +0,0 @@
---[[
-##############################################################################
-_____/\\\\\\\\\\\____/\\\________/\\\__/\\\________/\\\__/\\\\\\\\\\\_       #
- ___/\\\/////////\\\_\/\\\_______\/\\\_\/\\\_______\/\\\_\/////\\\///__      #
-  __\//\\\______\///__\//\\\______/\\\__\/\\\_______\/\\\_____\/\\\_____     #
-   ___\////\\\__________\//\\\____/\\\___\/\\\_______\/\\\_____\/\\\_____    #
-    ______\////\\\________\//\\\__/\\\____\/\\\_______\/\\\_____\/\\\_____   #
-     _________\////\\\______\//\\\/\\\_____\/\\\_______\/\\\_____\/\\\_____  #
-      __/\\\______\//\\\______\//\\\\\______\//\\\______/\\\______\/\\\_____ #
-       _\///\\\\\\\\\\\/________\//\\\________\///\\\\\\\\\/____/\\\\\\\\\\\_#
-        ___\///////////___________\///___________\/////////_____\///////////_#
-##############################################################################
-S U P E R - V I L L A I N - U I   By: Munglunch                              #
-##############################################################################
-##########################################################
-LOCALIZED LUA FUNCTIONS
-##########################################################
-]]--
---[[ GLOBALS ]]--
-local _G = _G;
-local unpack 	= _G.unpack;
-local select 	= _G.select;
-local pairs 	= _G.pairs;
-local string 	= _G.string;
-local math 		= _G.math;
---[[ STRING METHODS ]]--
-local find, format, split = string.find, string.format, string.split;
-local gsub = string.gsub;
---[[ MATH METHODS ]]--
-local ceil = math.ceil;
---[[
-##########################################################
-GET ADDON DATA
-##########################################################
-]]--
-local SV = select(2, ...)
-local L = SV.L;
-local MOD = SV.SVBar;
-
-local DefaultExtraActionStyle = "Interface\\ExtraButton\\Default";
---[[
-##########################################################
-EXTRA ACTION BUTTON INTERNALS
-##########################################################
-]]--
-local ExtraButton_OnEvent = function(self, event)
-	if(event == 'UPDATE_EXTRA_ACTIONBAR') then
-		local action = ExtraActionButton1:GetAttribute('action')
-		self:SetAbility(action)
-		self:UpdateCooldown()
-	elseif(event == 'PLAYER_REGEN_ENABLED') then
-		self:SetAttribute('action', self.attribute)
-		self:UnregisterEvent(event)
-		self:UpdateCooldown()
-	elseif(event == 'UPDATE_BINDINGS') then
-		if(self:IsShown()) then
-			self:SetAttribute('binding', GetTime())
-			self:SetAbility()
-		end
-	else
-		if(not InCombatLockdown()) then
-			local action = ExtraActionButton1:GetAttribute('action')
-			if(action) then
-				self:SetAbility(action)
-			end
-		end
-		self:Update()
-	end
-end
-
-local ExtraButtonUpdate = function(self)
-	if(HasExtraActionBar()) then
-		local texture = GetOverrideBarSkin() or DefaultExtraActionStyle;
-		self.Artwork:SetTexture(texture)
-	else
-		self:RemoveAbility();
-	end
-end
---[[
-##########################################################
-DRAENOR ZONE BUTTON INTERNALS
-##########################################################
-]]--
-local DraenorButton_OnDrag = function(self)
-	if(self.spellID) then
-		PickupSpell(DraenorZoneAbilitySpellID);
-	end
-end
-
-local DraenorButton_OnEvent = function(self, event)
-	if(event == "SPELLS_CHANGED") then
-		if(not self.baseName) then
-			self.baseName = GetSpellInfo(DraenorZoneAbilitySpellID);
-		end
-		self:UpdateCooldown()
-	elseif(event == 'PLAYER_REGEN_ENABLED') then
-		self:SetAttribute('spell', self.attribute)
-		self:UnregisterEvent(event)
-		self:UpdateCooldown()
-	elseif(event == 'UPDATE_BINDINGS') then
-		if(self:IsShown()) then
-			self:SetAbility()
-			self:SetAttribute('binding', GetTime())
-		end
-	else
-		self:Update()
-	end
-
-	if(not self.baseName) then
-		return;
-	end
-
-	local lastState = self.BuffSeen;
-	self.BuffSeen = HasDraenorZoneAbility();
-	local spellName, _, texture, _, _, _, spellID = GetSpellInfo(self.baseName);
-
-	if(self.BuffSeen) then
-		if(not HasDraenorZoneSpellOnBar(self)) then
-			self:SetAbility(spellID, spellName, texture);
-		else
-			self:RemoveAbility();
-		end
-	else
-		DraenorZoneAbilityFrame.CurrentTexture = texture;
-		self:RemoveAbility();
-	end
-
-	-- if(lastState ~= self.BuffSeen) then
-	-- 	UIParent_ManageFramePositions();
-	-- 	ActionBarController_UpdateAll(true);
-	-- end
-end
-
-local DraenorButtonUpdate = function(self)
-	if (not self.baseName) then
-		return;
-	end
-	local name, _, tex, _, _, _, spellID = GetSpellInfo(self.baseName);
-
-	DraenorZoneAbilityFrame.CurrentTexture = tex;
-	DraenorZoneAbilityFrame.CurrentSpell = name;
-
-	self.Icon:SetTexture(tex);
-	self.Artwork:SetTexture(DRAENOR_ZONE_SPELL_ABILITY_TEXTURES_BASE[spellID])
-
-	local charges, maxCharges, chargeStart, chargeDuration = GetSpellCharges(spellID);
-	local usesCharges = false;
-	if(self.Count) then
-		if(maxCharges and maxCharges > 1) then
-			self.Count:SetText(charges);
-			usesCharges = true;
-		else
-			self.Count:SetText("");
-		end
-	end
-
-	local start, duration, enable = GetSpellCooldown(name);
-
-	if(usesCharges and charges < maxCharges) then
-		CooldownFrame_SetTimer(self.Cooldown, chargeStart, chargeDuration, enable, charges, maxCharges);
-	elseif(start) then
-		CooldownFrame_SetTimer(self.Cooldown, start, duration, enable);
-	end
-
-	self.spellName = name;
-	self.spellID = spellID;
-end
---[[
-##########################################################
-PACKAGE CALL
-##########################################################
-]]--
-function MOD:InitializeExtraButtons()
-	local draenor = SV.SuperButton:AddSpell("SVUI_DraenorZoneAbility", DraenorButtonUpdate, DraenorButton_OnEvent, 'SVUI_DRAENORZONE');
-	draenor:RegisterForDrag("LeftButton")
-	draenor:SetScript('OnDragStart', DraenorButton_OnDrag)
-	draenor:RegisterUnitEvent("UNIT_AURA", "player");
-	draenor:RegisterEvent("SPELL_UPDATE_COOLDOWN");
-	draenor:RegisterEvent("SPELL_UPDATE_USABLE");
-	draenor:RegisterEvent("SPELL_UPDATE_CHARGES");
-	draenor:RegisterEvent("SPELLS_CHANGED");
-	draenor:RegisterEvent("ACTIONBAR_SLOT_CHANGED");
-	DraenorZoneAbilityFrame:UnregisterAllEvents()
-end
\ No newline at end of file
diff --git a/Interface/AddOns/SVUI/packages/bar/components/keybind.lua b/Interface/AddOns/SVUI/packages/bar/components/keybind.lua
index 3cc92b8..436aafe 100644
--- a/Interface/AddOns/SVUI/packages/bar/components/keybind.lua
+++ b/Interface/AddOns/SVUI/packages/bar/components/keybind.lua
@@ -470,11 +470,11 @@ function MOD:LoadKeyBinder()
   pop:SetClampedToScreen(true)
   pop:SetWidth(360)
   pop:SetHeight(130)
-  pop:SetStylePanel("Fixed", "Transparent")
+  pop:SetStylePanel("!_Frame", "Transparent")
   pop:Hide()

   local moveHandle = NewFrame("Button", nil, pop)
-  moveHandle:SetStylePanel("Fixed", "Button", true)
+  moveHandle:SetStylePanel("!_Frame", "Button", true)
   moveHandle:SetWidth(100)
   moveHandle:SetHeight(25)
   moveHandle:SetPoint("CENTER", pop, "TOP")
diff --git a/Interface/AddOns/SVUI/packages/bar/components/micro.lua b/Interface/AddOns/SVUI/packages/bar/components/micro.lua
index 76395d0..5508551 100644
--- a/Interface/AddOns/SVUI/packages/bar/components/micro.lua
+++ b/Interface/AddOns/SVUI/packages/bar/components/micro.lua
@@ -160,7 +160,7 @@ function MOD:InitializeMicroBar()
 	microBar:SetFrameStrata("HIGH")
 	microBar:SetFrameLevel(0)
 	microBar:SetPointToScale('BOTTOMLEFT', SV.Dock.TopLeft.Bar.ToolBar, 'BOTTOMRIGHT', 4, 0)
-	SV:AddToDisplayAudit(microBar)
+	SV:ManageVisibility(microBar)

 	for i=1,13 do
 		local data = ICON_DATA[i]
@@ -187,7 +187,7 @@ function MOD:InitializeMicroBar()
 				local buttonMask = NewFrame("Frame",nil,button)
 				buttonMask:SetPoint("TOPLEFT",button,"TOPLEFT",0,-28)
 				buttonMask:SetPoint("BOTTOMRIGHT",button,"BOTTOMRIGHT",0,0)
-				buttonMask:SetStylePanel("Framed")
+				buttonMask:SetStylePanel("HeavyButton")
 				buttonMask:SetPanelColor()
 				buttonMask.icon = buttonMask:CreateTexture(nil,"OVERLAY",nil,2)
 				buttonMask.icon:SetAllPointsIn(buttonMask,2,2)
diff --git a/Interface/AddOns/SVUI/packages/bar/components/zone.lua b/Interface/AddOns/SVUI/packages/bar/components/zone.lua
new file mode 100644
index 0000000..8713491
--- /dev/null
+++ b/Interface/AddOns/SVUI/packages/bar/components/zone.lua
@@ -0,0 +1,313 @@
+--[[
+##############################################################################
+_____/\\\\\\\\\\\____/\\\________/\\\__/\\\________/\\\__/\\\\\\\\\\\_       #
+ ___/\\\/////////\\\_\/\\\_______\/\\\_\/\\\_______\/\\\_\/////\\\///__      #
+  __\//\\\______\///__\//\\\______/\\\__\/\\\_______\/\\\_____\/\\\_____     #
+   ___\////\\\__________\//\\\____/\\\___\/\\\_______\/\\\_____\/\\\_____    #
+    ______\////\\\________\//\\\__/\\\____\/\\\_______\/\\\_____\/\\\_____   #
+     _________\////\\\______\//\\\/\\\_____\/\\\_______\/\\\_____\/\\\_____  #
+      __/\\\______\//\\\______\//\\\\\______\//\\\______/\\\______\/\\\_____ #
+       _\///\\\\\\\\\\\/________\//\\\________\///\\\\\\\\\/____/\\\\\\\\\\\_#
+        ___\///////////___________\///___________\/////////_____\///////////_#
+##############################################################################
+S U P E R - V I L L A I N - U I   By: Munglunch                              #
+##############################################################################
+##########################################################
+LOCALIZED LUA FUNCTIONS
+##########################################################
+]]--
+--[[ GLOBALS ]]--
+local _G = _G;
+local unpack 	= _G.unpack;
+local select 	= _G.select;
+local pairs 	= _G.pairs;
+local string 	= _G.string;
+local math 		= _G.math;
+--[[ STRING METHODS ]]--
+local find, format, split = string.find, string.format, string.split;
+local gsub = string.gsub;
+--[[ MATH METHODS ]]--
+local ceil = math.ceil;
+--[[
+##########################################################
+GET ADDON DATA
+##########################################################
+]]--
+local SV = select(2, ...)
+local L = SV.L;
+local MOD = SV.SVBar;
+
+local NO_ART = [[Interface\AddOns\SVUI\assets\artwork\Template\EMPTY]];
+--[[
+##########################################################
+DRAENOR ZONE BUTTON INTERNALS
+##########################################################
+]]--
+local DraenorButton_OnDrag = function(self)
+	if(self.spellID) then
+		PickupSpell(DraenorZoneAbilitySpellID);
+	end
+end
+
+local DraenorButton_OnEvent = function(self, event)
+	if(event == "SPELLS_CHANGED") then
+		if(not self.baseName) then
+			self.baseName = GetSpellInfo(DraenorZoneAbilitySpellID);
+		end
+		self:UpdateCooldown()
+	elseif(event == 'PLAYER_REGEN_ENABLED') then
+		self:SetAttribute('spell', self.attribute)
+		self:UnregisterEvent(event)
+		self:UpdateCooldown()
+	elseif(event == 'UPDATE_BINDINGS') then
+		if(self:IsShown()) then
+			self:SetUsage()
+			self:SetAttribute('binding', GetTime())
+		end
+	else
+		self:Update()
+	end
+
+	if(not self.baseName) then
+		return;
+	end
+
+	local lastState = self.BuffSeen;
+	self.BuffSeen = HasDraenorZoneAbility();
+	local spellName, _, texture, _, _, _, spellID = GetSpellInfo(self.baseName);
+
+	if(self.BuffSeen) then
+		if(not HasDraenorZoneSpellOnBar(self)) then
+			self:SetUsage(spellID, spellName, texture);
+		else
+			self:ClearUsage();
+		end
+	else
+		DraenorZoneAbilityFrame.CurrentTexture = texture;
+		self:ClearUsage();
+	end
+
+	-- if(lastState ~= self.BuffSeen) then
+	-- 	UIParent_ManageFramePositions();
+	-- 	ActionBarController_UpdateAll(true);
+	-- end
+end
+
+local DraenorButtonUpdate = function(self)
+	if (not self.baseName) then
+		return;
+	end
+	local name, _, tex, _, _, _, spellID = GetSpellInfo(self.baseName);
+
+	DraenorZoneAbilityFrame.CurrentTexture = tex;
+	DraenorZoneAbilityFrame.CurrentSpell = name;
+
+	self.Icon:SetTexture(tex);
+	self.Artwork:SetTexture(DRAENOR_ZONE_SPELL_ABILITY_TEXTURES_BASE[spellID])
+
+	local charges, maxCharges, chargeStart, chargeDuration = GetSpellCharges(spellID);
+	local usesCharges = false;
+	if(self.Count) then
+		if(maxCharges and maxCharges > 1) then
+			self.Count:SetText(charges);
+			usesCharges = true;
+		else
+			self.Count:SetText("");
+		end
+	end
+
+	local start, duration, enable = GetSpellCooldown(name);
+
+	if(usesCharges and charges < maxCharges) then
+		CooldownFrame_SetTimer(self.Cooldown, chargeStart, chargeDuration, enable, charges, maxCharges);
+	elseif(start) then
+		CooldownFrame_SetTimer(self.Cooldown, start, duration, enable);
+	end
+
+	self.spellName = name;
+	self.spellID = spellID;
+end
+--[[
+##########################################################
+ZONE BUTTON CONSTRUCT
+##########################################################
+]]--
+local Button_OnShow = function(self)
+    if(self.Artwork) then
+        self.Artwork:SetTexture(self.ArtFile or NO_ART);
+        self.Artwork:FadeIn()
+    end
+end
+
+local Button_OnHide = function(self)
+    if(self.Artwork) then
+        self.Artwork:FadeOut();
+    end
+end
+
+local UpdateSpellCooldown = function(self)
+    if(self:IsShown() and self.spellName) then
+        local start, duration, enable = GetSpellCooldown(self.spellName)
+        if((start and start > 0) and (duration and duration > 0)) then
+            self.Cooldown:SetCooldown(start, duration)
+            self.Cooldown:Show()
+        else
+            self.Cooldown:Hide()
+        end
+    end
+end
+
+local SpellButton_OnEnter = function(self)
+    if(self.spellID) then
+        GameTooltip:SetOwner(self, 'ANCHOR_LEFT')
+        GameTooltip:SetSpellByID(self.spellID)
+    end
+end
+
+local ButtonSpell_OnEvent = function(self, event)
+    if(event == 'PLAYER_REGEN_ENABLED') then
+        self:SetAttribute('spell', self.attribute)
+        self:UnregisterEvent(event)
+        self:UpdateCooldown()
+    elseif(event == 'UPDATE_BINDINGS') then
+        if(self:IsShown()) then
+            self:SetUsage()
+            self:SetAttribute('binding', GetTime())
+        end
+    else
+        self:Update()
+    end
+end
+
+local SetButtonSpell = function(self, spellID, spellName, texture)
+    if(spellID and spellName) then
+        if(spellID == self.spellID and self:IsShown()) then
+            return false
+        end
+
+        self.Icon:SetTexture(texture)
+        self.spellID = spellID
+        self.spellName = spellName
+
+        if(self.blacklist[self.spellID]) then
+            return false
+        end
+    end
+
+    local HotKey = self.HotKey
+    local key = GetBindingKey('SVUI_DRAENORZONE')
+    if(key) then
+        HotKey:SetText(GetBindingText(key, 1))
+        HotKey:Show()
+    elseif(SpellHasRange(self.spellName)) then
+        HotKey:SetText(RANGE_INDICATOR)
+        HotKey:Show()
+    else
+        HotKey:Hide()
+    end
+
+    if(InCombatLockdown()) then
+        self.attribute = self.spellName
+        self:RegisterEvent('PLAYER_REGEN_ENABLED')
+    else
+        self:SetAttribute('spell', self.spellName)
+        self:UpdateCooldown()
+    end
+
+    return true
+end
+
+local ClearButtonSpell = function(self)
+    self:FadeOut()
+    if(InCombatLockdown()) then
+        self.attribute = nil;
+        self:RegisterEvent('PLAYER_REGEN_ENABLED');
+    else
+        self:SetAttribute('spell', nil);
+    end
+end
+--[[
+##########################################################
+PACKAGE CALL
+##########################################################
+]]--
+function MOD:InitializeZoneButton()
+	local size = SVUI_DraenorButtonHolder:GetHeight()
+    local draenor = CreateFrame('Button', "SVUI_DraenorZoneAbility", UIParent, 'SecureActionButtonTemplate, SecureHandlerStateTemplate, SecureHandlerAttributeTemplate');
+    draenor:SetSizeToScale(size,size);
+    draenor:SetPointToScale("CENTER", SVUI_DraenorButtonHolder, "CENTER", 0, 0);
+    draenor:SetAlpha(0);
+    draenor:SetStylePanel("Icon");
+
+    draenor.SetUsage = SetButtonSpell;
+    draenor.ClearUsage = ClearButtonSpell;
+    draenor.UpdateCooldown = UpdateSpellCooldown;
+    draenor.Update = DraenorButtonUpdate
+
+    local Artwork = draenor.Panel:CreateTexture('$parentArtwork', 'BACKGROUND')
+    Artwork:SetPoint('CENTER', -2, 2)
+    Artwork:SetSizeToScale(size, size)
+    Artwork:SetTexture(NO_ART)
+    Artwork:SetAlpha(0)
+    draenor.Artwork = Artwork
+
+    local Icon = draenor:CreateTexture('$parentIcon', 'BACKGROUND')
+    Icon:SetTexCoord(0.1, 0.9, 0.1, 0.9)
+    Icon:SetAllPoints()
+    draenor.Icon = Icon
+
+    local HotKey = draenor:CreateFontString('$parentHotKey', nil, 'NumberFontNormal')
+    HotKey:SetPoint('BOTTOMRIGHT', -5, 5)
+    draenor.HotKey = HotKey
+
+    local Cooldown = CreateFrame('Cooldown', '$parentCooldown', draenor, 'CooldownFrameTemplate')
+    Cooldown:ClearAllPoints()
+    Cooldown:SetPoint('TOPRIGHT', -2, -3)
+    Cooldown:SetPoint('BOTTOMLEFT', 2, 1)
+    Cooldown:Hide()
+    draenor.Cooldown = Cooldown
+
+    RegisterStateDriver(draenor, 'visible', '[petbattle] hide; show')
+    draenor:SetAttribute('type', 'spell');
+    draenor:SetAttribute('_onattributechanged', [[
+        if(name == 'spell') then
+            if(value) then
+                if(not self:IsShown()) then self:Show() end
+                self:CallMethod('FadeIn')
+            elseif(not value) then
+                self:Hide()
+            end
+        elseif(name == 'state-visible') then
+            if(value == 'show') then
+                self:CallMethod('Update')
+            else
+                self:Hide()
+            end
+        end
+
+        if(self:IsShown() and (name == 'item' or name == 'binding')) then
+			self:ClearBindings()
+			local key = GetBindingKey('SVUI_DRAENORZONE')
+			if(key) then
+				self:SetBindingClick(1, key, self, 'LeftButton')
+			end
+		end
+    ]]);
+
+    draenor:SetScript('OnEnter', SpellButton_OnEnter);
+    draenor:SetScript('OnLeave', GameTooltip_Hide);
+    draenor:SetScript('OnShow', Button_OnShow);
+    draenor:SetScript('OnHide', Button_OnHide);
+	draenor:RegisterForDrag("LeftButton");
+	draenor:SetScript('OnDragStart', DraenorButton_OnDrag);
+	draenor:SetScript('OnEvent', DraenorButton_OnEvent)
+	draenor:RegisterUnitEvent("UNIT_AURA", "player");
+	draenor:RegisterEvent("SPELL_UPDATE_COOLDOWN");
+	draenor:RegisterEvent("SPELL_UPDATE_USABLE");
+	draenor:RegisterEvent("SPELL_UPDATE_CHARGES");
+	draenor:RegisterEvent("SPELLS_CHANGED");
+	draenor:RegisterEvent("ACTIONBAR_SLOT_CHANGED");
+	draenor:RegisterEvent("UPDATE_BINDINGS");
+
+	DraenorZoneAbilityFrame:UnregisterAllEvents()
+end
\ No newline at end of file
diff --git a/Interface/AddOns/SVUI/packages/chat/SVChat.lua b/Interface/AddOns/SVUI/packages/chat/SVChat.lua
index 313b2b7..c08733a 100644
--- a/Interface/AddOns/SVUI/packages/chat/SVChat.lua
+++ b/Interface/AddOns/SVUI/packages/chat/SVChat.lua
@@ -632,7 +632,7 @@ do
 		tab:SetParent(holder)
 		tab:ClearAllPoints()
 		tab:SetAllPoints(holder)
-		tab:SetStylePanel("Framed")
+		tab:SetStylePanel("HeavyButton")
 		tab.icon = tab:CreateTexture(nil,"BACKGROUND",nil,3)
 		tab.icon:SetAllPointsIn(tab, 6, 3)
 		tab.icon:SetTexture(ICONARTFILE)
@@ -679,7 +679,7 @@ do
 		SV:FontManager(chat, "chatdialog", "LEFT")
 		SV:FontManager(tabText, "chattab")
 		if(not chat.Panel) then
-			chat:SetStylePanel("Default", "Transparent")
+			chat:SetStylePanel("Frame", "Transparent")
 			chat.Panel:Hide()
 		end
 		if(SV.db.font.chatdialog.outline ~= 'NONE' )then
@@ -739,7 +739,7 @@ do
 			_G[editBoxName.."FocusLeft"]:Die()
 			_G[editBoxName.."FocusMid"]:Die()
 			_G[editBoxName.."FocusRight"]:Die()
-			editBox:SetStylePanel("Default", "Headline", true, 2, -2, -3)
+			editBox:SetStylePanel("Frame", "Lite", true, 2, -2, -3)
 			editBox:SetAltArrowKeyMode(false)
 			editBox:SetAllPoints(MOD.Dock.Parent.Alert)
 			editBox:HookScript("OnEditFocusGained", EditBox_OnEditFocusGained)
@@ -768,7 +768,7 @@ do
 			chat.button:SetAlpha(0.35)
 			chat.button:SetSizeToScale(38, 18)
 			chat.button:SetPoint('TOPRIGHT', chat, 'TOPRIGHT', 0, 0)
-			chat.button:SetStylePanel('Default', 'Headline')
+			chat.button:SetStylePanel('Frame', 'Lite')

 			chat.button.Title = chat.button:CreateFontString()
 			chat.button.Title:SetFontObject(SVUI_Font_ChatTab)
@@ -1143,14 +1143,14 @@ local function DockFadeInChat()
 	MOD:ShowLines(activeChatFrame)
 	activeChatFrame:FadeIn(0.2, activeChatFrame:GetAlpha(), 1)
 end
-SV.Events:On("DOCKS_FADE_IN", "DockFadeInChat", DockFadeInChat);
+SV.Events:On("DOCK_LEFT_FADE_IN", "DockFadeInChat", DockFadeInChat);

 local function DockFadeOutChat()
 	local activeChatFrame = FCFDock_GetSelectedWindow(GENERAL_CHAT_DOCK)
 	MOD:FadeLines(activeChatFrame)
 	activeChatFrame:FadeOut(2, activeChatFrame:GetAlpha(), 0, true)
 end
-SV.Events:On("DOCKS_FADE_OUT", "DockFadeOutChat", DockFadeOutChat);
+SV.Events:On("DOCK_LEFT_FADE_OUT", "DockFadeOutChat", DockFadeOutChat);

 function MOD:UpdateLocals()
 	CHAT_WIDTH = (SV.db.Dock.dockLeftWidth or 350) - 10;
@@ -1214,7 +1214,7 @@ function MOD:Load()

 	_G.GeneralDockManagerOverflowButton:ClearAllPoints()
 	_G.GeneralDockManagerOverflowButton:SetPoint('BOTTOMRIGHT', self.Dock.Bar, 'BOTTOMRIGHT', -2, 2)
-	_G.GeneralDockManagerOverflowButtonList:SetStylePanel("Fixed", 'Transparent')
+	_G.GeneralDockManagerOverflowButtonList:SetStylePanel("!_Frame", 'Transparent')
 	_G.GeneralDockManager:SetAllPoints(self.Dock.Bar)

 	SetAllChatHooks()
@@ -1238,7 +1238,7 @@ function MOD:Load()


 	local frame = CreateFrame("Frame", "SVUI_CopyChatFrame", self.Dock)
-	--frame:SetStylePanel('Default', 'Transparent')
+	--frame:SetStylePanel('Frame', 'Transparent')
 	frame:SetPoint('BOTTOMLEFT', self.Dock, 'TOPLEFT', 0, 0)
 	frame:SetPoint('BOTTOMRIGHT', self.Dock, 'TOPRIGHT', 0, 0)
 	frame:SetHeight(self.Dock:GetHeight())
diff --git a/Interface/AddOns/SVUI/packages/map/SVMap.lua b/Interface/AddOns/SVUI/packages/map/SVMap.lua
index ed31047..dc95186 100644
--- a/Interface/AddOns/SVUI/packages/map/SVMap.lua
+++ b/Interface/AddOns/SVUI/packages/map/SVMap.lua
@@ -242,7 +242,7 @@ do
 				end
 			end

-			btn:SetStylePanel("Slot", true, 2, -1, -1)
+			btn:SetStylePanel("Slot", 2, -1, -1)

 			if(name == "DBMMinimapButton") then
 				btn:SetNormalTexture("Interface\\Icons\\INV_Helmet_87")
@@ -743,7 +743,7 @@ function MOD:Load()

 	mapHolder.Square = CreateFrame("Frame", nil, mapHolder)
 	mapHolder.Square:SetAllPointsOut(mapHolder, 2)
-	mapHolder.Square:SetStylePanel("Default", "Blackout")
+	mapHolder.Square:SetStylePanel("Frame", "Blackout")
 	mapHolder.Square.Panel.Skin:SetGradient(unpack(MM_COLOR))

 	mapHolder.Circle = mapHolder:CreateTexture(nil, "BACKGROUND", nil, -2)
@@ -793,7 +793,7 @@ function MOD:Load()

 	QueueStatusMinimapButton:ClearAllPoints()
 	QueueStatusMinimapButton:SetPointToScale("BOTTOMLEFT", mapHolder, "BOTTOMLEFT", 2, 1)
-	QueueStatusMinimapButton:SetStylePanel("Default", "Icon", true, 1, -6, -6)
+	QueueStatusMinimapButton:SetStylePanel("Frame", "Icon", true, 1, -6, -6)

 	QueueStatusFrame:SetClampedToScreen(true)
 	QueueStatusMinimapButtonBorder:Hide()
@@ -817,7 +817,7 @@ function MOD:Load()
 	local narr = CreateFrame("Frame", nil, mapHolder)
 	narr:SetPointToScale("TOPLEFT", mapHolder, "TOPLEFT", 2, -2)
 	narr:SetSize(100, 22)
-	narr:SetStylePanel("Fixed", "Component", true)
+	narr:SetStylePanel("!_Frame", "Heavy", true)
   	narr:SetPanelColor("yellow")
   	narr:SetBackdropColor(1, 1, 0, 1)
 	narr:SetFrameLevel(Minimap:GetFrameLevel() + 2)
@@ -881,7 +881,7 @@ function MOD:Load()
 	DropDownList1:HookScript('OnShow', _hook_DropDownList1)
 	WorldFrame:SetAllPoints()

-	SV:AddToDisplayAudit(mapHolder)
+	SV:ManageVisibility(mapHolder)

 	local CoordsHolder = CreateFrame("Frame", "SVUI_MiniMapCoords", Minimap)
 	CoordsHolder:SetFrameLevel(Minimap:GetFrameLevel()  +  1)
diff --git a/Interface/AddOns/SVUI/packages/override/SVOverride.lua b/Interface/AddOns/SVUI/packages/override/SVOverride.lua
index 2dc9436..dbf1028 100644
--- a/Interface/AddOns/SVUI/packages/override/SVOverride.lua
+++ b/Interface/AddOns/SVUI/packages/override/SVOverride.lua
@@ -164,7 +164,7 @@ function MOD:Load()
 	SVUI_BailOut:SetNormalTexture(BAILOUT_ICON)
 	SVUI_BailOut:SetPushedTexture(BAILOUT_ICON)
 	SVUI_BailOut:SetHighlightTexture(BAILOUT_ICON)
-	SVUI_BailOut:SetStylePanel("Fixed", "Transparent")
+	SVUI_BailOut:SetStylePanel("!_Frame", "Transparent")
 	SVUI_BailOut:RegisterForClicks("AnyUp")
 	SVUI_BailOut:SetScript("OnClick", VehicleExit)
 	SVUI_BailOut:RegisterEvent("UNIT_ENTERED_VEHICLE")
diff --git a/Interface/AddOns/SVUI/packages/override/components/loot.lua b/Interface/AddOns/SVUI/packages/override/components/loot.lua
index e637805..d8060fc 100644
--- a/Interface/AddOns/SVUI/packages/override/components/loot.lua
+++ b/Interface/AddOns/SVUI/packages/override/components/loot.lua
@@ -275,7 +275,7 @@ local function MakeSlots(id)
 	slot.iconFrame:SetHeightToScale(size)
 	slot.iconFrame:SetWidthToScale(size)
 	slot.iconFrame:SetPoint("RIGHT", slot)
-	slot.iconFrame:SetStylePanel("Default", "Transparent")
+	slot.iconFrame:SetStylePanel("Frame", "Transparent")

 	slot.icon = slot.iconFrame:CreateTexture(nil, "ARTWORK")
 	slot.icon:SetTexCoord(0.1, 0.9, 0.1, 0.9)
@@ -337,14 +337,14 @@ local function CreateRollFrame()
 	UpdateLootUpvalues()
 	local rollFrame = CreateFrame("Frame", nil, UIParent)
 	rollFrame:SetSizeToScale(LOOT_WIDTH,LOOT_HEIGHT)
-	rollFrame:SetStylePanel("Fixed", 'Default')
+	rollFrame:SetStylePanel("!_Frame", 'Default')
 	rollFrame:SetScript("OnEvent",LootRoll_OnEvent)
 	rollFrame:RegisterEvent("CANCEL_LOOT_ROLL")
 	rollFrame:Hide()
 	rollFrame.button = CreateFrame("Button",nil,rollFrame)
 	rollFrame.button:SetPointToScale("RIGHT",rollFrame,'LEFT',0,0)
 	rollFrame.button:SetSizeToScale(LOOT_HEIGHT - 2)
-	rollFrame.button:SetStylePanel("Default", 'Default')
+	rollFrame.button:SetStylePanel("Frame", 'Default')
 	rollFrame.button:SetScript("OnEnter",LootItem_SetTooltip)
 	rollFrame.button:SetScript("OnLeave",LootItem_OnLeave)
 	rollFrame.button:SetScript("OnUpdate",LootItem_OnUpdate)
@@ -648,9 +648,9 @@ function MOD:SetLootFrames()
 	SV.Mentalo:Add(SVUI_LootFrameHolder, L["Loot Frame"], nil, nil, "SVUI_LootFrame");

 	SVUI_LootFrame:SetSizeToScale(256, 64);
-	SVUI_LootFrame:SetStylePanel("Fixed", 'Transparent');
+	SVUI_LootFrame:SetStylePanel("!_Frame", 'Transparent');
 	SVUI_LootFrame.title:SetFontObject(SVUI_Font_Header)
-	SV:AddToDisplayAudit(SVUI_LootFrame);
+	SV:ManageVisibility(SVUI_LootFrame);
 	SVUI_LootFrame:Hide();

 	UIParent:UnregisterEvent("LOOT_BIND_CONFIRM")
diff --git a/Interface/AddOns/SVUI/packages/override/components/mirror.lua b/Interface/AddOns/SVUI/packages/override/components/mirror.lua
index 717aaaf..149d067 100644
--- a/Interface/AddOns/SVUI/packages/override/components/mirror.lua
+++ b/Interface/AddOns/SVUI/packages/override/components/mirror.lua
@@ -107,7 +107,7 @@ local function MirrorBarRegistry(barType)
 		return RegisteredMirrorBars[barType]
 	end
 	local bar = CreateFrame('StatusBar', nil, UIParent)
-	bar:SetStylePanel("Default", "Bar", false, 3, 3, 3)
+	bar:SetStylePanel("Frame", "Bar", false, 3, 3, 3)
 	bar:SetScript("OnUpdate", MirrorBar_OnUpdate)
 	local r, g, b = unpack(mirrorTypeColor[barType])
 	bar.text = bar:CreateFontString(nil, 'OVERLAY')
@@ -139,7 +139,7 @@ local function SetTimerStyle(bar)
 	end
 	bar:SetStatusBarTexture([[Interface\AddOns\SVUI\assets\artwork\Template\DEFAULT]])
 	bar:SetStatusBarColor(0.37, 0.92, 0.08)
-	bar:SetStylePanel("Default", "Bar", false, 3, 3, 3)
+	bar:SetStylePanel("Frame", "Bar", false, 3, 3, 3)
 end

 local MirrorBarToggleHandler = function(_, event, arg, ...)
diff --git a/Interface/AddOns/SVUI/packages/plate/SVPlate.lua b/Interface/AddOns/SVUI/packages/plate/SVPlate.lua
index 2559796..0334144 100644
--- a/Interface/AddOns/SVUI/packages/plate/SVPlate.lua
+++ b/Interface/AddOns/SVUI/packages/plate/SVPlate.lua
@@ -1242,7 +1242,7 @@ do
 		frame.cast:SetPoint('TOPLEFT', frame.health, 'BOTTOMLEFT', 0, -8)
 		frame.cast:SetPoint('TOPRIGHT', frame.health, 'BOTTOMRIGHT', 0, -8)
 		frame.cast:SetFrameStrata("BACKGROUND")
-		frame.cast:SetStylePanel("Default", 'Bar')
+		frame.cast:SetStylePanel("Frame", 'Bar')
 		frame.cast:SetFrameLevel(0)

 		frame.cast.text = frame.cast:CreateFontString(nil, 'OVERLAY')
@@ -1264,7 +1264,7 @@ do
 		bgFrame:SetAllPointsOut(cast.icon)
 		bgFrame:SetFrameLevel(bgFrame:GetFrameLevel() - 1)

-		bgFrame:SetStylePanel("Default", "Bar", true, 2, 0, 0)
+		bgFrame:SetStylePanel("Frame", "Bar", true, 2, 0, 0)

 		--SetPlateBorder(frame.cast, cast.icon)

diff --git a/Interface/AddOns/SVUI/packages/quest/SVQuest.lua b/Interface/AddOns/SVUI/packages/quest/SVQuest.lua
index 52bd10d..9d0affb 100644
--- a/Interface/AddOns/SVUI/packages/quest/SVQuest.lua
+++ b/Interface/AddOns/SVUI/packages/quest/SVQuest.lua
@@ -435,7 +435,7 @@ function MOD:Load()
 	scrollBar:SetPoint("TOPRIGHT", self.Docklet, "TOPRIGHT", -4, -2);
 	scrollBar:SetBackdrop({bgFile = bgTex, edgeFile = bdTex, edgeSize = 4, insets = {left = 3, right = 3, top = 3, bottom = 3}});
 	scrollBar:SetFrameLevel(6)
-	scrollBar:SetStylePanel("Fixed", "Transparent", true);
+	scrollBar:SetStylePanel("!_Frame", "Transparent", true);
 	scrollBar:SetThumbTexture("Interface\\Buttons\\UI-ScrollBar-Knob");
 	scrollBar:SetOrientation("VERTICAL");
 	scrollBar:SetValueStep(5);
@@ -478,7 +478,7 @@ function MOD:Load()
 	self:InitializePopups()
 	self:InitializeActive()
 	self:InitializeScenarios()
-	self:InitializeQuestItem()
+	--self:InitializeQuestItem()
 	self:InitializeBonuses()
 	self:InitializeQuests()
 	self:InitializeAchievements()
diff --git a/Interface/AddOns/SVUI/packages/quest/SVQuest.xml b/Interface/AddOns/SVUI/packages/quest/SVQuest.xml
index 842eb62..f1d7730 100644
--- a/Interface/AddOns/SVUI/packages/quest/SVQuest.xml
+++ b/Interface/AddOns/SVUI/packages/quest/SVQuest.xml
@@ -1,6 +1,13 @@
 <Ui xmlns="http://www.blizzard.com/wow/ui/">
+	<Frame name="SVUI_QuestItemBar" parent="UIParent" hidden="true">
+        <Size x="32" y="160"/>
+        <Anchors>
+            <Anchor point="BOTTOMRIGHT" x="-250" y="60"/>
+        </Anchors>
+    </Frame>
+
     <Script file='SVQuest.lua'/>
-    <Script file='components\button.lua'/>
+    <!-- <Script file='components\button.lua'/> -->
     <Script file='components\popups.lua'/>
     <Script file='components\active.lua'/>
     <Script file='components\scenario.lua'/>
diff --git a/Interface/AddOns/SVUI/packages/quest/components/achievements.lua b/Interface/AddOns/SVUI/packages/quest/components/achievements.lua
index dfb486d..591c21b 100644
--- a/Interface/AddOns/SVUI/packages/quest/components/achievements.lua
+++ b/Interface/AddOns/SVUI/packages/quest/components/achievements.lua
@@ -63,6 +63,7 @@ local OBJ_ICON_COMPLETE = [[Interface\COMMON\Indicator-Green]];
 local OBJ_ICON_INCOMPLETE = [[Interface\COMMON\Indicator-Gray]];

 local LINE_ACHIEVEMENT_ICON = [[Interface\ICONS\Achievement_General]];
+local MAX_OBJECTIVES_SHOWN = 8;
 --[[
 ##########################################################
 SCRIPT HANDLERS
@@ -132,7 +133,7 @@ local GetAchievementRow = function(self, index)
 		row.Badge = CreateFrame("Frame", nil, row)
 		row.Badge:SetPoint("TOPLEFT", row, "TOPLEFT", 2, -2);
 		row.Badge:SetSize(INNER_HEIGHT, INNER_HEIGHT);
-		row.Badge:SetStylePanel("Default", "Headline")
+		row.Badge:SetStylePanel("Frame", "Lite")
 		row.Badge.Icon = row.Badge:CreateTexture(nil,"OVERLAY")
 		row.Badge.Icon:SetAllPoints(row.Badge);
 		row.Badge.Icon:SetTexture(LINE_ACHIEVEMENT_ICON)
@@ -152,7 +153,7 @@ local GetAchievementRow = function(self, index)

 		row.Button = CreateFrame("Button", nil, row.Header)
 		row.Button:SetAllPoints(row.Header);
-		row.Button:SetStylePanel("Button", "Headline", 1, 1, 1)
+		row.Button:SetStylePanel("Button", "Lite", 1, 1, 1)
 		row.Button:SetID(0)
 		row.Button:RegisterForClicks("LeftButtonUp", "RightButtonUp")
 		row.Button:SetScript("OnClick", ViewButton_OnClick)
@@ -196,8 +197,8 @@ local SetAchievementRow = function(self, index, title, details, icon, achievemen

 	for i = 1, subCount do
 		local description, category, completed, quantity, totalQuantity, _, flags, assetID, quantityString, criteriaID, eligible, duration, elapsed = GetAchievementCriteriaInfo(achievementID, i);
-		if(not ((not completed) and (shown_objectives > 5))) then
-			if(shown_objectives == 5 and subCount > (6)) then
+		if(not ((not completed) and (shown_objectives > MAX_OBJECTIVES_SHOWN))) then
+			if(shown_objectives == MAX_OBJECTIVES_SHOWN and subCount > (6)) then
 				shown_objectives = shown_objectives + 1;
 			else
 				if(description and bit.band(flags, EVALUATION_TREE_FLAG_PROGRESS_BAR) == EVALUATION_TREE_FLAG_PROGRESS_BAR) then
diff --git a/Interface/AddOns/SVUI/packages/quest/components/active.lua b/Interface/AddOns/SVUI/packages/quest/components/active.lua
index e3eba2b..13b31ec 100644
--- a/Interface/AddOns/SVUI/packages/quest/components/active.lua
+++ b/Interface/AddOns/SVUI/packages/quest/components/active.lua
@@ -171,11 +171,11 @@ local UnsetActiveData = function(self, bypass)
 	self:SetHeight(1);
 	block:SetAlpha(0);
 	self:SetAlpha(0);
-	if(MOD.QuestItem and MOD.QuestItem:IsShown()) then
-		MOD.QuestItem.CurrentQuest = 0;
-		MOD.QuestItem.Artwork:SetTexture([[Interface\AddOns\SVUI\assets\artwork\Template\EMPTY]]);
-		MOD.QuestItem:RemoveAbility();
-	end
+	-- if(MOD.QuestItem and MOD.QuestItem:IsShown()) then
+	-- 	MOD.QuestItem.CurrentQuest = 0;
+	-- 	MOD.QuestItem.Artwork:SetTexture([[Interface\AddOns\SVUI\assets\artwork\Template\EMPTY]]);
+	-- 	MOD.QuestItem:ClearUsage();
+	-- end
 	if(not bypass and MOD.Headers["Quests"]) then
 		MOD:UpdateObjectives('FORCED_UPDATE')
 	end
@@ -230,13 +230,13 @@ local SetActiveData = function(self, title, level, icon, questID, questLogIndex,
 	end
 	block.Badge.Icon:SetTexture(icon);

-	local link, texture, _, showCompleted = GetQuestLogSpecialItemInfo(questLogIndex)
-	MOD.QuestItem:RemoveAbility()
-	if(link) then
-		if(MOD.QuestItem:SetAbility(link, texture)) then
-			MOD.QuestItem.CurrentQuest = questLogIndex
-		end
-	end
+	-- local link, texture, _, showCompleted = GetQuestLogSpecialItemInfo(questLogIndex)
+
+	-- if(link) then
+	-- 	MOD.QuestItem:SetUsage(link, texture)
+	-- elseif(MOD.QuestItem:IsShown()) then
+	-- 	MOD.QuestItem:ClearUsage()
+	-- end

 	if(self.Block.Badge.PostUpdate) then
 		self.Block.Badge:PostUpdate(questID)
@@ -348,7 +348,7 @@ function MOD:InitializeActive()
 	block.Top.Text:SetFontObject(SVUI_Font_Quest_Header);
 	block.Top.Text:SetJustifyH('LEFT')
 	block.Top.Text:SetTextColor(0.28,0.75,1)
-	block.Top.Text:SetText("Now Tracking...")
+	block.Top.Text:SetText("Active")

 	block.CloseButton = CreateFrame("Button", nil, block.Top, "UIPanelCloseButton")
 	block.CloseButton:RemoveTextures()
@@ -370,7 +370,7 @@ function MOD:InitializeActive()
 	block.Button = CreateFrame("Button", nil, block)
 	block.Button:SetPointToScale("TOPLEFT", block, "TOPLEFT", 0, 0);
 	block.Button:SetPointToScale("BOTTOMRIGHT", block, "BOTTOMRIGHT", 0, 8);
-	block.Button:SetStylePanel("Framed", "Headline")
+	block.Button:SetStylePanel("HeavyButton", false, "Lite")
 	block.Button:SetPanelColor("gold")
 	block.Button:SetID(0)
 	block.Button.Parent = active;
@@ -381,7 +381,7 @@ function MOD:InitializeActive()
 	block.Badge = CreateFrame("Frame", nil, block.Button)
 	block.Badge:SetPointToScale("TOPLEFT", block.Top, "BOTTOMLEFT", 4, -4);
 	block.Badge:SetSizeToScale((LARGE_INNER_HEIGHT - 4), (LARGE_INNER_HEIGHT - 4));
-	block.Badge:SetStylePanel("Fixed", "Inset")
+	block.Badge:SetStylePanel("!_Frame", "Inset")

 	block.Badge.Icon = block.Badge:CreateTexture(nil,"OVERLAY")
 	block.Badge.Icon:SetAllPointsIn(block.Badge);
@@ -395,7 +395,7 @@ function MOD:InitializeActive()
 	block.Header:SetPointToScale("TOPLEFT", block.Badge, "TOPRIGHT", 4, -1);
 	block.Header:SetPointToScale("TOPRIGHT", block.Top, "BOTTOMRIGHT", -4, 0);
 	block.Header:SetHeightToScale(INNER_HEIGHT);
-	block.Header:SetStylePanel("Default", "Headline")
+	block.Header:SetStylePanel("Frame", "Lite")

 	block.Header.Level = block.Header:CreateFontString(nil,"OVERLAY")
 	block.Header.Level:SetFontObject(SVUI_Font_Quest);
diff --git a/Interface/AddOns/SVUI/packages/quest/components/button.lua b/Interface/AddOns/SVUI/packages/quest/components/button.lua
index f5fc6b7..df72182 100644
--- a/Interface/AddOns/SVUI/packages/quest/components/button.lua
+++ b/Interface/AddOns/SVUI/packages/quest/components/button.lua
@@ -66,60 +66,59 @@ local QuestInZone = {
 	[25111] = 161,
 	[24735] = 201,
 };
+local QUEST_BORDER = [[Interface\AddOns\SVUI\assets\artwork\Quest\QUEST-BORDER]];
 --[[
 ##########################################################
 BUTTON INTERNALS
 ##########################################################
 ]]--
+local ticker;
 local UpdateButton = function(self)
-	local shortestDistance = 62500;
-	local currentAreaID = GetCurrentMapAreaID()
-	local closestQuest, closestLink, closestTexture, closestLevel, closestCount, closestIndex, closestDuration, closestExpiration, closestID, closestComplete;
+	local numItems = 0
+	local shortestDistance = 62500
+	local closestQuestLink, closestQuestTexture
+	local activeQuestLink, activeQuestTexture

-	for i = 1, GetNumQuestWatches() do
-		local questID, _, questLogIndex, numObjectives, requiredMoney, isComplete, startEvent, isAutoComplete, failureTime, timeElapsed, questType, isTask, isStory, isOnMap, hasLocalPOI = GetQuestWatchInfo(i);
-		if(questID and not isComplete) then
-			local title, level, suggestedGroup = GetQuestLogTitle(questLogIndex)
-			if(QuestHasPOIInfo(questID)) then
-				local link, texture, _, showCompleted = GetQuestLogSpecialItemInfo(questLogIndex)
+	for index = 1, GetNumQuestWatches() do
+		local questID, _, questIndex, _, _, isComplete = GetQuestWatchInfo(index)
+		if(questID and QuestHasPOIInfo(questID)) then
+			local link, texture, _, showCompleted = GetQuestLogSpecialItemInfo(questIndex)
+			if(link) then
 				local areaID = QuestInZone[questID]
-				if(areaID and (areaID == currentAreaID)) then
-					closestQuest = title
-					closestID = questID
-					closestLink = link
-					closestTexture = texture
-					closestLevel = level
-					closestCount = numObjectives
-					closestIndex = questLogIndex
-					closestDuration = failureTime
-					closestExpiration = timeElapsed
-					closestComplete = isComplete
-				elseif(onContinent and (distanceSq < shortestDistance)) then
-					shortestDistance = distanceSq
-					closestQuest = title
-					closestID = questID
-					closestLink = link
-					closestTexture = texture
-					closestLevel = level
-					closestCount = numObjectives
-					closestIndex = questLogIndex
-					closestDuration = failureTime
-					closestExpiration = timeElapsed
-					closestComplete = isComplete
+				if questIndex == MOD.CurrentQuest then
+					activeQuestLink = link
+					activeQuestTexture = texture
 				end
+				if(areaID and areaID == GetCurrentMapAreaID()) then
+					closestQuestLink = link
+					closestQuestTexture = texture
+				elseif(not isComplete or (isComplete and showCompleted)) then
+					local distanceSq, onContinent = GetDistanceSqToQuest(questIndex)
+					if(onContinent and distanceSq < shortestDistance) then
+						shortestDistance = distanceSq
+						closestQuestLink = link
+						closestQuestTexture = texture
+					end
+				end
+
+				numItems = numItems + 1
 			end
 		end
 	end

-	if(self.CurrentQuest ~= MOD.CurrentQuest) then
-		if(closestLink) then
-			self.CurrentQuest = closestIndex;
-			self:SetAbility(closestLink, closestTexture, closestQuest, closestLevel, closestTexture, closestID, closestIndex, closestCount, closestDuration, closestExpiration, closestComplete);
-			self.ArtFile = [[Interface\ExtraButton\Smash]];
-		elseif(self:IsShown()) then
-			self.CurrentQuest = 0;
-			self:RemoveAbility();
-		end
+	if(closestQuestLink) then
+		self:SetUsage(closestQuestLink, closestQuestTexture);
+	elseif(activeQuestLink) then
+		self:SetUsage(activeQuestLink, activeQuestTexture);
+	end
+
+	if(numItems > 0 and not ticker) then
+		ticker = C_Timer.NewTicker(30, function()
+			self:Update()
+		end)
+	elseif(numItems == 0 and ticker) then
+		ticker:Cancel()
+		ticker = nil
 	end
 end
 --[[
@@ -128,17 +127,23 @@ PACKAGE CALL
 ##########################################################
 ]]--
 function MOD:InitializeQuestItem()
-	SV.SuperButton.ItemBlackList[113191] = true
-	SV.SuperButton.ItemBlackList[110799] = true
-	SV.SuperButton.ItemBlackList[109164] = true
+	SVUI_QuestItemBar:SetParent(SV.Screen)
+	SVUI_QuestItemBar:SetPointToScale("BOTTOM", SV.Screen, "BOTTOM", 0, 250)
+	SVUI_QuestItemBar:SetSizeToScale(40,40)
+
+	SV.Mentalo:Add(SVUI_QuestItemBar, L["Quest Item Button"])

-	local Button = SV.SuperButton:AddItem("SVUI_QuestAutoButton", UpdateButton, nil, 'SVUI_QUESTITEM');
-	Button:RegisterEvent('UPDATE_EXTRA_ACTIONBAR')
-	Button:RegisterEvent('BAG_UPDATE_COOLDOWN')
-	Button:RegisterEvent('BAG_UPDATE_DELAYED')
-	Button:RegisterEvent('WORLD_MAP_UPDATE')
-	Button:RegisterEvent('QUEST_LOG_UPDATE')
-	Button:RegisterEvent('QUEST_POI_UPDATE')
+	local questitem = SV:CreateSecureButton("item", "SVUI_QuestItemBar", "SVUI_QuestAutoItemButton", UpdateButton);
+	questitem.ArtFile = QUEST_BORDER;
+	questitem.blacklist[113191] = true
+	questitem.blacklist[110799] = true
+	questitem.blacklist[109164] = true
+	questitem:RegisterEvent('UPDATE_EXTRA_ACTIONBAR')
+	questitem:RegisterEvent('BAG_UPDATE_COOLDOWN')
+	questitem:RegisterEvent('BAG_UPDATE_DELAYED')
+	questitem:RegisterEvent('WORLD_MAP_UPDATE')
+	questitem:RegisterEvent('QUEST_LOG_UPDATE')
+	questitem:RegisterEvent('QUEST_POI_UPDATE')

-	self.QuestItem = Button
+	self.QuestItem = questitem
 end
\ No newline at end of file
diff --git a/Interface/AddOns/SVUI/packages/quest/components/popups.lua b/Interface/AddOns/SVUI/packages/quest/components/popups.lua
index 0023342..47eb321 100644
--- a/Interface/AddOns/SVUI/packages/quest/components/popups.lua
+++ b/Interface/AddOns/SVUI/packages/quest/components/popups.lua
@@ -103,7 +103,7 @@ local GetPopUpRow = function(self, index)
 		row.Button = CreateFrame("Button", nil, row)
 		row.Button:SetPointToScale("TOPLEFT", row, "TOPLEFT", 0, 0);
 		row.Button:SetPointToScale("BOTTOMRIGHT", row, "BOTTOMRIGHT", 0, 0);
-		row.Button:SetStylePanel("Framed", "FramedTop")
+		row.Button:SetStylePanel("HeavyButton", true)
 		row.Button:SetPanelColor("yellow")
 		row.Button:SetID(0)
 		row.Button.PopUpType = nil;
@@ -111,7 +111,7 @@ local GetPopUpRow = function(self, index)
 		row.Badge = CreateFrame("Frame", nil, row.Button)
 		row.Badge:SetPointToScale("TOPLEFT", row.Button, "TOPLEFT", 4, -4);
 		row.Badge:SetSizeToScale((LARGE_INNER_HEIGHT - 4), (LARGE_INNER_HEIGHT - 4));
-		row.Badge:SetStylePanel("Fixed", "Inset")
+		row.Badge:SetStylePanel("!_Frame", "Inset")
 		row.Badge.Icon = row.Badge:CreateTexture(nil,"OVERLAY")
 		row.Badge.Icon:SetAllPointsIn(row.Badge);
 		row.Badge.Icon:SetTexture(QUEST_ICON)
@@ -119,7 +119,7 @@ local GetPopUpRow = function(self, index)
 		row.Header = CreateFrame("Frame", nil, row.Button)
 		row.Header:SetPointToScale("TOPLEFT", row.Badge, "TOPRIGHT", 4, -1);
 		row.Header:SetPointToScale("BOTTOMRIGHT", row.Button, "BOTTOMRIGHT", -2, 2);
-		row.Header:SetStylePanel("Default")
+		row.Header:SetStylePanel("Frame")
 		row.Header.Text = row.Header:CreateFontString(nil,"OVERLAY")
 		row.Header.Text:SetFontObject(SVUI_Font_Quest);
 		row.Header.Text:SetJustifyH('LEFT')
diff --git a/Interface/AddOns/SVUI/packages/quest/components/quests.lua b/Interface/AddOns/SVUI/packages/quest/components/quests.lua
index 68b3bda..25e94dd 100644
--- a/Interface/AddOns/SVUI/packages/quest/components/quests.lua
+++ b/Interface/AddOns/SVUI/packages/quest/components/quests.lua
@@ -61,18 +61,20 @@ local INNER_HEIGHT = ROW_HEIGHT - 4;
 local LARGE_ROW_HEIGHT = ROW_HEIGHT * 2;
 local LARGE_INNER_HEIGHT = LARGE_ROW_HEIGHT - 4;

-local NO_ICON = [[Interface\AddOns\SVUI\assets\artwork\Template\EMPTY]];
+local NO_ART = [[Interface\AddOns\SVUI\assets\artwork\Template\EMPTY]];
 local OBJ_ICON_ACTIVE = [[Interface\COMMON\Indicator-Yellow]];
 local OBJ_ICON_COMPLETE = [[Interface\COMMON\Indicator-Green]];
 local OBJ_ICON_INCOMPLETE = [[Interface\COMMON\Indicator-Gray]];

 local QUEST_ICON = [[Interface\AddOns\SVUI\assets\artwork\Quest\QUEST-INCOMPLETE-ICON]];
 local QUEST_ICON_COMPLETE = [[Interface\AddOns\SVUI\assets\artwork\Quest\QUEST-COMPLETE-ICON]];
+local QUEST_BORDER = [[Interface\ExtraButton\Smash]];

 local CACHED_QUESTS = {};
 local QUESTS_BY_LOCATION = {};
 local QUEST_HEADER_MAP = {};
 local USED_QUESTIDS = {};
+local TICKERS, ACTIVE_ITEMS = {}, {};
 local CURRENT_MAP_ID = 0;
 local WORLDMAP_UPDATE = false;

@@ -87,7 +89,283 @@ local QuestInZone = {
 	[25111] = 161,
 	[24735] = 201,
 };
+local ItemBlacklist = {
+	[113191] = true,
+	[110799] = true,
+	[109164] = true,
+};
+--[[
+##########################################################
+ITEM BAR/BUTTON CONSTRUCT
+##########################################################
+]]--
+local ItemBar = _G["SVUI_QuestItemBar"];
+ItemBar.Buttons = {};
+
+local ItemBar_OnEvent = function(self, event)
+    if(event == 'PLAYER_REGEN_ENABLED' and self.needsUpdate) then
+        self:Update()
+        self:UnregisterEvent("PLAYER_REGEN_ENABLED")
+    end
+end
+ItemBar:SetScript('OnEvent', ItemBar_OnEvent);
+
+local CreateQuestItemButton;
+do
+    --[[ HANDLERS ]]--
+
+    local Button_UpdateCooldown = function(self)
+        if(self:IsShown() and self.itemID) then
+            local start, duration, enable = GetItemCooldown(self.itemID)
+            if((start and start > 0) and (duration and duration > 0)) then
+                self.Cooldown:SetCooldown(start, duration)
+                self.Cooldown:Show()
+            else
+                self.Cooldown:Hide()
+            end
+        end
+    end
+
+    local Button_OnEnter = function(self)
+        if(self.itemID) then
+            GameTooltip:SetOwner(self, 'ANCHOR_LEFT')
+            GameTooltip:SetHyperlink(self.itemLink)
+        end
+        if(self.___overflow) then
+            self:FadeIn()
+        end
+    end
+
+    local Button_OnLeave = function(self)
+    	GameTooltip_Hide()
+        if(self.___overflow) then
+            self:FadeOut()
+        end
+    end
+
+    local Button_OnEvent = function(self, event)
+        if(event == 'BAG_UPDATE_COOLDOWN') then
+            self:UpdateCooldown()
+        elseif(event == 'PLAYER_REGEN_ENABLED') then
+            self:SetAttribute('item', self.attribute)
+            self:UnregisterEvent(event)
+            self:UpdateCooldown()
+        --else
+            --self:Update()
+        end
+    end
+
+    local Button_SetItem = function(self, itemLink, texture, completed)
+        if(itemLink) then
+        	if(completed and (itemLink == self.itemLink)) then
+        		self:ClearUsage()
+        		return
+        	end
+            if(ACTIVE_ITEMS[itemLink] or (itemLink == self.itemLink and self:IsShown())) then
+                return false
+            end
+            ACTIVE_ITEMS[itemLink] = true;
+            self.Icon:SetTexture(texture)
+            self.itemID, self.itemName = string.match(itemLink, '|Hitem:(.-):.-|h%[(.+)%]|h')
+            self.itemLink = itemLink
+
+            if(ItemBlacklist[self.itemID]) then
+                return false
+            end
+            self:FadeIn()
+        end
+
+        if(InCombatLockdown()) then
+            self.attribute = self.itemName
+            self:RegisterEvent('PLAYER_REGEN_ENABLED')
+        else
+            self:SetAttribute('item', self.itemName)
+            self:UpdateCooldown()
+        end
+
+        return true
+    end
+
+    local Button_ClearItem = function(self)
+        self:FadeOut()
+        if(InCombatLockdown()) then
+            self.attribute = nil;
+            self:RegisterEvent('PLAYER_REGEN_ENABLED');
+        else
+            self:SetAttribute('item', nil)
+        end
+    end
+
+    local Button_UpdateItem = function(self)
+		local numItems = 0
+		local shortestDistance = 62500
+		local closestQuestLink, closestQuestTexture
+		local activeQuestLink, activeQuestTexture
+
+		for index = 1, GetNumQuestWatches() do
+			local questID, _, questIndex, _, _, isComplete = GetQuestWatchInfo(index)
+			if(questID and QuestHasPOIInfo(questID)) then
+				local link, texture, _, showCompleted = GetQuestLogSpecialItemInfo(questIndex)
+				if(link) then
+					local areaID = QuestInZone[questID]
+					if questIndex == MOD.CurrentQuest then
+						activeQuestLink = link
+						activeQuestTexture = texture
+					end
+					if(areaID and areaID == GetCurrentMapAreaID()) then
+						closestQuestLink = link
+						closestQuestTexture = texture
+					elseif(not isComplete or (isComplete and showCompleted)) then
+						local distanceSq, onContinent = GetDistanceSqToQuest(questIndex)
+						if(onContinent and distanceSq < shortestDistance) then
+							shortestDistance = distanceSq
+							closestQuestLink = link
+							closestQuestTexture = texture
+						end
+					end
+
+					numItems = numItems + 1
+				end
+			end
+		end

+		if(closestQuestLink) then
+			self:SetUsage(closestQuestLink, closestQuestTexture);
+		elseif(activeQuestLink) then
+			self:SetUsage(activeQuestLink, activeQuestTexture);
+		end
+
+		local name = self:GetName();
+		if(numItems > 0 and not TICKERS[name]) then
+			TICKERS[name] = C_Timer.NewTicker(30, function()
+				self:Update()
+			end)
+		elseif(numItems == 0 and TICKERS[name]) then
+			TICKERS[name]:Cancel()
+			TICKERS[name] = nil
+		end
+	end
+
+    --[[ METHOD ]]--
+
+    CreateQuestItemButton = function(index)
+    	local buttonName = "SVUI_QuestButton" .. index
+        local itembutton = CreateFrame('Button', buttonName, UIParent, 'SecureActionButtonTemplate, SecureHandlerStateTemplate, SecureHandlerAttributeTemplate');
+        itembutton:SetStylePanel("Icon");
+        itembutton:SetSizeToScale(28, 28);
+        itembutton:SetID(index);
+        itembutton.___overflow = false;
+        itembutton.SetUsage = Button_SetItem;
+        itembutton.ClearUsage = Button_ClearItem;
+        itembutton.Update = Button_UpdateItem;
+        itembutton.UpdateCooldown = Button_UpdateCooldown;
+
+        local Icon = itembutton:CreateTexture('$parentIcon', 'BACKGROUND')
+        Icon:SetTexCoord(0.1, 0.9, 0.1, 0.9)
+        Icon:SetAllPoints()
+        itembutton.Icon = Icon
+
+        local Cooldown = CreateFrame('Cooldown', '$parentCooldown', itembutton, 'CooldownFrameTemplate')
+        Cooldown:ClearAllPoints()
+        Cooldown:SetPoint('TOPRIGHT', -2, -3)
+        Cooldown:SetPoint('BOTTOMLEFT', 2, 1)
+        Cooldown:Hide()
+        itembutton.Cooldown = Cooldown
+
+        --RegisterStateDriver(itembutton, 'visible', '[petbattle] hide; show')
+        itembutton:SetAttribute('type', 'item');
+        itembutton:SetAttribute('_onattributechanged', [[
+            if(name == 'item') then
+                if(value and not self:IsShown()) then
+                    self:Show()
+                elseif(not value) then
+                    self:Hide()
+                end
+            end
+        ]]);
+
+        itembutton:SetScript('OnEnter', Button_OnEnter);
+        itembutton:SetScript('OnLeave', Button_OnLeave);
+
+        itembutton:RegisterEvent('UPDATE_EXTRA_ACTIONBAR');
+		itembutton:RegisterEvent('BAG_UPDATE_COOLDOWN');
+		itembutton:RegisterEvent('BAG_UPDATE_DELAYED');
+		itembutton:RegisterEvent('WORLD_MAP_UPDATE');
+		itembutton:RegisterEvent('QUEST_LOG_UPDATE');
+		itembutton:RegisterEvent('QUEST_POI_UPDATE');
+        itembutton:SetScript('OnEvent', Button_OnEvent);
+
+        return itembutton
+    end
+
+    function ItemBar:SetQuestItem(itemLink, texture, completed)
+    	if(not itemLink) then return end
+		local maxIndex = #self.Buttons;
+		for i = 1, maxIndex do
+			if(not self.Buttons[i]:GetAttribute('item')) then
+	    		self.Buttons[i]:SetUsage(itemLink, texture, completed)
+	    		return
+	    	end
+		end
+
+		local index = maxIndex + 1
+		self.Buttons[index] = CreateQuestItemButton(index)
+		self.Buttons[index]:SetUsage(itemLink, texture, completed)
+	end
+end
+
+function ItemBar:Reset()
+	local maxIndex = #self.Buttons;
+	wipe(ACTIVE_ITEMS)
+	for i = 1, maxIndex do
+		local button = self.Buttons[i];
+		button:ClearUsage();
+	end
+end
+
+function ItemBar:Update()
+	if(InCombatLockdown()) then
+		self:RegisterEvent("PLAYER_REGEN_ENABLED")
+		self.needsUpdate = true
+		return
+	end
+	local maxIndex = #self.Buttons;
+
+	local firstButton = self.Buttons[1];
+	firstButton:ClearAllPoints();
+	firstButton:SetPoint("TOP", self, "TOP", 0, -2);
+
+	local lastButton = firstButton;
+	local totalShown = 1;
+
+	for i = 2, maxIndex do
+		local button = self.Buttons[i];
+		button:ClearAllPoints();
+		if(button:IsShown()) then
+			totalShown = totalShown + 1;
+			if(totalShown > 5) then
+				if(totalShown == 6) then
+					button:SetPoint("BOTTOM", firstButton, "TOP", 0, 2)
+				else
+					button:SetPoint("BOTTOM", lastButton, "TOP", 0, 2)
+				end
+				button.___overflow = true;
+				button:FadeOut();
+			else
+				button:SetPoint("TOP", lastButton, "BOTTOM", 0, -2)
+				button.___overflow = false;
+				button:FadeIn();
+			end
+			lastButton = button
+		end
+	end
+	self.needsUpdate = nil
+end
+--[[
+##########################################################
+QUEST CACHING
+##########################################################
+]]--
 local function CacheQuestHeaders()
 	wipe(QUEST_HEADER_MAP)

@@ -122,11 +400,17 @@ local function UpdateCachedQuests(needsSorting)
 				CACHED_QUESTS[questID] = {i, title, level, texture, questID, questLogIndex, numObjectives, duration, elapsed, completed, questType, link};
 			else
 				CACHED_QUESTS[questID][1] = i;	            -- args: quest watch index
+				CACHED_QUESTS[questID][2] = title;	        -- args: quest title
+				CACHED_QUESTS[questID][3] = level;	        -- args: quest level
 				CACHED_QUESTS[questID][4] = texture;	    -- args: quest item icon
+				CACHED_QUESTS[questID][5] = questID;	    -- args: quest id
+				CACHED_QUESTS[questID][6] = questLogIndex;	-- args: quest log index
 				CACHED_QUESTS[questID][7] = numObjectives;	-- args: quest objective count
 				CACHED_QUESTS[questID][8] = duration;		-- args: quest timer duration
 				CACHED_QUESTS[questID][9] = elapsed;		-- args: quest timer elapsed
 				CACHED_QUESTS[questID][10] = completed;		-- args: quest is completed
+				CACHED_QUESTS[questID][11] = questType;	    -- args: quest type
+				CACHED_QUESTS[questID][12] = link;	        -- args: quest item link
 			end

 			if(questID == MOD.ActiveQuestID) then
@@ -385,7 +669,7 @@ local GetQuestRow = function(self, index)
 		row.Badge = CreateFrame("Frame", nil, row)
 		row.Badge:SetPoint("TOPLEFT", row, "TOPLEFT", 0, 0);
 		row.Badge:SetSizeToScale(QUEST_ROW_HEIGHT, QUEST_ROW_HEIGHT);
-		row.Badge:SetStylePanel("Default", "Headline")
+		row.Badge:SetStylePanel("Frame", "Lite")

 		row.Badge.Icon = row.Badge:CreateTexture(nil,"OVERLAY")
 		row.Badge.Icon:SetAllPoints(row.Badge);
@@ -431,7 +715,7 @@ local GetQuestRow = function(self, index)

 		row.Button = CreateFrame("Button", nil, row.Header)
 		row.Button:SetAllPoints(row.Header);
-		row.Button:SetStylePanel("Button", "Headline", 1, 1, 1)
+		row.Button:SetStylePanel("Button", "Lite", 1, 1, 1)
 		row.Button:SetID(0)
 		row.Button:RegisterForClicks("LeftButtonUp", "RightButtonUp")
 		row.Button:SetScript("OnClick", ViewButton_OnClick);
@@ -552,14 +836,14 @@ local SetQuestRow = function(self, index, watchIndex, title, level, icon, questI
 		local description, category, objective_completed = GetQuestObjectiveInfo(questID, i);
 		if not objective_completed then iscomplete = false end
 		if(description) then
-			fill_height = fill_height + (INNER_HEIGHT + 2);
+			fill_height = fill_height + (INNER_HEIGHT + 4);
 			objective_rows = objective_block:SetInfo(objective_rows, description, objective_completed);
 		end
 	end

 	if(duration) then
 		if(elapsed and elapsed < duration) then
-			fill_height = fill_height + (INNER_HEIGHT + 2);
+			fill_height = fill_height + (INNER_HEIGHT + 4);
 			row:StartTimer(duration, elapsed)
 		end
 	end
@@ -569,7 +853,7 @@ local SetQuestRow = function(self, index, watchIndex, title, level, icon, questI
 		objective_block:FadeIn();
 	end

-	if(iscomplete) then MOD.QuestItem:RemoveAbility(questLogIndex) end
+	--if(iscomplete) then MOD.QuestItem:ClearUsage(questLogIndex) end

 	fill_height = fill_height + (QUEST_ROW_HEIGHT + 6);

@@ -581,14 +865,13 @@ local SetZoneHeader = function(self, index, zoneName)
 	local row = self:Get(index);
 	row.Header.Level:SetText('');
 	row.Header.Text:SetText('');
-	row.Badge.Icon:SetTexture(NO_ICON);
+	row.Badge.Icon:SetTexture(NO_ART);
 	row.Badge.Button:SetID(0);
 	row.Badge:SetAlpha(0);
 	row.Button:SetID(0);
 	row.Button:Disable();
 	row.Button:SetAlpha(0);
 	row.Badge.Button:Disable();
---0.75,0.31,1
 	row.Header.Zone:SetTextColor(1,0.31,0.1)
 	row.Header.Zone:SetText(zoneName);
 	row:SetHeightToScale(ROW_HEIGHT);
@@ -600,9 +883,6 @@ local SetZoneHeader = function(self, index, zoneName)
 end

 local RefreshQuests = function(self, event, ...)
-	-- print('<-----QUESTS')
-	-- print(event)
-	-- print(...)
 	local rows = 0;
 	local fill_height = 0;
 	local zone = 0;
@@ -620,6 +900,9 @@ local RefreshQuests = function(self, event, ...)
 				end
 				rows, add_height = self:Set(rows, quest[1], quest[2], quest[3], quest[4], quest[5], quest[6], quest[7], quest[8], quest[9], quest[10])
 				fill_height = fill_height + add_height;
+				if(quest[12]) then
+					ItemBar:SetQuestItem(quest[12], quest[4], quest[10])
+				end
 			end
 		end
 	end
@@ -631,6 +914,8 @@ local RefreshQuests = function(self, event, ...)
 		self:SetHeightToScale(fill_height + 2);
 		self:FadeIn();
 	end
+
+	ItemBar:Update()
 end

 local AddOneQuest = function(self, questID)
@@ -658,7 +943,7 @@ local ResetQuestBlock = function(self)
 			row.Button:SetID(0);
 			row.Button:Disable();
 			row.Badge.Button:SetID(0);
-			row.Badge.Icon:SetTexture(NO_ICON);
+			row.Badge.Icon:SetTexture(NO_ART);
 			row.Badge:SetAlpha(0);
 			row.Badge.Button:Disable();
 			row:SetHeight(1);
@@ -666,6 +951,7 @@ local ResetQuestBlock = function(self)
 			row.Objectives:Reset();
 		end
 	end
+	ItemBar:Reset();
 	UpdateCachedQuests();
 end

@@ -774,8 +1060,20 @@ end
 SV.Events:On("QUEST_UPVALUES_UPDATED", "UpdateQuestLocals", UpdateQuestLocals);

 function MOD:InitializeQuests()
-	local scrollChild = self.Docklet.ScrollFrame.ScrollChild;
+	local barWidth = 32;
+	local barHeight = barWidth * 5;
+	ItemBar:SetParent(SV.Screen);
+	ItemBar:SetPointToScale("TOPRIGHT", SV.Dock.BottomRight, "TOPLEFT", -4, 0);
+	ItemBar:SetWidth(barWidth);
+	ItemBar:SetHeight(barHeight);
+	ItemBar:SetStylePanel("Frame")
+	SV.Mentalo:Add(ItemBar, L["Quest Items"]);
+	for i = 1, 5 do
+		ItemBar.Buttons[i] = CreateQuestItemButton(i)
+	end
+	--ItemBar:Update()

+	local scrollChild = self.Docklet.ScrollFrame.ScrollChild;
 	local quests = CreateFrame("Frame", nil, scrollChild)
 	quests:SetWidth(ROW_WIDTH);
 	quests:SetHeightToScale(ROW_HEIGHT);
diff --git a/Interface/AddOns/SVUI/packages/quest/components/scenario.lua b/Interface/AddOns/SVUI/packages/quest/components/scenario.lua
index 8475245..73ebd5a 100644
--- a/Interface/AddOns/SVUI/packages/quest/components/scenario.lua
+++ b/Interface/AddOns/SVUI/packages/quest/components/scenario.lua
@@ -363,12 +363,12 @@ function MOD:InitializeScenarios()
 	block:SetPointToScale("TOPLEFT", scenario, "TOPLEFT", 2, -2);
 	block:SetPointToScale("TOPRIGHT", scenario, "TOPRIGHT", -2, -2);
 	block:SetHeight(1);
-	block:SetStylePanel("Framed", "Headline");
+	block:SetStylePanel("HeavyButton", "Lite");

 	block.Badge = CreateFrame("Frame", nil, block)
 	block.Badge:SetPointToScale("TOPLEFT", block, "TOPLEFT", 4, -4);
 	block.Badge:SetSizeToScale((LARGE_INNER_HEIGHT - 4), (LARGE_INNER_HEIGHT - 4));
-	block.Badge:SetStylePanel("Fixed", "Inset")
+	block.Badge:SetStylePanel("!_Frame", "Inset")

 	block.Icon = block.Badge:CreateTexture(nil,"OVERLAY")
 	block.Icon:SetAllPointsIn(block.Badge);
@@ -379,7 +379,7 @@ function MOD:InitializeScenarios()
 	block.Header:SetPointToScale("TOPLEFT", block.Badge, "TOPRIGHT", 4, -1);
 	block.Header:SetPointToScale("TOPRIGHT", block, "TOPRIGHT", -4, 0);
 	block.Header:SetHeightToScale(INNER_HEIGHT);
-	block.Header:SetStylePanel("Default")
+	block.Header:SetStylePanel("Frame")

 	block.Header.Stage = block.Header:CreateFontString(nil,"OVERLAY")
 	block.Header.Stage:SetFontObject(SVUI_Font_Quest);
@@ -407,7 +407,7 @@ function MOD:InitializeScenarios()
 	timer:SetPointToScale("TOPLEFT", block.Header, "BOTTOMLEFT", 4, -4);
 	timer:SetPointToScale("TOPRIGHT", block.Header, "BOTTOMRIGHT", -4, -4);
 	timer:SetHeight(INNER_HEIGHT);
-	timer:SetStylePanel("Fixed", "Bar");
+	timer:SetStylePanel("!_Frame", "Bar");

 	timer.StartTimer = StartTimer;
 	timer.StopTimer = StopTimer;
diff --git a/Interface/AddOns/SVUI/packages/tip/SVTip.lua b/Interface/AddOns/SVUI/packages/tip/SVTip.lua
index ef0587f..9502e8c 100644
--- a/Interface/AddOns/SVUI/packages/tip/SVTip.lua
+++ b/Interface/AddOns/SVUI/packages/tip/SVTip.lua
@@ -551,7 +551,7 @@ local _hook_GameTooltip_ShowStatusBar = function(self, ...)
 	if bar and not bar.styled then
 		bar:RemoveTextures()
 		bar:SetStatusBarTexture([[Interface\AddOns\SVUI\assets\artwork\Template\DEFAULT]])
-		bar:SetStylePanel("Fixed", 'Inset',true)
+		bar:SetStylePanel("!_Frame", 'Inset',true)
 		if not bar.border then
 			local border=CreateFrame("Frame",nil,bar)
 			border:SetAllPointsOut(bar,1,1)
diff --git a/Interface/AddOns/SVUI/packages/tool/buttons/raidleader.lua b/Interface/AddOns/SVUI/packages/tool/buttons/raidleader.lua
index 757124a..47ce614 100644
--- a/Interface/AddOns/SVUI/packages/tool/buttons/raidleader.lua
+++ b/Interface/AddOns/SVUI/packages/tool/buttons/raidleader.lua
@@ -78,7 +78,7 @@ local function NewToolButton(name, parent, template, width, height, point, relat
 	button:SetWidthToScale(width)
 	button:SetHeightToScale(height)
 	button:SetPointToScale(point, relativeto, point2, xOfs, yOfs)
-	button:SetStylePanel("Framed")
+	button:SetStylePanel("HeavyButton")

 	if(textDisplay) then
 		local text = button:CreateFontString(nil,"OVERLAY")
@@ -122,7 +122,7 @@ function MOD:LoadRaidLeaderTools()
 	self.RaidTool:SetAttribute("hasDropDown", false);

 	self.RaidTool.Menu = CreateFrame("Frame", "SVUI_RaidToolMenu", self.RaidTool, "SecureHandlerClickTemplate");
-	self.RaidTool.Menu:SetStylePanel("Default", 'Transparent');
+	self.RaidTool.Menu:SetStylePanel("Frame", 'Transparent');
 	self.RaidTool.Menu:SetWidthToScale(120);
 	self.RaidTool.Menu:SetHeightToScale(140);
 	self.RaidTool.Menu:SetPoint("TOPLEFT", dock.ToolBar, "BOTTOMLEFT", 0, -2);
@@ -159,7 +159,7 @@ function MOD:LoadRaidLeaderTools()
 	SVUI_RaidToolToggle:SetScript("PostClick", function(self) self:RemoveTextures(); SVUI_RaidToolMenu.toggled = true end);
 	SVUI_RaidToolToggle:HookScript("OnEnter", ToolButton_OnEnter)
 	SVUI_RaidToolToggle:HookScript("OnLeave", ToolButton_OnLeave)
-	SV:AddToDisplayAudit(self.RaidTool);
+	SV:ManageVisibility(self.RaidTool);

 	--Close Button
 	local close = NewToolButton("SVUI_RaidToolCloseButton", self.RaidTool.Menu, "UIMenuButtonStretchTemplate, SecureHandlerClickTemplate", 30, 18, "BOTTOM", self.RaidTool.Menu, "BOTTOM", 0, 2, "X");
@@ -204,7 +204,7 @@ function MOD:LoadRaidLeaderTools()
 		markerButton:SetHeightToScale(18)
 		markerButton:SetWidth(109)
 		markerButton:RemoveTextures()
-		markerButton:SetStylePanel("Framed")
+		markerButton:SetStylePanel("HeavyButton")

 		local markersText = markerButton:CreateFontString(nil,"OVERLAY")
 		markersText:SetFont(SV.Media.font.default, 14, "NONE")
diff --git a/Interface/AddOns/SVUI/packages/unit/elements/auras.lua b/Interface/AddOns/SVUI/packages/unit/elements/auras.lua
index 091e2bf..d7dbf43 100644
--- a/Interface/AddOns/SVUI/packages/unit/elements/auras.lua
+++ b/Interface/AddOns/SVUI/packages/unit/elements/auras.lua
@@ -79,9 +79,11 @@ LOCAL FUNCTIONS
 local AuraIcon_OnClick = function(self)
 	if not IsShiftKeyDown() then return end
 	local name = self.name;
-	if name then
+
+	local filterKey = tostring(self.spellID)
+	if name and filterKey then
 		SV:AddonMessage((L["The spell '%s' has been added to the BlackList unitframe aura filter."]):format(name))
-		SV.filters["BlackList"][name] = {["enable"] = true}
+		SV.filters["BlackList"][filterKey] = {["enable"] = true}
 		MOD:RefreshUnitFrames()
 	end
 end
@@ -324,11 +326,14 @@ end
 --[[ AURABAR HANDLERS ]]--

 local AuraBar_OnClick = function(self)
-	if not IsShiftKeyDown() then return end
-	local name = self:GetParent().aura.name
-	if name then
+	if not IsShiftKeyDown() then return end
+	local parent = self:GetParent()
+	local name = parent.aura.name
+
+	local filterKey = tostring(parent.aura.spellID)
+	if name and filterKey then
 		SV:AddonMessage((L["The spell '%s' has been added to the BlackList unitframe aura filter."]):format(name))
-		SV.filters["BlackList"][name] = {["enable"] = true}
+		SV.filters["BlackList"][filterKey] = {["enable"] = true}
 		MOD:RefreshUnitFrames()
 	end
 end
@@ -396,6 +401,7 @@ local CommonAuraFilter = function(self, unit, icon, auraName, _, _, _, debuffTyp
 	icon.priority = 0;
 	icon.owner = caster;
 	icon.name = auraName;
+	icon.spellID = spellID;

 	local filterKey = tostring(spellID)

@@ -501,6 +507,7 @@ local DetailedAuraFilter = function(self, unit, icon, auraName, _, _, _, debuffT
 	icon.priority = 0;
 	icon.owner = caster;
 	icon.name = auraName;
+	icon.spellID = spellID;

 	local filterKey = tostring(spellID)

diff --git a/Interface/AddOns/SVUI/packages/unit/elements/castbar.lua b/Interface/AddOns/SVUI/packages/unit/elements/castbar.lua
index c751ac9..642a0a9 100644
--- a/Interface/AddOns/SVUI/packages/unit/elements/castbar.lua
+++ b/Interface/AddOns/SVUI/packages/unit/elements/castbar.lua
@@ -522,7 +522,7 @@ function MOD:CreateCastbar(frame, reversed, moverName, ryu, useFader, isBoss, ha
 	organizer:SetFrameStrata("HIGH")

 	local iconHolder = CreateFrame("Frame", nil, organizer)
-	iconHolder:SetStylePanel("Fixed", "Inset", false)
+	iconHolder:SetStylePanel("!_Frame", "Inset", false)
 	organizer.Icon = iconHolder

 	local buttonIcon = iconHolder:CreateTexture(nil, "BORDER")
diff --git a/Interface/AddOns/SVUI/packages/unit/elements/essentials.lua b/Interface/AddOns/SVUI/packages/unit/elements/essentials.lua
index 6331e3e..cec92a2 100644
--- a/Interface/AddOns/SVUI/packages/unit/elements/essentials.lua
+++ b/Interface/AddOns/SVUI/packages/unit/elements/essentials.lua
@@ -271,6 +271,7 @@ local function CreateThreat(frame, unit)
 		aggro:SetScript("OnShow", function(this)
 			this.anim:Play()
 		end);
+		aggro:Hide();
 		frame.Aggro = aggro

 		threat.Override = UpdatePlayerThreat
@@ -448,7 +449,7 @@ function MOD:SetActionPanel(frame, unit, noHealthText, noPowerText, noMiscText)
 			frame.ActionPanel.class = CreateFrame("Frame", nil, frame.TextGrip)
 			frame.ActionPanel.class:SetSizeToScale(18)
 			frame.ActionPanel.class:SetPointToScale("TOPLEFT", frame.ActionPanel, "TOPLEFT", 2, -2)
-			frame.ActionPanel.class:SetStylePanel("Default", "Default", true, 2, 0, 0)
+			frame.ActionPanel.class:SetStylePanel("Frame", "Default", true, 2, 0, 0)

 			frame.ActionPanel.class.texture = frame.ActionPanel.class.Panel:CreateTexture(nil, "BORDER")
 			frame.ActionPanel.class.texture:SetAllPoints(frame.ActionPanel.class.Panel)
@@ -680,7 +681,7 @@ end
 function MOD:CreatePowerBar(frame, bg)
 	local power = CreateFrame("StatusBar", nil, frame)
 	power:SetStatusBarTexture([[Interface\AddOns\SVUI\assets\artwork\Bars\DEFAULT]])
-	power:SetStylePanel("Default", "Bar")
+	power:SetStylePanel("Frame", "Bar")
 	power:SetFrameStrata("LOW")
 	power:SetFrameLevel(6)
 	if bg then
@@ -698,7 +699,7 @@ end
 function MOD:CreateAltPowerBar(frame)
 	local altPower = CreateFrame("StatusBar", nil, frame)
 	altPower:SetStatusBarTexture([[Interface\AddOns\SVUI\assets\artwork\Bars\DEFAULT]])
-	altPower:SetStylePanel("Default", "Bar")
+	altPower:SetStylePanel("Frame", "Bar")
 	altPower:GetStatusBarTexture():SetHorizTile(false)
 	altPower:SetFrameStrata("LOW")
 	altPower:SetFrameLevel(8)
@@ -745,9 +746,9 @@ function MOD:CreatePortrait(frame,smallUnit,isPlayer)
 	portrait3D:SetFrameLevel(2)

 	if smallUnit then
-		portrait3D:SetStylePanel("Default", "UnitSmall")
+		portrait3D:SetStylePanel("Frame", "UnitSmall")
 	else
-		portrait3D:SetStylePanel("Default", "UnitLarge")
+		portrait3D:SetStylePanel("Frame", "UnitLarge")
 	end

 	local overlay = CreateFrame("Frame",nil,portrait3D)
@@ -767,9 +768,9 @@ function MOD:CreatePortrait(frame,smallUnit,isPlayer)
 	portrait2D:SetAllPoints(portrait2Danchor)
 	portrait2D.anchor = portrait2Danchor;
 	if smallUnit then
-		portrait2Danchor:SetStylePanel("Fixed", "UnitSmall")
+		portrait2Danchor:SetStylePanel("!_Frame", "UnitSmall")
 	else
-		portrait2Danchor:SetStylePanel("Fixed", "UnitLarge")
+		portrait2Danchor:SetStylePanel("!_Frame", "UnitLarge")
 	end
 	portrait2D.Panel = portrait2Danchor.Panel;

diff --git a/Interface/AddOns/SVUI/packages/unit/elements/misc.lua b/Interface/AddOns/SVUI/packages/unit/elements/misc.lua
index eced29a..16431ee 100644
--- a/Interface/AddOns/SVUI/packages/unit/elements/misc.lua
+++ b/Interface/AddOns/SVUI/packages/unit/elements/misc.lua
@@ -96,7 +96,7 @@ RAID DEBUFFS / DEBUFF HIGHLIGHT
 ]]--
 function MOD:CreateRaidDebuffs(frame)
 	local raidDebuff = CreateFrame("Frame", nil, frame)
-	raidDebuff:SetStylePanel("Fixed", "Slot")
+	raidDebuff:SetStylePanel("!_Frame", "Slot")
 	raidDebuff.icon = raidDebuff:CreateTexture(nil, "OVERLAY")
 	raidDebuff.icon:SetTexCoord(0.1, 0.9, 0.1, 0.9)
 	raidDebuff.icon:SetAllPointsIn(raidDebuff)
@@ -353,7 +353,7 @@ function MOD:CreateExperienceRepBar(frame)
 	if db.playerExpBar then
 		local xp = CreateFrame("StatusBar", "PlayerFrameExperienceBar", frame.Power)
 		xp:SetAllPointsIn(frame.Power, 0, 0)
-		xp:SetStylePanel("Default")
+		xp:SetStylePanel("Frame")
 		xp:SetStatusBarTexture([[Interface\AddOns\SVUI\assets\artwork\Template\DEFAULT]])
 		xp:SetStatusBarColor(0, 0.1, 0.6)
 		--xp:SetBackdropColor(1, 1, 1, 0.8)
@@ -381,7 +381,7 @@ function MOD:CreateExperienceRepBar(frame)
 	if db.playerRepBar then
 		local rep = CreateFrame("StatusBar", "PlayerFrameReputationBar", frame.Power)
 		rep:SetAllPointsIn(frame.Power, 0, 0)
-		rep:SetStylePanel("Default")
+		rep:SetStylePanel("Frame")
 		rep:SetStatusBarTexture([[Interface\AddOns\SVUI\assets\artwork\Template\DEFAULT]])
 		rep:SetStatusBarColor(0, 0.6, 0)
 		--rep:SetBackdropColor(1, 1, 1, 0.8)
@@ -685,7 +685,7 @@ function MOD:CreateResolveBar(frame)

 	local bar = CreateFrame('StatusBar', nil, resolve)
 	bar:SetAllPointsIn(resolve)
-	bar:SetStylePanel("Default", "Bar")
+	bar:SetStylePanel("Frame", "Bar")
 	bar:SetStatusBarTexture([[Interface\BUTTONS\WHITE8X8]])
 	bar:SetStatusBarColor(0.15, 0.7, 0.05, 0.9)
 	bar:SetMinMaxValues(0, 100)
diff --git a/Interface/AddOns/SVUI/packages/unit/frames.lua b/Interface/AddOns/SVUI/packages/unit/frames.lua
index e669757..965301c 100644
--- a/Interface/AddOns/SVUI/packages/unit/frames.lua
+++ b/Interface/AddOns/SVUI/packages/unit/frames.lua
@@ -792,7 +792,7 @@ CONSTRUCTORS["arena"] = function(self, unit)
         prep:SetFrameStrata("MEDIUM")
         prep:SetAllPoints(self)
         prep:SetID(selfID)
-        prep:SetStylePanel("Default", "Bar", true, 3, 1, 1)
+        prep:SetStylePanel("Frame", "Bar", true, 3, 1, 1)

         local health = CreateFrame("StatusBar", nil, prep)
         health:SetAllPoints(prep)
diff --git a/Interface/AddOns/SVUI/packages/unit/groups.lua b/Interface/AddOns/SVUI/packages/unit/groups.lua
index 6ade93e..11f8f0d 100644
--- a/Interface/AddOns/SVUI/packages/unit/groups.lua
+++ b/Interface/AddOns/SVUI/packages/unit/groups.lua
@@ -203,7 +203,7 @@ local AllowElement = function(self)

     self:SetScript("OnUpdate", nil)
     self.forceShowAuras = true;
-
+    self:EnableMouse(false)
     UnregisterUnitWatch(self)
     RegisterUnitWatch(self, true)

@@ -218,7 +218,7 @@ local RestrictElement = function(self)

     self.forceShowAuras = nil
     self.isForced = nil
-
+    self:EnableMouse(true)
     UnregisterUnitWatch(self)
     RegisterUnitWatch(self)

diff --git a/Interface/AddOns/SVUI/packages/unit/resources/druid.lua b/Interface/AddOns/SVUI/packages/unit/resources/druid.lua
index d61fa11..af9cf8f 100644
--- a/Interface/AddOns/SVUI/packages/unit/resources/druid.lua
+++ b/Interface/AddOns/SVUI/packages/unit/resources/druid.lua
@@ -290,7 +290,7 @@ function MOD:CreateClassBar(playerFrame)
 	local mana = CreateFrame("Frame", nil, playerFrame)
 	mana:SetFrameStrata("LOW")
 	mana:SetAllPointsIn(bar, 2, 4)
-	mana:SetStylePanel("Fixed", "Default")
+	mana:SetStylePanel("!_Frame", "Default")
 	mana:SetFrameLevel(mana:GetFrameLevel() + 1)
 	mana.colorPower = true;
 	mana.PostUpdatePower = UpdateAltPower;
diff --git a/Interface/AddOns/SVUI/packages/unit/resources/monk.lua b/Interface/AddOns/SVUI/packages/unit/resources/monk.lua
index c70dac2..c8a0bc3 100644
--- a/Interface/AddOns/SVUI/packages/unit/resources/monk.lua
+++ b/Interface/AddOns/SVUI/packages/unit/resources/monk.lua
@@ -148,7 +148,7 @@ function MOD:CreateClassBar(playerFrame)
 	stagger:SetPointToScale('TOPLEFT', playerFrame, 'TOPRIGHT', 3, 0)
 	stagger:SetPointToScale('BOTTOMLEFT', playerFrame, 'BOTTOMRIGHT', 3, 0)
 	stagger:SetWidth(10)
-	stagger:SetStylePanel("Default", "Bar")
+	stagger:SetStylePanel("Frame", "Bar")
 	stagger:SetOrientation("VERTICAL")
 	stagger:SetStatusBarTexture([[Interface\AddOns\SVUI\assets\artwork\Bars\DEFAULT]])
 	--stagger:GetStatusBarTexture():SetHorizTile(false)
diff --git a/Interface/AddOns/SVUI/scripts/misc.lua b/Interface/AddOns/SVUI/scripts/misc.lua
index bb762e7..0824c4a 100644
--- a/Interface/AddOns/SVUI/scripts/misc.lua
+++ b/Interface/AddOns/SVUI/scripts/misc.lua
@@ -38,6 +38,34 @@ local L = SV.L
 local toonclass = select(2, UnitClass('player'))
 --[[
 ##########################################################
+SIMPLE BUTTON CONSTRUCT
+##########################################################
+]]--
+local Button_OnEnter = function(self, ...)
+    if InCombatLockdown() then return end
+    GameTooltip:SetOwner(self, "ANCHOR_TOPLEFT", 0, 4)
+    GameTooltip:ClearLines()
+    GameTooltip:AddLine(self.TText, 1, 1, 1)
+    GameTooltip:Show()
+end
+
+local function CreateSimpleButton(frame, label, anchor, x, y, width, height, tooltip)
+    local button = CreateFrame("Button", nil, frame, "UIPanelButtonTemplate")
+    button:SetWidth(width)
+    button:SetHeight(height)
+    button:SetPoint(anchor, x, y)
+    button:SetText(label)
+    button:RegisterForClicks("AnyUp")
+    button:SetHitRectInsets(0, 0, 0, 0);
+    button:SetFrameStrata("FULLSCREEN_DIALOG");
+    button.TText = tooltip
+    button:SetStylePanel("Button")
+    button:SetScript("OnEnter", Button_OnEnter)
+    button:SetScript("OnLeave", GameTooltip_Hide)
+    return button
+end
+--[[
+##########################################################
 TAINT FIX HACKS
 ##########################################################
 ]]--
@@ -232,12 +260,12 @@ end
 local function LoadDressupHelper()
 	if IsAddOnLoaded("DressingRoomFunctions") then return end
 	--[[ PAPER DOLL ENHANCEMENT ]]--
-	local tabard1 = SV:CreateButton(DressUpFrame, "Tabard", "BOTTOMLEFT", 12, 12, 80, 22, "")
+	local tabard1 = CreateSimpleButton(DressUpFrame, "Tabard", "BOTTOMLEFT", 12, 12, 80, 22, "")
 	tabard1:SetScript("OnClick", function()
 		DressUpModel:UndressSlot(19)
 	end)

-	local nude1 = SV:CreateButton(DressUpFrame, "Nude", "BOTTOMLEFT", 104, 12, 80, 22, "")
+	local nude1 = CreateSimpleButton(DressUpFrame, "Nude", "BOTTOMLEFT", 104, 12, 80, 22, "")
 	nude1:SetScript("OnClick", function()
 		DressUpFrameResetButton:Click()
 		for i = 1, 19 do
@@ -249,14 +277,14 @@ local function LoadDressupHelper()

 	-- frame, label, anchor, x, y, width, height, tooltip

-	local tabard2 = SV:CreateButton(SideDressUpFrame, "Tabard", "BOTTOMLEFT", 14, 20, 60, 22, "")
+	local tabard2 = CreateSimpleButton(SideDressUpFrame, "Tabard", "BOTTOMLEFT", 14, 20, 60, 22, "")
 	tabard2:SetFrameStrata(BtnStrata);
 	tabard2:SetFrameLevel(BtnLevel);
 	tabard2:SetScript("OnClick", function()
 		SideDressUpModel:UndressSlot(19)
 	end)

-	local nude2 = SV:CreateButton(SideDressUpFrame, "Nude", "BOTTOMRIGHT", -18, 20, 60, 22, "")
+	local nude2 = CreateSimpleButton(SideDressUpFrame, "Nude", "BOTTOMRIGHT", -18, 20, 60, 22, "")
 	nude2:SetFrameStrata(BtnStrata);
 	nude2:SetFrameLevel(BtnLevel);
 	nude2:SetScript("OnClick", function()
diff --git a/Interface/AddOns/SVUI/scripts/mounts.lua b/Interface/AddOns/SVUI/scripts/mounts.lua
index 918feb1..bdeefc0 100644
--- a/Interface/AddOns/SVUI/scripts/mounts.lua
+++ b/Interface/AddOns/SVUI/scripts/mounts.lua
@@ -302,7 +302,7 @@ local function SetMountCheckButtons()
 		buttonBar["GROUND"]:SetSize(width,height)
 		buttonBar["GROUND"]:SetPoint("BOTTOMLEFT", buttonBar, "BOTTOMLEFT", 6, 4)
 		buttonBar["GROUND"]:RemoveTextures()
-	    buttonBar["GROUND"]:SetStylePanel("Colored")
+	    buttonBar["GROUND"]:SetStylePanel("Checkbox", false, 0, 0, true)
 	    buttonBar["GROUND"]:SetPanelColor(0.2, 0.7, 0.1, 0.15)
 	    buttonBar["GROUND"]:GetCheckedTexture():SetVertexColor(0.2, 0.7, 0.1, 1)
 	    buttonBar["GROUND"].key = "GROUND"
@@ -315,7 +315,7 @@ local function SetMountCheckButtons()
 		buttonBar["FLYING"]:SetSize(width,height)
 		buttonBar["FLYING"]:SetPoint("BOTTOMLEFT", buttonBar["GROUND"], "BOTTOMRIGHT", 2, 0)
 		buttonBar["FLYING"]:RemoveTextures()
-	    buttonBar["FLYING"]:SetStylePanel("Colored")
+	    buttonBar["FLYING"]:SetStylePanel("Checkbox", false, 0, 0, true)
 	    buttonBar["FLYING"]:SetPanelColor(1, 1, 0.2, 0.15)
 	    buttonBar["FLYING"]:GetCheckedTexture():SetVertexColor(1, 1, 0.2, 1)
 	    buttonBar["FLYING"].key = "FLYING"
@@ -328,7 +328,7 @@ local function SetMountCheckButtons()
 		buttonBar["SWIMMING"]:SetSize(width,height)
 		buttonBar["SWIMMING"]:SetPoint("BOTTOMLEFT", buttonBar["FLYING"], "BOTTOMRIGHT", 2, 0)
 		buttonBar["SWIMMING"]:RemoveTextures()
-	    buttonBar["SWIMMING"]:SetStylePanel("Colored")
+	    buttonBar["SWIMMING"]:SetStylePanel("Checkbox", false, 0, 0, true)
 	    buttonBar["SWIMMING"]:SetPanelColor(0.2, 0.42, 0.76, 0.15)
 	    buttonBar["SWIMMING"]:GetCheckedTexture():SetVertexColor(0.2, 0.42, 0.76, 1)
 	    buttonBar["SWIMMING"].key = "SWIMMING"
@@ -341,7 +341,7 @@ local function SetMountCheckButtons()
 		buttonBar["SPECIAL"]:SetSize(width,height)
 		buttonBar["SPECIAL"]:SetPoint("BOTTOMLEFT", buttonBar["SWIMMING"], "BOTTOMRIGHT", 2, 0)
 		buttonBar["SPECIAL"]:RemoveTextures()
-	    buttonBar["SPECIAL"]:SetStylePanel("Colored")
+	    buttonBar["SPECIAL"]:SetStylePanel("Checkbox", false, 0, 0, true)
 	    buttonBar["SPECIAL"]:SetPanelColor(0.7, 0.1, 0.1, 0.15)
 	    buttonBar["SPECIAL"]:GetCheckedTexture():SetVertexColor(0.7, 0.1, 0.1, 1)
 	    buttonBar["SPECIAL"].key = "SPECIAL"
diff --git a/Interface/AddOns/SVUI/scripts/sounds.lua b/Interface/AddOns/SVUI/scripts/sounds.lua
deleted file mode 100644
index 457f674..0000000
--- a/Interface/AddOns/SVUI/scripts/sounds.lua
+++ /dev/null
@@ -1,34 +0,0 @@
---[[
- /$$      /$$ /$$   /$$ /$$   /$$  /$$$$$$
-| $$$    /$$$| $$  | $$| $$$ | $$ /$$__  $$
-| $$$$  /$$$$| $$  | $$| $$$$| $$| $$  \__/
-| $$ $$/$$ $$| $$  | $$| $$ $$ $$| $$ /$$$$
-| $$  $$$| $$| $$  | $$| $$  $$$$| $$|_  $$
-| $$\  $ | $$| $$  | $$| $$\  $$$| $$  \ $$
-| $$ \/  | $$|  $$$$$$/| $$ \  $$|  $$$$$$/
-|__/     |__/ \______/ |__/  \__/ \______/
- /$$      /$$  /$$$$$$  /$$$$$$$  /$$$$$$$$
-| $$$    /$$$ /$$__  $$| $$__  $$| $$_____/
-| $$$$  /$$$$| $$  \ $$| $$  \ $$| $$
-| $$ $$/$$ $$| $$$$$$$$| $$  | $$| $$$$$
-| $$  $$$| $$| $$__  $$| $$  | $$| $$__/
-| $$\  $ | $$| $$  | $$| $$  | $$| $$
-| $$ \/  | $$| $$  | $$| $$$$$$$/| $$$$$$$$
-|__/     |__/|__/  |__/|_______/ |________/
-##########################################################
-LOCALIZED LUA FUNCTIONS
-##########################################################
-]]--
---[[ GLOBALS ]]--
-local _G = _G;
-local unpack 	= _G.unpack;
-local select 	= _G.select;
-local pairs 	= _G.pairs;
-local ipairs 	= _G.ipairs;
-local type 		= _G.type;
-local tinsert 	= _G.tinsert;
-local string 	= _G.string;
---[[ STRING METHODS ]]--
-local format, gsub = string.format, string.gsub;
-
---PlaySoundFile("sound\\vehicles\\veh_hordechopper_summon.ogg")
\ No newline at end of file
diff --git a/Interface/AddOns/SVUI/scripts/spellbind.lua b/Interface/AddOns/SVUI/scripts/spellbind.lua
index 6fcdb73..80b8da7 100644
--- a/Interface/AddOns/SVUI/scripts/spellbind.lua
+++ b/Interface/AddOns/SVUI/scripts/spellbind.lua
@@ -434,12 +434,12 @@ local function LoadSpellBinder()

 	SVUI_SpellBinderInset:RemoveTextures()

-	SpellBinder:SetStylePanel("Default", "Action")
+	SpellBinder:SetStylePanel("Frame", "Composite2")
 	SpellBinder.Panel:SetPoint("TOPLEFT", -18, 0)
 	SpellBinder.Panel:SetPoint("BOTTOMRIGHT", 0, 0)

 	SpellBinder.list:RemoveTextures()
-	SpellBinder.list:SetStylePanel("Default", "Inset")
+	SpellBinder.list:SetStylePanel("Frame", "Inset")

 	SpellBinder.tab:RemoveTextures()
 	SpellBinder.tab:SetStylePanel("Button")
diff --git a/Interface/AddOns/SVUI/setup/installer.lua b/Interface/AddOns/SVUI/setup/installer.lua
index e910330..fb80953 100644
--- a/Interface/AddOns/SVUI/setup/installer.lua
+++ b/Interface/AddOns/SVUI/setup/installer.lua
@@ -439,7 +439,9 @@ function SV.Setup:ChatConfigs(mungs)
 	if not mungs then
 		if SV.Chat then
 			SV.Chat:ReLoad(true)
-			if SV.Dock.Cache.IsFaded == true then HideSuperDocks() end
+			if(SV.Dock.Cache.LeftFaded or SV.Dock.Cache.RightFaded) then
+				ToggleSuperDocks()
+			end
 		end
 		SV:SavedPopup()
 	end
@@ -908,7 +910,7 @@ function SV.Setup:Install(autoLoaded)
 	if not SVUI_InstallerFrame then
 		local frame = CreateFrame("Button", "SVUI_InstallerFrame", UIParent)
 		frame:SetSizeToScale(550, 400)
-		frame:SetStylePanel("Default", "Action")
+		frame:SetStylePanel("Frame", "Composite2")
 		frame:SetPoint("TOP", SV.Screen, "TOP", 0, -150)
 		frame:SetFrameStrata("TOOLTIP")

diff --git a/Interface/AddOns/SVUI/system/_load.xml b/Interface/AddOns/SVUI/system/_load.xml
index 00cd1df..d1ba7d5 100644
--- a/Interface/AddOns/SVUI/system/_load.xml
+++ b/Interface/AddOns/SVUI/system/_load.xml
@@ -2,7 +2,6 @@
     <Script file="screen.lua"/>
 	<Script file="media.lua"/>
     <Script file="utilities.lua"/>
-    <Script file="visibility.lua"/>
     <Script file="slash.lua"/>
     <Script file="alerts.lua"/>
     <Script file="credits.lua"/>
diff --git a/Interface/AddOns/SVUI/system/alerts.lua b/Interface/AddOns/SVUI/system/alerts.lua
index 6b8414b..51758e0 100644
--- a/Interface/AddOns/SVUI/system/alerts.lua
+++ b/Interface/AddOns/SVUI/system/alerts.lua
@@ -87,7 +87,7 @@ SV.SystemAlert["FAILED_UISCALE"] = {
 	text = L["You have changed your UIScale, however you still have the AutoScale option enabled in SVUI. Press accept if you would like to disable the Auto Scale option."],
 	button1 = ACCEPT,
 	button2 = CANCEL,
-	OnAccept = function() SV.db.general.autoScale = false; ReloadUI(); end,
+	OnAccept = function() SV.db.screen.autoScale = false; ReloadUI(); end,
 	OnCancel = function() ReloadUI() end,
 	timeout = 0,
 	whileDead = 1,
diff --git a/Interface/AddOns/SVUI/system/core.lua b/Interface/AddOns/SVUI/system/core.lua
index 8768b13..05c0b0a 100644
--- a/Interface/AddOns/SVUI/system/core.lua
+++ b/Interface/AddOns/SVUI/system/core.lua
@@ -100,9 +100,7 @@ local SVLib = LibSuperVillain("Registry");
 local callbacks = {};
 local numCallbacks = 0;
 local playerClass = select(2, UnitClass("player"));
-local messagePattern = "|cffFF2F00%s:|r";
-local debugPattern = "|cffFF2F00%s|r [|cff992FFF%s|r]|cffFF2F00:|r";
-local errorPattern = "|cffff0000Error -- |r|cffff9900Required addon '|r|cffffff00%s|r|cffff9900' is %s.|r"
+local errorPattern = "|cffff0000Error -- |r|cffff9900Required addon '|r|cffffff00%s|r|cffff9900' is %s.|r";

 --[[ HELPERS ]]--

@@ -112,19 +110,6 @@ local function _removedeprecated()
     --[[ END DEPRECATED ]]--
 end

-local function _sendmessage(msg, prefix)
-    if(type(msg) == "table") then
-         msg = tostring(msg)
-    end
-    if(not msg) then return end
-    if(prefix) then
-        local outbound = ("%s %s"):format(prefix, msg);
-        print(outbound)
-    else
-        print(msg)
-    end
-end
-
 local function _explode(this, delim)
     local pattern = string.format("([^%s]+)", delim)
     local res = {}
@@ -313,32 +298,67 @@ SVUI.Options = {
 }

 --[[ BUILD LOGIN MESSAGES ]]--
+local SetLoginMessage;
+do
+    local commandments = {
+        {
+            "schemes diabolical",
+            "henchmen in-line",
+            "entrances grand",
+            "battles glorious",
+            "power absolute",
+        },
+        {
+            "traps inescapable",
+            "enemies overthrown",
+            "monologues short",
+            "victories infamous",
+            "identity a mystery",
+        }
+    };

-local commandments = {
-    {
-        "schemes diabolical",
-        "henchmen in-line",
-        "entrances grand",
-        "battles glorious",
-        "power absolute",
-    },
-    {
-        "traps inescapable",
-        "enemies overthrown",
-        "monologues short",
-        "victories infamous",
-        "identity a mystery",
-    }
-};
-
-function SVUI:SetLoginMessage()
-    local first = commandments[1][random(1,5)]
-    local second = commandments[2][random(1,5)]
-    local logMsg1 = (self.L["LOGIN_MSG"]):format(first, second)
-    local logMsg2 = (self.L["LOGIN_MSG2"]):format(self.Version)
-    local outbound = (messagePattern):format(self.NameID)
-    _sendmessage(logMsg1, outbound)
-    _sendmessage(logMsg2, outbound)
+    local messagePattern = "|cffFF2F00%s:|r";
+    local debugPattern = "|cffFF2F00%s|r [|cff992FFF%s|r]|cffFF2F00:|r";
+
+    local function _send_message(msg, prefix)
+        if(type(msg) == "table") then
+             msg = tostring(msg)
+        end
+        if(not msg) then return end
+        if(prefix) then
+            local outbound = ("%s %s"):format(prefix, msg);
+            print(outbound)
+        else
+            print(msg)
+        end
+    end
+
+    SetLoginMessage = function(self)
+        if(not self.NameID) then return end
+        local prefix = (messagePattern):format(self.NameID)
+        local first = commandments[1][random(1,5)]
+        local second = commandments[2][random(1,5)]
+        local custom_msg = (self.L["LOGIN_MSG"]):format(first, second)
+        _send_message(custom_msg, prefix)
+        local login_msg = (self.L["LOGIN_MSG2"]):format(self.Version)
+        _send_message(login_msg, prefix)
+    end
+
+    function SVUI:Debugger(msg)
+        if(not self.DebugMode) then return end
+        local outbound = (debugPattern):format(self.NameID, "DEBUG")
+        _send_message(msg, outbound)
+    end
+
+    function SVUI:SCTMessage(...)
+        if not CombatText_AddMessage then return end
+        CombatText_AddMessage(...)
+    end
+
+    function SVUI:AddonMessage(msg)
+        local outbound = (messagePattern):format(self.NameID)
+        _send_message(msg, outbound)
+    end
 end

 --[[ CORE FUNCTIONS ]]--
@@ -351,22 +371,6 @@ function SVUI:StaticPopup_Show(arg)
     end
 end

-function SVUI:Debugger(msg)
-    if(not self.DebugMode) then return end
-    local outbound = (debugPattern):format(self.NameID, "DEBUG")
-    _sendmessage(msg, outbound)
-end
-
-function SVUI:SCTMessage(...)
-    if not CombatText_AddMessage then return end
-    CombatText_AddMessage(...)
-end
-
-function SVUI:AddonMessage(msg)
-    local outbound = (messagePattern):format(self.NameID)
-    _sendmessage(msg, outbound)
-end
-
 function SVUI:ResetAllUI(confirmed)
     if InCombatLockdown()then
         self:AddonMessage(ERR_NOT_IN_COMBAT)
@@ -461,12 +465,12 @@ function SVUI:PLAYER_ENTERING_WORLD()
 end

 function SVUI:PET_BATTLE_CLOSE()
-    self:PushDisplayAudit()
+    self:AuditVisibility()
     SVLib:LiveUpdate()
 end

 function SVUI:PET_BATTLE_OPENING_START()
-    self:FlushDisplayAudit()
+    self:AuditVisibility(true)
 end

 function SVUI:PLAYER_REGEN_DISABLED()
@@ -501,7 +505,7 @@ function SVUI:PLAYER_REGEN_DISABLED()
     end

     if(self.NeedsFrameAudit) then
-        self:PushDisplayAudit()
+        self:AuditVisibility()
     end
 end

@@ -567,7 +571,7 @@ function SVUI:Initialize()
     collectgarbage("collect")

     if self.db.general.loginmessage then
-        self:SetLoginMessage()
+        SetLoginMessage(self)
     end
 end
 --[[
diff --git a/Interface/AddOns/SVUI/system/credits.lua b/Interface/AddOns/SVUI/system/credits.lua
index 110a4e9..a84e46b 100644
--- a/Interface/AddOns/SVUI/system/credits.lua
+++ b/Interface/AddOns/SVUI/system/credits.lua
@@ -17,97 +17,60 @@ S U P E R - V I L L A I N - U I   By: Munglunch                              #
 --[[ GLOBALS ]]--

 local _G = _G;
-local unpack 	 =  _G.unpack;
-local pairs 	 =  _G.pairs;

 --[[ ADDON ]]--

 local SV = _G["SVUI"];
 local L = SV.L;

---[[ CODING CREDITS ]]--
-
-local contributors = {
-	"Azilroka, Sortokk, Kkthnx, AlleyKat",
-	"Quokka, Duugu, Zork, Haleth, P3lim",
-	"Haste, Totalpackage, Kryso, Thepilli, Phanx"
-};
-
-local coderList = "";
-
-for _, name in pairs(contributors) do
-	coderList = ("%s\n%s"):format(coderList, name)
-end
-
---[[ DONATION CREDITS ]]--
-
-local donations = {
-	"Movster, Meggalo, Penguinsane, FaolanKing, Doonga",
-	"Cazart506, Moondoggy, Necroo, Chief Pullin, lkj61",
-	"BloodEagle, Egbert, Jerry Ferguson, Hyti, Elton",
-	"James Watson, Lathron, Adam Vargas, Daphne, Dave (Naméra)",
-	"Soulkrusher-Shu-Halo, Talirrine, Gaeline, Malinche, StealthyMangos",
-	"Monger, JoeyMagz",
-	"Other Silent Partners.. (Let me know if I have forgotten you)"
-};
-
-local donorList = "";
-
-for _, name in pairs(donations) do
-	donorList = ("%s\n%s"):format(donorList, name)
-end
-
---[[ TEAM CREDITS ]]--
-
-local teamList = "\n|cff33FF33DOONGA|r - (The man who keeps me busy)\n|cff33FF33PENGUINSANE|r - (The ace up my sleeve)";
-
---[[ TESTER CREDITS ]]--
-
-local testers = {
-	"Sinnisterr - (My wife, the MOST ruthless Warlock you will ever meet!)",
-	"Daigan - (Quality control with NO MERCY!)",
-	"FaolanKing - (King of the bug report portal)",
-};
-
-local testerList = "";
-
-for _, name in pairs(testers) do
-	testerList = ("%s\n%s"):format(testerList, name)
-end
-
---[[ COMMUNITY CREDITS ]]--
-
-local community = {
-	"Movster, Judicate, Cazart506, MuffinMonster, Joelsoul",
-	"Trendkill09, Luamar, Zharooz, Lyn3x5, Madh4tt3r",
-	"Xarioth, AtomicKiller, Meljen, Moondoggy, Stormblade",
-	"Schreibstift, Anj, Risien, Cromax, Nitro_Turtle",
-	"Shinzou, Autolykus, Taotao, ColorsGaming, Necroo",
-	"The Wowinterface Community",
-};
-
-local communityList = "";
-
-for _, name in pairs(community) do
-	communityList = ("%s\n%s"):format(communityList, name)
-end
-
---[[ BUILD STRING ]]--
-
-local creditHeader = "|cffff9900SUPERVILLAIN CREDITS:|r\n|cff4f4f4f---------------------------------------------|r\n|cffff9900CREATED BY:|r  Munglunch\n|cff4f4f4f---------------------------------------------|r\n|cffff9900CODE GRANTS BY:|r  Azilroka, Sortokk, Kkthnx\n|cff4f4f4f---------------------------------------------|r\n|cffff9900SPECIAL THANKS TO:  |r|cfff81422Cairenn|r |cff2288cc(@WowInterface.com)|r  ..the most patient and accomodating person I know!\n\n|cffff9900A VERY SPECIAL THANKS TO:  |r|cffffff00Movster|r  ..who inspired me to bring this project back to life!\n|cff4f4f4f---------------------------------------------|r\n\n";
-
-local creditTeam = ("|cffFFFF00THE HIGH COUNCIL  (aka EXECUTIVES):|r\n%s\n|cff4f4f4f---------------------------------------------|r\n\n"):format(teamList);
-
-local creditCoders = ("|cff3399ffCODE MONKEYS  (aka CONTRIBUTORS):|r\n%s\n|cff4f4f4f---------------------------------------------|r\n\n"):format(coderList);
-
-local creditDonations = ("|cff99ff33KINGPINS  (aka INVESTORS):|r\n%s\n|cff4f4f4f---------------------------------------------|r\n\n"):format(donorList);
-
-local creditTesters = ("|cffaa33ffPERFECTIONISTS  (aka TESTING TEAM):|r\n%s\n|cff4f4f4f---------------------------------------------|r\n\n"):format(testerList);
-
-local creditCommunity = ("|cffaa33ffMINIONS  (aka COMMUNITY TESTERS):|r\n%s\n|cff4f4f4f---------------------------------------------|r\n\n"):format(communityList);
-
-local creditMusic = "|cff00ccffTheme Song By: Fingathing [taken from the song: SuperHero Music]|r";
-
---[[ FINAL CREDITS STRING ]]--
-
-SV.Credits = creditHeader .. creditTeam .. creditDonations .. creditCoders .. creditTesters .. creditCommunity .. creditMusic;
\ No newline at end of file
+SV.Credits = [[
+|cffff9900SUPERVILLAIN CREDITS:|r
+|cff4f4f4f---------------------------------------------|r
+|cffff9900CREATED BY:|r  Munglunch
+|cff4f4f4f---------------------------------------------|r
+|cffff9900CODE GRANTS BY:|r  Azilroka, Sortokk, Kkthnx
+|cff4f4f4f---------------------------------------------|r
+
+|cffff9900SPECIAL THANKS TO:  |r|cfff81422Cairenn|r |cff2288cc(@WowInterface.com)|r  ..the most patient and accomodating person I know!
+
+|cffff9900A VERY SPECIAL THANKS TO:  |r|cffffff00Movster|r  ..who inspired me to bring this project back to life!
+|cff4f4f4f---------------------------------------------|r
+
+|cffFFFF00THE HIGH COUNCIL  (aka EXECUTIVES):|r
+|cff33FF33DOONGA|r - (The man who keeps me busy)
+|cff33FF33PENGUINSANE|r - (The ace up my sleeve)
+|cff4f4f4f---------------------------------------------|r
+
+|cff99ff33KINGPINS  (aka INVESTORS):|r
+Movster, Meggalo, Penguinsane, FaolanKing, Doonga
+Cazart506, Moondoggy, Necroo, Chief Pullin, lkj61
+BloodEagle, Egbert, Jerry Ferguson, Hyti, Elton
+James Watson, Lathron, Adam Vargas, Daphne, Dave (Naméra)
+Soulkrusher-Shu-Halo, Talirrine, Gaeline, Malinche, StealthyMangos
+Monger, JoeyMagz
+Other Silent Partners.. (Let me know if I have forgotten you)
+|cff4f4f4f---------------------------------------------|r
+
+|cff3399ffCODE MONKEYS  (aka CONTRIBUTORS):|r
+Azilroka, Sortokk, Kkthnx, AlleyKat
+Quokka, Duugu, Zork, Haleth, P3lim
+Haste, Totalpackage, Kryso, Thepilli, Phanx
+|cff4f4f4f---------------------------------------------|r
+
+|cffaa33ffPERFECTIONISTS  (aka TESTING TEAM):|r
+Sinnisterr - (My wife, the MOST ruthless Warlock you will ever meet!)
+Daigan - (Quality control with NO MERCY!)
+FaolanKing - (King of the bug report portal)
+|cff4f4f4f---------------------------------------------|r
+
+|cffaa33ffMINIONS  (aka COMMUNITY TESTERS):|r
+Movster, Judicate, Cazart506, MuffinMonster, Joelsoul
+Trendkill09, Luamar, Zharooz, Lyn3x5, Madh4tt3r
+Xarioth, AtomicKiller, Meljen, Moondoggy, Stormblade
+Schreibstift, Anj, Risien, Cromax, Nitro_Turtle
+Shinzou, Autolykus, Taotao, ColorsGaming, Necroo
+The Wowinterface Community
+|cff4f4f4f---------------------------------------------|r
+
+|cff00ccffTheme Song By: Fingathing [taken from the song: SuperHero Music]|r
+]];
\ No newline at end of file
diff --git a/Interface/AddOns/SVUI/system/media.lua b/Interface/AddOns/SVUI/system/media.lua
index 1fc557e..02e73db 100644
--- a/Interface/AddOns/SVUI/system/media.lua
+++ b/Interface/AddOns/SVUI/system/media.lua
@@ -2,13 +2,13 @@
 ##############################################################################
 _____/\\\\\\\\\\\____/\\\________/\\\__/\\\________/\\\__/\\\\\\\\\\\_       #
  ___/\\\/////////\\\_\/\\\_______\/\\\_\/\\\_______\/\\\_\/////\\\///__      #
-  __\//\\\______\///__\//\\\______/\\\__\/\\\_______\/\\\_____\/\\\_____     #
-   ___\////\\\__________\//\\\____/\\\___\/\\\_______\/\\\_____\/\\\_____    #
-    ______\////\\\________\//\\\__/\\\____\/\\\_______\/\\\_____\/\\\_____   #
-     _________\////\\\______\//\\\/\\\_____\/\\\_______\/\\\_____\/\\\_____  #
-      __/\\\______\//\\\______\//\\\\\______\//\\\______/\\\______\/\\\_____ #
-       _\///\\\\\\\\\\\/________\//\\\________\///\\\\\\\\\/____/\\\\\\\\\\\_#
-        ___\///////////___________\///___________\/////////_____\///////////_#
+	__\//\\\______\///__\//\\\______/\\\__\/\\\_______\/\\\_____\/\\\_____     #
+	 ___\////\\\__________\//\\\____/\\\___\/\\\_______\/\\\_____\/\\\_____    #
+		______\////\\\________\//\\\__/\\\____\/\\\_______\/\\\_____\/\\\_____   #
+		 _________\////\\\______\//\\\/\\\_____\/\\\_______\/\\\_____\/\\\_____  #
+			__/\\\______\//\\\______\//\\\\\______\//\\\______/\\\______\/\\\_____ #
+			 _\///\\\\\\\\\\\/________\//\\\________\///\\\\\\\\\/____/\\\\\\\\\\\_#
+				___\///////////___________\///___________\/////////_____\///////////_#
 ##############################################################################
 S U P E R - V I L L A I N - U I   By: Munglunch                              #
 ##############################################################################
@@ -43,6 +43,7 @@ local SV = select(2, ...)
 local SVLib = LibSuperVillain("Registry")
 local L = SV.L
 local LSM = LibStub("LibSharedMedia-3.0")
+local SOUND = SV.Sounds;
 --[[
 ##########################################################
 LOCALIZED GLOBALS
@@ -56,13 +57,16 @@ local DAMAGE_TEXT_FONT    = _G.DAMAGE_TEXT_FONT
 local CUSTOM_CLASS_COLORS   = _G.CUSTOM_CLASS_COLORS
 local RAID_CLASS_COLORS   = _G.RAID_CLASS_COLORS
 local UIDROPDOWNMENU_DEFAULT_TEXT_HEIGHT  = _G.UIDROPDOWNMENU_DEFAULT_TEXT_HEIGHT
+
+local DIALOGUE_FONTNAME = "SVUI Dialog Font";
+if(GetLocale() ~= "enUS") then
+	DIALOGUE_FONTNAME = "SVUI Default Font"
+end
 --[[
 ##########################################################
 DEFINE SOUND EFFECTS
 ##########################################################
 ]]--
-local SOUND = SV.Sounds;
-
 SOUND:Register("Buttons", [[sound\interface\uchatscrollbutton.ogg]])

 SOUND:Register("Levers", [[sound\interface\ui_blizzardstore_buynow.ogg]])
@@ -100,8 +104,6 @@ SOUND:Register("Phase", [[sound\doodad\be_scryingorb_explode.ogg]])
 DEFINE SHARED MEDIA
 ##########################################################
 ]]--
-local LSM = LibStub("LibSharedMedia-3.0")
-
 LSM:Register("background","SVUI Backdrop 1",[[Interface\AddOns\SVUI\assets\artwork\Template\Background\PATTERN1]])
 LSM:Register("background","SVUI Backdrop 2",[[Interface\AddOns\SVUI\assets\artwork\Template\Background\PATTERN2]])
 LSM:Register("background","SVUI Backdrop 3",[[Interface\AddOns\SVUI\assets\artwork\Template\Background\PATTERN3]])
@@ -150,104 +152,190 @@ LSM:Register("font","SVUI Narrator Font",[[Interface\AddOns\SVUI\assets\fonts\Na
 CREATE AND POPULATE MEDIA DATA
 ##########################################################
 ]]--
-
-SV.Media = {}
+SV.Media = {};
+
+SV.defaults["font"] = {
+	["default"]     	= {file = "SVUI Default Font",  size = 12,  outline = "OUTLINE"},
+	["dialog"]      	= {file = DIALOGUE_FONTNAME,    size = 10,  outline = "OUTLINE"},
+	["title"]       	= {file = DIALOGUE_FONTNAME,    size = 16,  outline = "OUTLINE"},
+	["number"]      	= {file = "SVUI Number Font",   size = 11,  outline = "OUTLINE"},
+	["number_big"]    	= {file = "SVUI Number Font",   size = 18,  outline = "OUTLINE"},
+	["header"]      	= {file = "SVUI Number Font",   size = 18,  outline = "OUTLINE"},
+	["combat"]      	= {file = "SVUI Combat Font",   size = 64,  outline = "OUTLINE"},
+	["alert"]       	= {file = "SVUI Alert Font",  	size = 20,  outline = "OUTLINE"},
+	["zone"]      		= {file = "SVUI Zone Font",   	size = 16,  outline = "OUTLINE"},
+	["caps"]      		= {file = "SVUI Caps Font",   	size = 12,  outline = "OUTLINE"},
+	["aura"]      		= {file = "SVUI Number Font",   size = 10,  outline = "OUTLINE"},
+	["data"]      		= {file = "SVUI Number Font",   size = 11,  outline = "OUTLINE"},
+	["narrator"]    	= {file = "SVUI Narrator Font", size = 12,  outline = "OUTLINE"},
+	["pixel"]       	= {file = "SVUI Pixel Font",  	size = 8,   outline = "MONOCHROMEOUTLINE"},
+	["chatdialog"]    	= {file = "SVUI Default Font",  size = 12,  outline = "OUTLINE"},
+	["chattab"]     	= {file = "SVUI Caps Font",   	size = 12,  outline = "OUTLINE"},
+	["lootdialog"]    	= {file = "SVUI Default Font",  size = 14,  outline = "OUTLINE"},
+	["lootnumber"]    	= {file = "SVUI Number Font",   size = 11,  outline = "OUTLINE"},
+	["rolldialog"]    	= {file = "SVUI Default Font",  size = 14,  outline = "OUTLINE"},
+	["rollnumber"]    	= {file = "SVUI Number Font",   size = 11,  outline = "OUTLINE"},
+	["bagdialog"]     	= {file = "SVUI Default Font",  size = 11,  outline = "OUTLINE"},
+	["bagnumber"]     	= {file = "SVUI Number Font",   size = 11,  outline = "OUTLINE"},
+	["tipdialog"]     	= {file = "SVUI Default Font",  size = 12,  outline = "NONE"},
+	["tipheader"]     	= {file = "SVUI Default Font",  size = 14,  outline = "NONE"},
+	["questdialog"]   	= {file = "SVUI Default Font",  size = 12,  outline = "OUTLINE"},
+	["questheader"]   	= {file = "SVUI Caps Font",   	size = 16,  outline = "OUTLINE"},
+	["questnumber"]   	= {file = "SVUI Number Font",   size = 11,  outline = "OUTLINE"},
+	["platename"]     	= {file = "SVUI Caps Font",   	size = 9,   outline = "OUTLINE"},
+	["platenumber"]   	= {file = "SVUI Caps Font",   	size = 9,   outline = "OUTLINE"},
+	["plateaura"]     	= {file = "SVUI Caps Font",   	size = 9,   outline = "OUTLINE"},
+	["unitprimary"]   	= {file = "SVUI Number Font",   size = 11,  outline = "OUTLINE"},
+	["unitsecondary"]   = {file = "SVUI Number Font",   size = 11,  outline = "OUTLINE"},
+	["unitaurabar"]   	= {file = "SVUI Alert Font",  	size = 10,  outline = "OUTLINE"},
+	["unitauramedium"]  = {file = "SVUI Default Font",  size = 10,  outline = "OUTLINE"},
+	["unitauralarge"]   = {file = "SVUI Number Font",   size = 10,  outline = "OUTLINE"},
+	["unitaurasmall"]   = {file = "SVUI Pixel Font",  	size = 8,   outline = "MONOCHROMEOUTLINE"},
+};
+
+SV.defaults["media"] = {
+	["textures"] = {
+		["pattern"]      = "SVUI Backdrop 1",
+		["premium"]      = "SVUI Comic 1",
+		["unitlarge"]    = "SVUI Unit BG 3",
+		["unitsmall"]    = "SVUI Small BG 3"
+	},
+	["colors"] = {
+		["default"]      = {0.2, 0.2, 0.2, 1},
+		["special"]      = {0.37, 0.32, 0.29, 1},
+		["specialdark"]  = {0.37, 0.32, 0.29, 1},
+	},
+	["unitframes"] = {
+		["health"]       = {0.3, 0.5, 0.3},
+		["power"]        = {
+			["MANA"]         = {0.41, 0.85, 1},
+			["RAGE"]         = {1, 0.31, 0.31},
+			["FOCUS"]        = {1, 0.63, 0.27},
+			["ENERGY"]       = {0.85, 0.83, 0.25},
+			["RUNES"]        = {0.55, 0.57, 0.61},
+			["RUNIC_POWER"] = {0, 0.82, 1},
+			["FUEL"]         = {0, 0.75, 0.75}
+		},
+		["reaction"]     = {
+			[1] = {0.92, 0.15, 0.15},
+			[2] = {0.92, 0.15, 0.15},
+			[3] = {0.92, 0.15, 0.15},
+			[4] = {0.85, 0.85, 0.13},
+			[5] = {0.19, 0.85, 0.13},
+			[6] = {0.19, 0.85, 0.13},
+			[7] = {0.19, 0.85, 0.13},
+			[8] = {0.19, 0.85, 0.13},
+		},
+		["tapped"]           = {0.55, 0.57, 0.61},
+		["disconnected"]     = {0.84, 0.75, 0.65},
+		["casting"]          = {0, 0.92, 1},
+		["spark"]            = {0, 0.42, 1},
+		["interrupt"]        = {0.78, 0, 1},
+		["shield_bars"]      = {0.56, 0.4, 0.62},
+		["buff_bars"]        = {0.31, 0.31, 0.31},
+		["debuff_bars"]      = {0.8, 0.1, 0.1},
+		["predict"]          = {
+			["personal"]         = {0, 1, 0.5, 0.25},
+			["others"]           = {0, 1, 0, 0.25},
+			["absorbs"]          = {1, 1, 0, 0.25}
+		}
+	}
+};

 do
-  local myclass = select(2,UnitClass("player"))
-  local cColor1 = CUSTOM_CLASS_COLORS[myclass]
-  local cColor2 = RAID_CLASS_COLORS[myclass]
-  local r1,g1,b1 = cColor1.r,cColor1.g,cColor1.b
-  local r2,g2,b2 = cColor2.r*.25, cColor2.g*.25, cColor2.b*.25
-  local ir1,ig1,ib1 = (1 - r1), (1 - g1), (1 - b1)
-  local ir2,ig2,ib2 = (1 - cColor2.r)*.25, (1 - cColor2.g)*.25, (1 - cColor2.b)*.25
-  local Shared = LSM
-
-  local DIALOGUE_FONT;
-  if(GetLocale() ~= "enUS") then
-    DIALOGUE_FONT = Shared:Fetch("font", "SVUI Default Font")
-  else
-    DIALOGUE_FONT = Shared:Fetch("font", "SVUI Dialog Font")
-  end
-
-  SV.Media["color"] = {
-    ["default"]     = {0.2, 0.2, 0.2, 1},
-    ["special"]     = {.37, .32, .29, 1},
-    ["specialdark"] = {.23, .22, .21, 1},
-    ["unique"]      = {0.32, 0.258, 0.21, 1},
-    ["container"]   = {.28, .27, .26, 1},
-    ["class"]       = {r1, g1, b1, 1},
-    ["bizzaro"]     = {ir1, ig1, ib1, 1},
-    ["medium"]      = {0.47, 0.47, 0.47},
-    ["dark"]        = {0, 0, 0, 1},
-    ["darkest"]     = {0, 0, 0, 1},
-    ["light"]       = {0.95, 0.95, 0.95, 1},
-    ["lightgrey"]   = {0.32, 0.35, 0.38, 1},
-    ["highlight"]   = {0.28, 0.75, 1, 1},
-    ["green"]       = {0.25, 0.9, 0.08, 1},
-    ["blue"]        = {0.08, 0.25, 0.82, 1},
-    ["tan"]         = {0.4, 0.32, 0.23, 1},
-    ["red"]         = {0.9, 0.08, 0.08, 1},
-    ["yellow"]      = {1, 1, 0, 1},
-    ["gold"]        = {1, 0.68, 0.1, 1},
-    ["transparent"] = {0, 0, 0, 0.5},
-    ["hinted"]      = {0, 0, 0, 0.35},
-    ["invisible"]   = {0, 0, 0, 0},
-    ["white"]       = {1, 1, 1, 1},
-  }
-
-  SV.Media["gradient"]  = {
-    ["default"]   = {"VERTICAL", 0.08, 0.08, 0.08, 0.22, 0.22, 0.22},
-    ["special"]   = {"VERTICAL", 0.33, 0.25, 0.13, 0.47, 0.39, 0.27},
-    ["specialdark"] = {"VERTICAL", 0.23, 0.15, 0.03, 0.33, 0.25, 0.13},
-    ["container"] = {"VERTICAL", 0.12, 0.11, 0.1, 0.22, 0.21, 0.2},
-    ["class"]     = {"VERTICAL", r2, g2, b2, r1, g1, b1},
-    ["bizzaro"]   = {"VERTICAL", ir2, ig2, ib2, ir1, ig1, ib1},
-    ["medium"]    = {"VERTICAL", 0.22, 0.22, 0.22, 0.47, 0.47, 0.47},
-    ["dark"]      = {"VERTICAL", 0.02, 0.02, 0.02, 0.22, 0.22, 0.22},
-    ["darkest"]   = {"VERTICAL", 0.15, 0.15, 0.15, 0, 0, 0},
-    ["darkest2"]  = {"VERTICAL", 0, 0, 0, 0.12, 0.12, 0.12},
-    ["light"]     = {"VERTICAL", 0.65, 0.65, 0.65, 0.95, 0.95, 0.95},
-    ["highlight"] = {"VERTICAL", 0.3, 0.8, 1, 0.1, 0.9, 1},
-    ["green"]     = {"VERTICAL", 0.08, 0.9, 0.25, 0.25, 0.9, 0.08},
-    ["red"]       = {"VERTICAL", 0.5, 0, 0, 0.9, 0.08, 0.08},
-    ["yellow"]    = {"VERTICAL", 1, 0.3, 0, 1, 1, 0},
-    ["tan"]       = {"VERTICAL", 0.15, 0.08, 0, 0.37, 0.22, 0.1},
-    ["inverse"]   = {"VERTICAL", 0.25, 0.25, 0.25, 0.12, 0.12, 0.12},
-    ["icon"]      = {"VERTICAL", 0.5, 0.53, 0.55, 0.8, 0.8, 1},
-    ["white"]     = {"VERTICAL", 0.75, 0.75, 0.75, 1, 1, 1},
-  }
-
-  SV.Media["font"] = {
-    ["default"]   = Shared:Fetch("font", "SVUI Default Font"),
-    ["combat"]    = Shared:Fetch("font", "SVUI Combat Font"),
-    ["narrator"]  = Shared:Fetch("font", "SVUI Narrator Font"),
-    ["zones"]     = Shared:Fetch("font", "SVUI Zone Font"),
-    ["alert"]     = Shared:Fetch("font", "SVUI Alert Font"),
-    ["numbers"]   = Shared:Fetch("font", "SVUI Number Font"),
-    ["pixel"]     = Shared:Fetch("font", "SVUI Pixel Font"),
-    ["caps"]      = Shared:Fetch("font", "SVUI Caps Font"),
-    ["flash"]     = Shared:Fetch("font", "SVUI Flash Font"),
-    ["dialog"]    = DIALOGUE_FONT,
-  }
-
-  SV.Media["bar"] = {
-    ["default"]   = Shared:Fetch("statusbar", "SVUI BasicBar"),
-    ["gradient"]  = Shared:Fetch("statusbar", "SVUI MultiColorBar"),
-    ["smooth"]    = Shared:Fetch("statusbar", "SVUI SmoothBar"),
-    ["flat"]      = Shared:Fetch("statusbar", "SVUI PlainBar"),
-    ["textured"]  = Shared:Fetch("statusbar", "SVUI FancyBar"),
-    ["gloss"]     = Shared:Fetch("statusbar", "SVUI GlossBar"),
-    ["glow"]      = Shared:Fetch("statusbar", "SVUI GlowBar"),
-    ["lazer"]     = Shared:Fetch("statusbar", "SVUI LazerBar"),
-  }
-
-  SV.Media["bg"] = {
-    ["pattern"]     = Shared:Fetch("background", "SVUI Backdrop 1"),
-    ["comic"]       = Shared:Fetch("background", "SVUI Comic 1"),
-    ["unitlarge"]   = Shared:Fetch("background", "SVUI Unit BG 3"),
-    ["unitsmall"]   = Shared:Fetch("background", "SVUI Small BG 3")
-  }
+	local myclass = select(2,UnitClass("player"))
+	local cColor1 = CUSTOM_CLASS_COLORS[myclass]
+	local cColor2 = RAID_CLASS_COLORS[myclass]
+	local r1,g1,b1 = cColor1.r,cColor1.g,cColor1.b
+	local r2,g2,b2 = cColor2.r*.25, cColor2.g*.25, cColor2.b*.25
+	local ir1,ig1,ib1 = (1 - r1), (1 - g1), (1 - b1)
+	local ir2,ig2,ib2 = (1 - cColor2.r)*.25, (1 - cColor2.g)*.25, (1 - cColor2.b)*.25
+
+	local DIALOGUE_FONT;
+	if(GetLocale() ~= "enUS") then
+		DIALOGUE_FONT = LSM:Fetch("font", "SVUI Default Font")
+	else
+		DIALOGUE_FONT = LSM:Fetch("font", "SVUI Dialog Font")
+	end
+
+	SV.Media["color"] = {
+		["default"]     = {0.2, 0.2, 0.2, 1},
+		["special"]     = {.37, .32, .29, 1},
+		["specialdark"] = {.23, .22, .21, 1},
+		["unique"]      = {0.32, 0.258, 0.21, 1},
+		["container"]   = {.28, .27, .26, 1},
+		["class"]       = {r1, g1, b1, 1},
+		["bizzaro"]     = {ir1, ig1, ib1, 1},
+		["medium"]      = {0.47, 0.47, 0.47},
+		["dark"]        = {0, 0, 0, 1},
+		["darkest"]     = {0, 0, 0, 1},
+		["light"]       = {0.95, 0.95, 0.95, 1},
+		["lightgrey"]   = {0.32, 0.35, 0.38, 1},
+		["highlight"]   = {0.28, 0.75, 1, 1},
+		["green"]       = {0.25, 0.9, 0.08, 1},
+		["blue"]        = {0.08, 0.25, 0.82, 1},
+		["tan"]         = {0.4, 0.32, 0.23, 1},
+		["red"]         = {0.9, 0.08, 0.08, 1},
+		["yellow"]      = {1, 1, 0, 1},
+		["gold"]        = {1, 0.68, 0.1, 1},
+		["transparent"] = {0, 0, 0, 0.5},
+		["hinted"]      = {0, 0, 0, 0.35},
+		["invisible"]   = {0, 0, 0, 0},
+		["white"]       = {1, 1, 1, 1},
+	}
+
+	SV.Media["gradient"]  = {
+		["default"]   = {"VERTICAL", 0.08, 0.08, 0.08, 0.22, 0.22, 0.22},
+		["special"]   = {"VERTICAL", 0.33, 0.25, 0.13, 0.47, 0.39, 0.27},
+		["specialdark"] = {"VERTICAL", 0.23, 0.15, 0.03, 0.33, 0.25, 0.13},
+		["container"] = {"VERTICAL", 0.12, 0.11, 0.1, 0.22, 0.21, 0.2},
+		["class"]     = {"VERTICAL", r2, g2, b2, r1, g1, b1},
+		["bizzaro"]   = {"VERTICAL", ir2, ig2, ib2, ir1, ig1, ib1},
+		["medium"]    = {"VERTICAL", 0.22, 0.22, 0.22, 0.47, 0.47, 0.47},
+		["dark"]      = {"VERTICAL", 0.02, 0.02, 0.02, 0.22, 0.22, 0.22},
+		["darkest"]   = {"VERTICAL", 0.15, 0.15, 0.15, 0, 0, 0},
+		["darkest2"]  = {"VERTICAL", 0, 0, 0, 0.12, 0.12, 0.12},
+		["light"]     = {"VERTICAL", 0.65, 0.65, 0.65, 0.95, 0.95, 0.95},
+		["highlight"] = {"VERTICAL", 0.3, 0.8, 1, 0.1, 0.9, 1},
+		["green"]     = {"VERTICAL", 0.08, 0.9, 0.25, 0.25, 0.9, 0.08},
+		["red"]       = {"VERTICAL", 0.5, 0, 0, 0.9, 0.08, 0.08},
+		["yellow"]    = {"VERTICAL", 1, 0.3, 0, 1, 1, 0},
+		["tan"]       = {"VERTICAL", 0.15, 0.08, 0, 0.37, 0.22, 0.1},
+		["inverse"]   = {"VERTICAL", 0.25, 0.25, 0.25, 0.12, 0.12, 0.12},
+		["icon"]      = {"VERTICAL", 0.5, 0.53, 0.55, 0.8, 0.8, 1},
+		["white"]     = {"VERTICAL", 0.75, 0.75, 0.75, 1, 1, 1},
+	}
+
+	SV.Media["font"] = {
+		["default"]   = LSM:Fetch("font", "SVUI Default Font"),
+		["combat"]    = LSM:Fetch("font", "SVUI Combat Font"),
+		["narrator"]  = LSM:Fetch("font", "SVUI Narrator Font"),
+		["zones"]     = LSM:Fetch("font", "SVUI Zone Font"),
+		["alert"]     = LSM:Fetch("font", "SVUI Alert Font"),
+		["numbers"]   = LSM:Fetch("font", "SVUI Number Font"),
+		["pixel"]     = LSM:Fetch("font", "SVUI Pixel Font"),
+		["caps"]      = LSM:Fetch("font", "SVUI Caps Font"),
+		["flash"]     = LSM:Fetch("font", "SVUI Flash Font"),
+		["dialog"]    = DIALOGUE_FONT,
+	}
+
+	SV.Media["bar"] = {
+		["default"]   = LSM:Fetch("statusbar", "SVUI BasicBar"),
+		["gradient"]  = LSM:Fetch("statusbar", "SVUI MultiColorBar"),
+		["smooth"]    = LSM:Fetch("statusbar", "SVUI SmoothBar"),
+		["flat"]      = LSM:Fetch("statusbar", "SVUI PlainBar"),
+		["textured"]  = LSM:Fetch("statusbar", "SVUI FancyBar"),
+		["gloss"]     = LSM:Fetch("statusbar", "SVUI GlossBar"),
+		["glow"]      = LSM:Fetch("statusbar", "SVUI GlowBar"),
+		["lazer"]     = LSM:Fetch("statusbar", "SVUI LazerBar"),
+	}
+
+	SV.Media["bg"] = {
+		["pattern"]     = LSM:Fetch("background", "SVUI Backdrop 1"),
+		["premium"]     = LSM:Fetch("background", "SVUI Comic 1"),
+		["unitlarge"]   = LSM:Fetch("background", "SVUI Unit BG 3"),
+		["unitsmall"]   = LSM:Fetch("background", "SVUI Small BG 3")
+	}
 end
 --[[
 ##########################################################
@@ -255,39 +343,39 @@ CORE FUNCTIONS
 ##########################################################
 ]]--
 function SV:ColorGradient(perc, ...)
-    if perc >= 1 then
-        return select(select('#', ...) - 2, ...)
-    elseif perc <= 0 then
-        return ...
-    end
-    local num = select('#', ...) / 3
-    local segment, relperc = modf(perc*(num-1))
-    local r1, g1, b1, r2, g2, b2 = select((segment*3)+1, ...)
-    return r1 + (r2-r1)*relperc, g1 + (g2-g1)*relperc, b1 + (b2-b1)*relperc
-end
+	if perc >= 1 then
+		return select(select('#', ...) - 2, ...)
+	elseif perc <= 0 then
+		return ...
+	end
+	local num = select('#', ...) / 3
+	local segment, relperc = modf(perc*(num-1))
+	local r1, g1, b1, r2, g2, b2 = select((segment*3)+1, ...)
+	return r1 + (r2-r1)*relperc, g1 + (g2-g1)*relperc, b1 + (b2-b1)*relperc
+end

 function SV:HexColor(arg1,arg2,arg3)
-    local r,g,b;
-    if arg1 and type(arg1) == "string" then
-        local t
-        if(self.Media or self.db.media) then
-            t = self.Media.color[arg1] or self.db.media.unitframes[arg1]
-        end
-        if t then
-            r,g,b = t[1],t[2],t[3]
-        else
-            r,g,b = 0,0,0
-        end
-    else
-        r = type(arg1) == "number" and arg1 or 0;
-        g = type(arg2) == "number" and arg2 or 0;
-        b = type(arg3) == "number" and arg3 or 0;
-    end
-    r = (r < 0 or r > 1) and 0 or (r * 255)
-    g = (g < 0 or g > 1) and 0 or (g * 255)
-    b = (b < 0 or b > 1) and 0 or (b * 255)
-    local hexString = ("%02x%02x%02x"):format(r,g,b)
-    return hexString
+	local r,g,b;
+	if arg1 and type(arg1) == "string" then
+		local t
+		if(self.Media or self.db.media) then
+			t = self.Media.color[arg1] or self.db.media.unitframes[arg1]
+		end
+		if t then
+			r,g,b = t[1],t[2],t[3]
+		else
+			r,g,b = 0,0,0
+		end
+	else
+		r = type(arg1) == "number" and arg1 or 0;
+		g = type(arg2) == "number" and arg2 or 0;
+		b = type(arg3) == "number" and arg3 or 0;
+	end
+	r = (r < 0 or r > 1) and 0 or (r * 255)
+	g = (g < 0 or g > 1) and 0 or (g * 255)
+	b = (b < 0 or b > 1) and 0 or (b * 255)
+	local hexString = ("%02x%02x%02x"):format(r,g,b)
+	return hexString
 end
 --[[
 ##########################################################
@@ -295,31 +383,55 @@ ALTERING GLOBAL FONTS
 ##########################################################
 ]]--
 local function UpdateChatFontSizes()
-  _G.CHAT_FONT_HEIGHTS[1] = 8
-  _G.CHAT_FONT_HEIGHTS[2] = 9
-  _G.CHAT_FONT_HEIGHTS[3] = 10
-  _G.CHAT_FONT_HEIGHTS[4] = 11
-  _G.CHAT_FONT_HEIGHTS[5] = 12
-  _G.CHAT_FONT_HEIGHTS[6] = 13
-  _G.CHAT_FONT_HEIGHTS[7] = 14
-  _G.CHAT_FONT_HEIGHTS[8] = 15
-  _G.CHAT_FONT_HEIGHTS[9] = 16
-  _G.CHAT_FONT_HEIGHTS[10] = 17
-  _G.CHAT_FONT_HEIGHTS[11] = 18
-  _G.CHAT_FONT_HEIGHTS[12] = 19
-  _G.CHAT_FONT_HEIGHTS[13] = 20
+	_G.CHAT_FONT_HEIGHTS[1] = 8
+	_G.CHAT_FONT_HEIGHTS[2] = 9
+	_G.CHAT_FONT_HEIGHTS[3] = 10
+	_G.CHAT_FONT_HEIGHTS[4] = 11
+	_G.CHAT_FONT_HEIGHTS[5] = 12
+	_G.CHAT_FONT_HEIGHTS[6] = 13
+	_G.CHAT_FONT_HEIGHTS[7] = 14
+	_G.CHAT_FONT_HEIGHTS[8] = 15
+	_G.CHAT_FONT_HEIGHTS[9] = 16
+	_G.CHAT_FONT_HEIGHTS[10] = 17
+	_G.CHAT_FONT_HEIGHTS[11] = 18
+	_G.CHAT_FONT_HEIGHTS[12] = 19
+	_G.CHAT_FONT_HEIGHTS[13] = 20
 end

 hooksecurefunc("FCF_ResetChatWindows", UpdateChatFontSizes)

+local function UpdateCombatFontSizes()
+	local fontFile = "Interface\\AddOns\\SVUI\\assets\\fonts\\Combat.ttf"
+	_G.DAMAGE_TEXT_FONT = fontFile
+	_G.NUM_COMBAT_TEXT_LINES = 20;
+	_G.COMBAT_TEXT_SCROLLSPEED = 1.0;
+	_G.COMBAT_TEXT_FADEOUT_TIME = 1.0;
+	_G.COMBAT_TEXT_HEIGHT = 18;
+	_G.COMBAT_TEXT_CRIT_MAXHEIGHT = 2.0;
+	_G.COMBAT_TEXT_CRIT_MINHEIGHT = 1.2;
+	_G.COMBAT_TEXT_CRIT_SCALE_TIME = 0.7;
+	_G.COMBAT_TEXT_CRIT_SHRINKTIME = 0.2;
+	_G.COMBAT_TEXT_TO_ANIMATE = {};
+	_G.COMBAT_TEXT_STAGGER_RANGE = 20;
+	_G.COMBAT_TEXT_SPACING = 7;
+	_G.COMBAT_TEXT_MAX_OFFSET = 130;
+	_G.COMBAT_TEXT_LOW_HEALTH_THRESHOLD = 0.2;
+	_G.COMBAT_TEXT_LOW_MANA_THRESHOLD = 0.2;
+	_G.COMBAT_TEXT_LOCATIONS = {};
+
+	local fName, fHeight, fFlags = CombatTextFont:GetFont()
+	CombatTextFont:SetFont(fontFile, fHeight, fFlags)
+end
+
 local function ChangeGlobalFonts()
-  local fontsize = SV.db.font.default.size;
-  STANDARD_TEXT_FONT = LSM:Fetch("font", SV.db.font.default.file);
-  UNIT_NAME_FONT = LSM:Fetch("font", SV.db.font.caps.file);
-  DAMAGE_TEXT_FONT = LSM:Fetch("font", SV.db.font.combat.file);
-  NAMEPLATE_FONT = STANDARD_TEXT_FONT
-  UpdateChatFontSizes()
-  UIDROPDOWNMENU_DEFAULT_TEXT_HEIGHT = fontsize
+	local fontsize = SV.db.font.default.size;
+	STANDARD_TEXT_FONT = LSM:Fetch("font", SV.db.font.default.file);
+	UNIT_NAME_FONT = LSM:Fetch("font", SV.db.font.caps.file);
+	DAMAGE_TEXT_FONT = LSM:Fetch("font", SV.db.font.combat.file);
+	NAMEPLATE_FONT = STANDARD_TEXT_FONT
+	UpdateChatFontSizes()
+	UIDROPDOWNMENU_DEFAULT_TEXT_HEIGHT = fontsize
+	--UpdateCombatFontSizes()
 end
 --[[
 ##########################################################
@@ -329,262 +441,236 @@ FONT TEMPLATING METHODS
 local ManagedFonts = {};

 function SV:FontManager(obj, template, arg, sizeMod, styleOverride, colorR, colorG, colorB)
-    if not obj then return end
-    template = template or "default";
-    local info = self.db.font[template];
-    if(not info) then return end
-
-    local isSystemFont = false;
-    if(arg and (arg == 'SYSTEM')) then
-        isSystemFont = true;
-    end
-
-    local file = LSM:Fetch("font", info.file);
-    local size = info.size;
-    local outline = info.outline;
-
-    if(styleOverride) then
-        obj.___fontOutline = styleOverride;
-        outline = styleOverride;
-    end
-
-    obj.___fontSizeMod = sizeMod or 0;
-    obj:SetFont(file, (size + obj.___fontSizeMod), outline)
-
-    if(not isSystemFont) then
-        if(info.outline and info.outline ~= "NONE") then
-            obj:SetShadowColor(0, 0, 0, 0)
-        else
-            obj:SetShadowColor(0, 0, 0, 0.2)
-        end
-        obj:SetShadowOffset(1, -1)
-        obj:SetJustifyH(arg or "CENTER")
-        obj:SetJustifyV("MIDDLE")
-    end
-
-    if(colorR and colorG and colorB) then
-        obj:SetTextColor(colorR, colorG, colorB);
-    end
-
-    if(not ManagedFonts[template]) then
-        ManagedFonts[template] = {}
-    end
-
-    ManagedFonts[template][obj] = true
+	if not obj then return end
+	template = template or "default";
+	local info = self.db.font[template];
+	if(not info) then return end
+
+	local isSystemFont = false;
+	if(arg and (arg == 'SYSTEM')) then
+		isSystemFont = true;
+	end
+
+	local file = LSM:Fetch("font", info.file);
+	local size = info.size;
+	local outline = info.outline;
+
+	if(styleOverride) then
+		obj.___fontOutline = styleOverride;
+		outline = styleOverride;
+	end
+
+	obj.___fontSizeMod = sizeMod or 0;
+	obj:SetFont(file, (size + obj.___fontSizeMod), outline)
+
+	if(not isSystemFont) then
+		if(info.outline and info.outline ~= "NONE") then
+			obj:SetShadowColor(0, 0, 0, 0)
+		else
+			obj:SetShadowColor(0, 0, 0, 0.2)
+		end
+		obj:SetShadowOffset(1, -1)
+		obj:SetJustifyH(arg or "CENTER")
+		obj:SetJustifyV("MIDDLE")
+	end
+
+	if(colorR and colorG and colorB) then
+		obj:SetTextColor(colorR, colorG, colorB);
+	end
+
+	if(not ManagedFonts[template]) then
+		ManagedFonts[template] = {}
+	end
+
+	ManagedFonts[template][obj] = true
 end

 local function _alterFont(globalName, template, sizeMod, styleOverride, cR, cG, cB)
-  if(not template) then return end
-  if(not _G[globalName]) then return end
-  styleOverride = styleOverride or "NONE"
-  SV:FontManager(_G[globalName], template, "SYSTEM", sizeMod, styleOverride, cR, cG, cB);
+	if(not template) then return end
+	if(not _G[globalName]) then return end
+	styleOverride = styleOverride or "NONE"
+	SV:FontManager(_G[globalName], template, "SYSTEM", sizeMod, styleOverride, cR, cG, cB);
 end

 local function _defineFont(globalName, template)
-  if(not template) then return end
-  if(not _G[globalName]) then return end
-  SV:FontManager(_G[globalName], template);
+	if(not template) then return end
+	if(not _G[globalName]) then return end
+	SV:FontManager(_G[globalName], template);
 end

 local function ChangeSystemFonts()
-  --_alterFont("GameFontNormal", "default", fontsize - 2)
-  _alterFont("GameFontWhite", "default", 0, 'OUTLINE', 1, 1, 1)
-  _alterFont("GameFontWhiteSmall", "default", 0, 'NONE', 1, 1, 1)
-  _alterFont("GameFontBlack", "default", 0, 'NONE', 0, 0, 0)
-  _alterFont("GameFontBlackSmall", "default", -1, 'NONE', 0, 0, 0)
-  _alterFont("GameFontNormalMed2", "default", 2)
-  --_alterFont("GameFontNormalMed1", "default", 0)
-  _alterFont("GameFontNormalLarge", "default")
-  _alterFont("GameFontNormalLargeOutline", "default")
-  _alterFont("GameFontHighlightSmall", "default")
-  _alterFont("GameFontHighlight", "default", 1)
-  _alterFont("GameFontHighlightLeft", "default", 1)
-  _alterFont("GameFontHighlightRight", "default", 1)
-  _alterFont("GameFontHighlightLarge2", "default", 2)
-  _alterFont("SystemFont_Med1", "default")
-  _alterFont("SystemFont_Med3", "default")
-  _alterFont("SystemFont_Outline_Small", "default", 0, "OUTLINE")
-  _alterFont("FriendsFont_Normal", "default")
-  _alterFont("FriendsFont_Small", "default")
-  _alterFont("FriendsFont_Large", "default", 3)
-  _alterFont("FriendsFont_UserText", "default", -1)
-  _alterFont("SystemFont_Small", "default", -1)
-  _alterFont("GameFontNormalSmall", "default", -1)
-  _alterFont("NumberFont_Shadow_Med", "default", -1, "OUTLINE")
-  _alterFont("NumberFont_Shadow_Small", "default", -1, "OUTLINE")
-  _alterFont("SystemFont_Tiny", "default", -1)
-  _alterFont("SystemFont_Shadow_Med1", "default")
-  _alterFont("SystemFont_Shadow_Med1_Outline", "default")
-  _alterFont("SystemFont_Shadow_Med2", "default")
-  _alterFont("SystemFont_Shadow_Med3", "default")
-  _alterFont("SystemFont_Large", "default")
-  _alterFont("SystemFont_Huge1", "default", 4)
-  _alterFont("SystemFont_Huge1_Outline", "default", 4)
-  _alterFont("SystemFont_Shadow_Small", "default")
-  _alterFont("SystemFont_Shadow_Large", "default", 3)
-  _alterFont("QuestFont", "dialog");
-  _alterFont("QuestFont_Enormous", "zone", 15, "OUTLINE");
-  _alterFont("SpellFont_Small", "dialog", 0, "OUTLINE", 1, 1, 1);
-  _alterFont("SystemFont_Shadow_Outline_Large", "title", 0, "OUTLINE");
-  _alterFont("SystemFont_Shadow_Outline_Huge2", "title", 8, "OUTLINE");
-  _alterFont("GameFont_Gigantic", "alert", 0, "OUTLINE", 32)
-  _alterFont("SystemFont_Shadow_Huge1", "alert", 0, "OUTLINE")
-  --_alterFont("SystemFont_OutlineThick_Huge2", "alert", 0, "THICKOUTLINE")
-  _alterFont("SystemFont_Shadow_Huge3", "combat", 0, "OUTLINE")
-  _alterFont("CombatTextFont", "combat", 20, "OUTLINE")
-  _alterFont("SystemFont_OutlineThick_Huge4", "zone", 6, "OUTLINE");
-  _alterFont("SystemFont_OutlineThick_WTF", "zone", 9, "OUTLINE");
-  _alterFont("SystemFont_OutlineThick_WTF2", "zone", 15, "OUTLINE");
-  _alterFont("QuestFont_Large", "zone", -3);
-  _alterFont("QuestFont_Huge", "zone", -2);
-  _alterFont("QuestFont_Super_Huge", "zone");
-  _alterFont("SystemFont_OutlineThick_Huge2", "zone", 2, "OUTLINE");
-  _alterFont("Game18Font", "number", 1)
-  _alterFont("Game24Font", "number", 3)
-  _alterFont("Game27Font", "number", 5)
-  _alterFont("Game30Font", "number_big")
-  _alterFont("Game32Font", "number_big", 1)
-  _alterFont("NumberFont_OutlineThick_Mono_Small", "number", 0, "OUTLINE")
-  _alterFont("NumberFont_Outline_Huge", "number_big", 0, "OUTLINE")
-  _alterFont("NumberFont_Outline_Large", "number", 3, "OUTLINE")
-  _alterFont("NumberFont_Outline_Med", "number", 1, "OUTLINE")
-  _alterFont("NumberFontNormal", "number", 0, "OUTLINE")
-  _alterFont("NumberFont_GameNormal", "number", 0, "OUTLINE")
-  _alterFont("NumberFontNormalRight", "number", 0, "OUTLINE")
-  _alterFont("NumberFontNormalRightRed", "number", 0, "OUTLINE")
-  _alterFont("NumberFontNormalRightYellow", "number", 0, "OUTLINE")
-  _alterFont("GameTooltipHeader", "tipheader")
-  _alterFont("Tooltip_Med", "tipdialog")
-  _alterFont("Tooltip_Small", "tipdialog", -1)
-  --SVUI CUSTOM FONTS
-  _defineFont("SVUI_Font_Default", "default")
-  _defineFont("SVUI_Font_Aura", "aura")
-  _defineFont("SVUI_Font_Number", "number")
-  _defineFont("SVUI_Font_Number_Huge", "number_big")
-  _defineFont("SVUI_Font_Header", "header")
-  _defineFont("SVUI_Font_Data", "data")
-  _defineFont("SVUI_Font_Caps", "caps")
-  _defineFont("SVUI_Font_Narrator", "narrator")
-  _defineFont("SVUI_Font_Pixel", "pixel")
-  _defineFont("SVUI_Font_Quest", "questdialog")
-  _defineFont("SVUI_Font_Quest_Header", "questheader")
-  _defineFont("SVUI_Font_Quest_Number", "questnumber")
-  --_defineFont("SVUI_Font_Chat", "chatdialog", "LEFT")
-  --_defineFont("SVUI_Font_ChatTab", "chattab")
-  _defineFont("SVUI_Font_NamePlate", "platename")
-  _defineFont("SVUI_Font_NamePlate_Aura", "plateaura")
-  _defineFont("SVUI_Font_NamePlate_Number", "platenumber")
-  _defineFont("SVUI_Font_Bag", "bagdialog")
-  _defineFont("SVUI_Font_Bag_Number", "bagnumber")
-  _defineFont("SVUI_Font_Roll", "rolldialog")
-  _defineFont("SVUI_Font_Roll_Number", "rollnumber")
-  _defineFont("SVUI_Font_Loot", "lootdialog")
-  _defineFont("SVUI_Font_Loot_Number", "lootnumber")
-  _defineFont("SVUI_Font_Unit", "unitprimary")
-  _defineFont("SVUI_Font_Unit_Small", "unitsecondary")
-  _defineFont("SVUI_Font_UnitAura", "unitauramedium")
-  _defineFont("SVUI_Font_UnitAura_Bar", "unitaurabar")
-  _defineFont("SVUI_Font_UnitAura_Small", "unitaurasmall")
-  _defineFont("SVUI_Font_UnitAura_Large", "unitauralarge")
+	--_alterFont("GameFontNormal", "default", fontsize - 2)
+	_alterFont("GameFontWhite", "default", 0, 'OUTLINE', 1, 1, 1)
+	_alterFont("GameFontWhiteSmall", "default", 0, 'NONE', 1, 1, 1)
+	_alterFont("GameFontBlack", "default", 0, 'NONE', 0, 0, 0)
+	_alterFont("GameFontBlackSmall", "default", -1, 'NONE', 0, 0, 0)
+	_alterFont("GameFontNormalMed2", "default", 2)
+	--_alterFont("GameFontNormalMed1", "default", 0)
+	_alterFont("GameFontNormalLarge", "default")
+	_alterFont("GameFontNormalLargeOutline", "default")
+	_alterFont("GameFontHighlightSmall", "default")
+	_alterFont("GameFontHighlight", "default", 1)
+	_alterFont("GameFontHighlightLeft", "default", 1)
+	_alterFont("GameFontHighlightRight", "default", 1)
+	_alterFont("GameFontHighlightLarge2", "default", 2)
+	_alterFont("SystemFont_Med1", "default")
+	_alterFont("SystemFont_Med3", "default")
+	_alterFont("SystemFont_Outline_Small", "default", 0, "OUTLINE")
+	_alterFont("FriendsFont_Normal", "default")
+	_alterFont("FriendsFont_Small", "default")
+	_alterFont("FriendsFont_Large", "default", 3)
+	_alterFont("FriendsFont_UserText", "default", -1)
+	_alterFont("SystemFont_Small", "default", -1)
+	_alterFont("GameFontNormalSmall", "default", -1)
+	_alterFont("NumberFont_Shadow_Med", "default", -1, "OUTLINE")
+	_alterFont("NumberFont_Shadow_Small", "default", -1, "OUTLINE")
+	_alterFont("SystemFont_Tiny", "default", -1)
+	_alterFont("SystemFont_Shadow_Med1", "default")
+	_alterFont("SystemFont_Shadow_Med1_Outline", "default")
+	_alterFont("SystemFont_Shadow_Med2", "default")
+	_alterFont("SystemFont_Shadow_Med3", "default")
+	_alterFont("SystemFont_Large", "default")
+	_alterFont("SystemFont_Huge1", "default", 4)
+	_alterFont("SystemFont_Huge1_Outline", "default", 4)
+	_alterFont("SystemFont_Shadow_Small", "default")
+	_alterFont("SystemFont_Shadow_Large", "default", 3)
+	_alterFont("QuestFont", "dialog");
+	_alterFont("QuestFont_Enormous", "zone", 15, "OUTLINE");
+	_alterFont("SpellFont_Small", "dialog", 0, "OUTLINE", 1, 1, 1);
+	_alterFont("SystemFont_Shadow_Outline_Large", "title", 0, "OUTLINE");
+	_alterFont("SystemFont_Shadow_Outline_Huge2", "title", 8, "OUTLINE");
+	_alterFont("GameFont_Gigantic", "alert", 0, "OUTLINE", 32)
+	_alterFont("SystemFont_Shadow_Huge1", "alert", 0, "OUTLINE")
+	--_alterFont("SystemFont_OutlineThick_Huge2", "alert", 0, "THICKOUTLINE")
+	_alterFont("SystemFont_OutlineThick_Huge4", "zone", 6, "OUTLINE");
+	_alterFont("SystemFont_OutlineThick_WTF", "zone", 9, "OUTLINE");
+	_alterFont("SystemFont_OutlineThick_WTF2", "zone", 15, "OUTLINE");
+	_alterFont("QuestFont_Large", "zone", -3);
+	_alterFont("QuestFont_Huge", "zone", -2);
+	_alterFont("QuestFont_Super_Huge", "zone");
+	_alterFont("SystemFont_OutlineThick_Huge2", "zone", 2, "OUTLINE");
+	_alterFont("Game18Font", "number", 1)
+	_alterFont("Game24Font", "number", 3)
+	_alterFont("Game27Font", "number", 5)
+	_alterFont("Game30Font", "number_big")
+	_alterFont("Game32Font", "number_big", 1)
+	_alterFont("NumberFont_OutlineThick_Mono_Small", "number", 0, "OUTLINE")
+	_alterFont("NumberFont_Outline_Huge", "number_big", 0, "OUTLINE")
+	_alterFont("NumberFont_Outline_Large", "number", 3, "OUTLINE")
+	_alterFont("NumberFont_Outline_Med", "number", 1, "OUTLINE")
+	_alterFont("NumberFontNormal", "number", 0, "OUTLINE")
+	_alterFont("NumberFont_GameNormal", "number", 0, "OUTLINE")
+	_alterFont("NumberFontNormalRight", "number", 0, "OUTLINE")
+	_alterFont("NumberFontNormalRightRed", "number", 0, "OUTLINE")
+	_alterFont("NumberFontNormalRightYellow", "number", 0, "OUTLINE")
+	_alterFont("GameTooltipHeader", "tipheader")
+	_alterFont("Tooltip_Med", "tipdialog")
+	_alterFont("Tooltip_Small", "tipdialog", -1)
+	--SVUI CUSTOM FONTS
+	_defineFont("SVUI_Font_Default", "default")
+	_defineFont("SVUI_Font_Aura", "aura")
+	_defineFont("SVUI_Font_Number", "number")
+	_defineFont("SVUI_Font_Number_Huge", "number_big")
+	_defineFont("SVUI_Font_Header", "header")
+	_defineFont("SVUI_Font_Data", "data")
+	_defineFont("SVUI_Font_Caps", "caps")
+	_defineFont("SVUI_Font_Narrator", "narrator")
+	_defineFont("SVUI_Font_Pixel", "pixel")
+	_defineFont("SVUI_Font_Quest", "questdialog")
+	_defineFont("SVUI_Font_Quest_Header", "questheader")
+	_defineFont("SVUI_Font_Quest_Number", "questnumber")
+	--_defineFont("SVUI_Font_Chat", "chatdialog", "LEFT")
+	--_defineFont("SVUI_Font_ChatTab", "chattab")
+	_defineFont("SVUI_Font_NamePlate", "platename")
+	_defineFont("SVUI_Font_NamePlate_Aura", "plateaura")
+	_defineFont("SVUI_Font_NamePlate_Number", "platenumber")
+	_defineFont("SVUI_Font_Bag", "bagdialog")
+	_defineFont("SVUI_Font_Bag_Number", "bagnumber")
+	_defineFont("SVUI_Font_Roll", "rolldialog")
+	_defineFont("SVUI_Font_Roll_Number", "rollnumber")
+	_defineFont("SVUI_Font_Loot", "lootdialog")
+	_defineFont("SVUI_Font_Loot_Number", "lootnumber")
+	_defineFont("SVUI_Font_Unit", "unitprimary")
+	_defineFont("SVUI_Font_Unit_Small", "unitsecondary")
+	_defineFont("SVUI_Font_UnitAura", "unitauramedium")
+	_defineFont("SVUI_Font_UnitAura_Bar", "unitaurabar")
+	_defineFont("SVUI_Font_UnitAura_Small", "unitaurasmall")
+	_defineFont("SVUI_Font_UnitAura_Large", "unitauralarge")
+
+	_alterFont("SystemFont_Shadow_Huge3", "combat", 0, "OUTLINE")
+	_alterFont("CombatTextFont", "combat", 64, "OUTLINE")
 end

 local function UpdateFontTemplate(template)
-    template = template or "default";
-    local info = SV.db.font[template];
-    local file = LSM:Fetch("font", info.file);
-    local size = info.size;
-    local line = info.outline;
-    local list = ManagedFonts[template];
-    --local count = 0;
-    if(not list) then return end
-    for object in pairs(list) do
-        if object then
-            if(object.___fontOutline) then
-                object:SetFont(file, (size + object.___fontSizeMod), object.___fontOutline);
-            else
-                object:SetFont(file, (size + object.___fontSizeMod), line);
-            end
-        else
-            ManagedFonts[template][object] = nil;
-        end
-        --count = count + 1;
-    end
-    --print(template .. " = " .. count)
+	template = template or "default";
+	local info = SV.db.font[template];
+	local file = LSM:Fetch("font", info.file);
+	local size = info.size;
+	local line = info.outline;
+	local list = ManagedFonts[template];
+	--local count = 0;
+	if(not list) then return end
+	for object in pairs(list) do
+		if object then
+			if(object.___fontOutline) then
+				object:SetFont(file, (size + object.___fontSizeMod), object.___fontOutline);
+			else
+				object:SetFont(file, (size + object.___fontSizeMod), line);
+			end
+		else
+			ManagedFonts[template][object] = nil;
+		end
+			--count = count + 1;
+		end
+	--print(template .. " = " .. count)
 end

 local function UpdateAllFontTemplates()
-    for template, _ in pairs(ManagedFonts) do
-        UpdateFontTemplate(template)
-    end
+	for template, _ in pairs(ManagedFonts) do
+		UpdateFontTemplate(template)
+	end
 end

 local function UpdateFontGroup(...)
-    for i = 1, select('#', ...) do
-        local template = select(i, ...)
-        if not template then break end
-        UpdateFontTemplate(template)
-    end
+	for i = 1, select('#', ...) do
+		local template = select(i, ...)
+		if not template then break end
+		UpdateFontTemplate(template)
+	end
 end

 SV.Events:On("SVUI_ALLFONTS_UPDATED", "UpdateAllFontTemplates", UpdateAllFontTemplates);
 SV.Events:On("SVUI_FONTGROUP_UPDATED", "UpdateFontGroup", UpdateFontGroup);
---[[
-##########################################################
-INIT SOME COMBAT FONTS
-##########################################################
-]]--
-do
-  local fontFile = "Interface\\AddOns\\SVUI\\assets\\fonts\\Combat.ttf"
-
-  _G.DAMAGE_TEXT_FONT = fontFile
-  _G.NUM_COMBAT_TEXT_LINES = 20;
-  _G.COMBAT_TEXT_SCROLLSPEED = 1.0;
-  _G.COMBAT_TEXT_FADEOUT_TIME = 1.0;
-  _G.COMBAT_TEXT_HEIGHT = 18;
-  _G.COMBAT_TEXT_CRIT_MAXHEIGHT = 2.0;
-  _G.COMBAT_TEXT_CRIT_MINHEIGHT = 1.2;
-  _G.COMBAT_TEXT_CRIT_SCALE_TIME = 0.7;
-  _G.COMBAT_TEXT_CRIT_SHRINKTIME = 0.2;
-  _G.COMBAT_TEXT_TO_ANIMATE = {};
-  _G.COMBAT_TEXT_STAGGER_RANGE = 20;
-  _G.COMBAT_TEXT_SPACING = 7;
-  _G.COMBAT_TEXT_MAX_OFFSET = 130;
-  _G.COMBAT_TEXT_LOW_HEALTH_THRESHOLD = 0.2;
-  _G.COMBAT_TEXT_LOW_MANA_THRESHOLD = 0.2;
-  _G.COMBAT_TEXT_LOCATIONS = {};
-
-  local fName, fHeight, fFlags = CombatTextFont:GetFont()
-
-  CombatTextFont:SetFont(fontFile, fHeight, fFlags)
-end
+
+--UpdateCombatFontSizes()
 --[[
 ##########################################################
 MEDIA UPDATES
 ##########################################################
 ]]--
 function SV:MediaUpdate()
-  self.Media.color.default      = self.db.media.colors.default
-  self.Media.color.special      = self.db.media.colors.special
-  self.Media.color.specialdark  = self.db.media.colors.specialdark
-  self.Media.bg.pattern         = LSM:Fetch("background", self.db.media.textures.pattern)
-  self.Media.bg.comic           = LSM:Fetch("background", self.db.media.textures.comic)
-  self.Media.bg.unitlarge       = LSM:Fetch("background", self.db.media.textures.unitlarge)
-  self.Media.bg.unitsmall       = LSM:Fetch("background", self.db.media.textures.unitsmall)
-
-  local cColor1 = self.Media.color.special
-  local cColor2 = self.Media.color.default
-  local r1,g1,b1 = cColor1[1], cColor1[2], cColor1[3]
-  local r2,g2,b2 = cColor2[1], cColor2[2], cColor2[3]
-
-  self.Media.gradient.special = {"VERTICAL",r1,g1,b1,r2,g2,b2}
-
-  self.Events:Trigger("SVUI_COLORS_UPDATED");
+	self.Media.color.default      = self.db.media.colors.default
+	self.Media.color.special      = self.db.media.colors.special
+	self.Media.color.specialdark  = self.db.media.colors.specialdark
+	self.Media.bg.pattern         = LSM:Fetch("background", self.db.media.textures.pattern)
+	self.Media.bg.premium           = LSM:Fetch("background", self.db.media.textures.premium)
+	self.Media.bg.unitlarge       = LSM:Fetch("background", self.db.media.textures.unitlarge)
+	self.Media.bg.unitsmall       = LSM:Fetch("background", self.db.media.textures.unitsmall)
+
+	local cColor1 = self.Media.color.special
+	local cColor2 = self.Media.color.default
+	local r1,g1,b1 = cColor1[1], cColor1[2], cColor1[3]
+	local r2,g2,b2 = cColor2[1], cColor2[2], cColor2[3]
+
+	self.Media.gradient.special = {"VERTICAL",r1,g1,b1,r2,g2,b2}
+
+	self.Events:Trigger("SVUI_COLORS_UPDATED");
 end

 function SV:RefreshAllSystemMedia()
-  self:MediaUpdate();
-  ChangeGlobalFonts();
-  ChangeSystemFonts();
-  self.Events:Trigger("SVUI_ALLFONTS_UPDATED");
-  self.MediaInitialized = true;
+	self:MediaUpdate();
+	ChangeGlobalFonts();
+	ChangeSystemFonts();
+	self.Events:Trigger("SVUI_ALLFONTS_UPDATED");
+	self.MediaInitialized = true;
 end
\ No newline at end of file
diff --git a/Interface/AddOns/SVUI/system/screen.lua b/Interface/AddOns/SVUI/system/screen.lua
index 8627747..1df5162 100644
--- a/Interface/AddOns/SVUI/system/screen.lua
+++ b/Interface/AddOns/SVUI/system/screen.lua
@@ -49,80 +49,99 @@ UI SCALING
 ##########################################################
 ]]--
 function SV:UI_SCALE_CHANGED(event)
-    local evalwidth;
-    local gxWidth, gxHeight, gxScale = self.Screen:Update();
-
-    if(gxWidth < 1600) then
-        self.LowRez = true;
-    elseif(gxWidth >= 3840) then
-        self.LowRez = nil
-        if(self.db.general.multiMonitor) then
-            if(gxWidth < 4080) then
-                evalwidth = 1224;
-            elseif(gxWidth < 4320) then
-                evalwidth = 1360;
-            elseif(gxWidth < 4800) then
-                evalwidth = 1440;
-            elseif(gxWidth < 5760) then
-                if(gxHeight == 900) then evalwidth = 1600 else evalwidth = 1680 end
-            elseif(gxWidth < 7680) then
-                evalwidth = 1920;
-            elseif(gxWidth < 9840) then
-                evalwidth = 2560;
-            elseif(gxWidth > 9839) then
-                evalwidth = 3280;
-            end
-        else
-            if(gxWidth < 4080) then
-                evalwidth = 3840;
-            elseif(gxWidth < 4320) then
-                evalwidth = 4080;
-            elseif(gxWidth < 4800) then
-                evalwidth = 4320;
-            elseif(gxWidth < 5040) then
-                evalwidth = 4800;
-            elseif(gxWidth < 5760) then
-                evalwidth = 5040;
-            elseif(gxWidth < 7680) then
-                evalwidth = 5760;
-            elseif(gxWidth < 9840) then
-                evalwidth = 7680;
-            elseif(gxWidth > 9839) then
-                evalwidth = 9840;
+    local gxWidth, gxHeight, gxScale, customScale = self.Screen:Update();
+    local needCalc = true;
+    if(self.db.screen.advanced) then
+        if(self.db.screen.forcedWidth ~= gxWidth) then
+            gxWidth = self.db.screen.forcedWidth
+            needCalc = false;
+        end
+        if(self.db.screen.forcedHeight ~= gxHeight) then
+            gxHeight = self.db.screen.forcedHeight
+            needCalc = false;
+        end
+    end
+    if(needCalc) then
+        if(gxWidth < 1600) then
+            self.LowRez = true;
+        elseif(gxWidth >= 3840) then
+            self.LowRez = nil
+            local evalwidth;
+            if(self.db.screen.multiMonitor) then
+                if(gxWidth < 4080) then
+                    evalwidth = 1224;
+                elseif(gxWidth < 4320) then
+                    evalwidth = 1360;
+                elseif(gxWidth < 4680) then
+                    evalwidth = 1400;
+                elseif(gxWidth < 4800) then
+                    evalwidth = 1440;
+                elseif(gxWidth < 5760) then
+                    if(gxHeight == 900) then evalwidth = 1600 else evalwidth = 1680 end
+                elseif(gxWidth < 7680) then
+                    evalwidth = 1920;
+                elseif(gxWidth < 9840) then
+                    evalwidth = 2560;
+                elseif(gxWidth > 9839) then
+                    evalwidth = 3280;
+                end
+            else
+                if(gxWidth < 4080) then
+                    evalwidth = 3840;
+                elseif(gxWidth < 4320) then
+                    evalwidth = 4080;
+                elseif(gxWidth < 4680) then
+                    evalwidth = 4320;
+                elseif(gxWidth < 4800) then
+                    evalwidth = 4680;
+                elseif(gxWidth < 5040) then
+                    evalwidth = 4800;
+                elseif(gxWidth < 5760) then
+                    evalwidth = 5040;
+                elseif(gxWidth < 7680) then
+                    evalwidth = 5760;
+                elseif(gxWidth < 9840) then
+                    evalwidth = 7680;
+                elseif(gxWidth > 9839) then
+                    evalwidth = 9840;
+                end
             end
+
+            gxWidth = evalwidth;
         end
     end

     local testScale1 = parsefloat(UIParent:GetScale(), 5)
     local testScale2 = parsefloat(gxScale, 5)
-
+    local ignoreChange = false;
     if(event == "PLAYER_LOGIN" and (testScale1 ~= testScale2)) then
         SetCVar("useUiScale", 1)
         SetCVar("uiScale", gxScale)
         WorldMapFrame.hasTaint = true;
+        ignoreChange = true;
     end

     if(event == 'PLAYER_LOGIN' or event == 'UI_SCALE_CHANGED') then
         self.Screen:ClearAllPoints()
         self.Screen:SetPoint("CENTER")

-        if evalwidth then
-            local width = evalwidth
+        if gxWidth then
+            local width = gxWidth
             local height = gxHeight;
-            if(not self.db.general.autoScale or height > 1200) then
+            if(not self.db.screen.autoScale or height > 1200) then
                 height = UIParent:GetHeight();
                 local ratio = gxHeight / height;
-                width = evalwidth / ratio;
+                width = gxWidth / ratio;
             end
             self.Screen:SetSize(width, height);
         else
             self.Screen:SetSize(UIParent:GetSize());
         end

-        if(event == 'UI_SCALE_CHANGED') then
+        if((not customScale) and (not ignoreChange) and (event == 'UI_SCALE_CHANGED')) then
             local change = abs((testScale1 * 100) - (testScale2 * 100))
             if(change > 1) then
-                if(self.db.general.autoScale) then
+                if(self.db.screen.autoScale) then
                     self:StaticPopup_Show('FAILED_UISCALE')
                 else
                     self:StaticPopup_Show('RL_CLIENT')
@@ -143,7 +162,7 @@ function SV.Screen:Update()
     local gxHeight = tonumber(height)
     local gxWidth = tonumber(width)
     local gxMod = (768 / gxHeight)
-
+    local customScale = false;
     if(IsMacClient()) then
         if(not self.MacDisplay) then
             self.MacDisplay = LibSuperVillain("Registry"):NewGlobal("Display");
@@ -163,16 +182,29 @@ function SV.Screen:Update()
     end

     local gxScale;
-    if(SV.db.general.scaleAdjust and type(SV.db.general.scaleAdjust) == "number") then
-        BASE_MOD = SV.db.general.scaleAdjust;
-    end
-    if(SV.db.general.autoScale) then
-        gxScale = max(BASE_MOD, min(1.15, gxMod));
+    if(SV.db.screen.advanced) then
+        BASE_MOD = 0.64
+        local ADJUSTED_SCALE = SV.db.screen.scaleAdjust;
+        if(ADJUSTED_SCALE) then
+            if(type(ADJUSTED_SCALE) ~= "number") then
+                ADJUSTED_SCALE = tonumber(ADJUSTED_SCALE);
+            end
+            if(ADJUSTED_SCALE and ADJUSTED_SCALE ~= BASE_MOD) then
+                BASE_MOD = ADJUSTED_SCALE;
+                customScale = true;
+            end
+        end
+
+        gxScale = BASE_MOD;
     else
-        gxScale = max(BASE_MOD, min(1.15, GetCVar("uiScale") or UIParent:GetScale() or gxMod));
+        if(SV.db.screen.autoScale) then
+            gxScale = max(0.64, min(1.15, gxMod));
+        else
+            gxScale = max(0.64, min(1.15, GetCVar("uiScale") or UIParent:GetScale() or gxMod));
+        end
     end

     SCREEN_MOD = (gxMod / gxScale);

-    return gxWidth, gxHeight, gxScale
+    return gxWidth, gxHeight, gxScale, customScale
 end
\ No newline at end of file
diff --git a/Interface/AddOns/SVUI/system/slash.lua b/Interface/AddOns/SVUI/system/slash.lua
index 6371779..5bc86b5 100644
--- a/Interface/AddOns/SVUI/system/slash.lua
+++ b/Interface/AddOns/SVUI/system/slash.lua
@@ -36,46 +36,16 @@ local floor, modf = math.floor, math.modf;
 local twipe, tsort = table.wipe, table.sort;
 --BLIZZARD API
 local ReloadUI              = _G.ReloadUI;
-local UnitName   			= _G.UnitName;
-local IsInGroup             = _G.IsInGroup;
-local CreateFrame           = _G.CreateFrame;
-local IsInRaid         		= _G.IsInRaid;
-local UnitIsGroupLeader     = _G.UnitIsGroupLeader;
-local GetAddOnInfo          = _G.GetAddOnInfo;
-local UnitIsGroupAssistant  = _G.UnitIsGroupAssistant;
 local EnableAddOn           = _G.EnableAddOn;
 local DisableAddOn          = _G.DisableAddOn;
-local IsEveryoneAssistant   = _G.IsEveryoneAssistant;
+local GetAddOnInfo          = _G.GetAddOnInfo;
 local GetAddOnMetadata      = _G.GetAddOnMetadata;
-local SendChatMessage   	= _G.SendChatMessage;
 local PlaySoundFile   		= _G.PlaySoundFile;

-local LE_PARTY_CATEGORY_HOME = _G.LE_PARTY_CATEGORY_HOME;
-local LE_PARTY_CATEGORY_INSTANCE = _G.LE_PARTY_CATEGORY_INSTANCE;
-
 local SV = select(2, ...)
 local L = SV.L;
 --[[
 ##########################################################
-LOCAL VARS
-##########################################################
-]]--
-local MsgTest = function(warning)
-	if IsInGroup(LE_PARTY_CATEGORY_INSTANCE) then
-		return "INSTANCE_CHAT"
-	elseif IsInRaid(LE_PARTY_CATEGORY_HOME) then
-		if warning and (UnitIsGroupLeader("player") or UnitIsGroupAssistant("player") or IsEveryoneAssistant()) then
-			return "RAID_WARNING"
-		else
-			return "RAID"
-		end
-	elseif IsInGroup(LE_PARTY_CATEGORY_HOME) then
-		return "PARTY"
-	end
-	return "SAY"
-end
---[[
-##########################################################
 LOCAL SLASH FUNCTIONS
 ##########################################################
 ]]--
@@ -124,9 +94,46 @@ local function DisableAddon(addon)
 end
 --[[
 ##########################################################
+LOAD ALL SLASH FUNCTIONS
+##########################################################
+]]--
+_G.SlashCmdList["SVUISV"] = SVUIMasterCommand;
+_G.SLASH_SVUISV1="/sv"
+
+_G.SlashCmdList["SVUISVUI"] = SVUIMasterCommand;
+_G.SLASH_SVUISVUI1="/svui"
+
+_G.SlashCmdList["SVUIENABLE"] = EnableAddon;
+_G.SLASH_SVUIENABLE1="/enable"
+
+_G.SlashCmdList["SVUIDISABLE"] = DisableAddon;
+_G.SLASH_SVUIDISABLE1="/disable"
+
+_G.SlashCmdList["KOMBAT"] = function(msg)
+	SV:ToastyKombat()
+end
+_G.SLASH_KOMBAT1 = "/kombat"
+
+_G.SlashCmdList["LOLWUT"] = function(msg)
+	PlaySoundFile("Sound\\Character\\Human\\HumanVocalFemale\\HumanFemalePissed04.wav")
+end
+_G.SLASH_LOLWUT1 = "/lolwut";
+--[[
+##########################################################
 LEEEEEROY
 ##########################################################
 ]]--
+local UnitName   			= _G.UnitName;
+local IsInGroup             = _G.IsInGroup;
+local CreateFrame           = _G.CreateFrame;
+local IsInRaid         		= _G.IsInRaid;
+local UnitIsGroupLeader     = _G.UnitIsGroupLeader;
+local SendChatMessage   	= _G.SendChatMessage;
+local IsEveryoneAssistant   = _G.IsEveryoneAssistant;
+local UnitIsGroupAssistant  = _G.UnitIsGroupAssistant;
+local LE_PARTY_CATEGORY_HOME = _G.LE_PARTY_CATEGORY_HOME;
+local LE_PARTY_CATEGORY_INSTANCE = _G.LE_PARTY_CATEGORY_INSTANCE;
+
 do
 	local PullCountdown = CreateFrame("Frame", "PullCountdown")
 	local PullCountdownHandler = CreateFrame("Frame")
@@ -140,6 +147,21 @@ do
 		lastupdate = 0
 	end

+	local function setmsg(warning)
+		if IsInGroup(LE_PARTY_CATEGORY_INSTANCE) then
+			return "INSTANCE_CHAT"
+		elseif IsInRaid(LE_PARTY_CATEGORY_HOME) then
+			if warning and (UnitIsGroupLeader("player") or UnitIsGroupAssistant("player") or IsEveryoneAssistant()) then
+				return "RAID_WARNING"
+			else
+				return "RAID"
+			end
+		elseif IsInGroup(LE_PARTY_CATEGORY_HOME) then
+			return "PARTY"
+		end
+		return "SAY"
+	end
+
 	local function pull(self, elapsed)
 		local tname = UnitName("target")
 		if tname then
@@ -148,7 +170,7 @@ do
 			target = ""
 		end
 		if not firstdone then
-			SendChatMessage((L["Pulling %s in %s.."]):format(target, tostring(delay)), MsgTest(true))
+			SendChatMessage((L["Pulling %s in %s.."]):format(target, tostring(delay)), setmsg(true))
 			firstdone = true
 			delay = delay - 1
 		end
@@ -156,10 +178,10 @@ do
 		if lastupdate >= interval then
 			lastupdate = 0
 			if delay > 0 then
-				SendChatMessage(tostring(delay).."..", MsgTest(true))
+				SendChatMessage(tostring(delay).."..", setmsg(true))
 				delay = delay - 1
 			else
-				SendChatMessage(L["Leeeeeroy!"], MsgTest(true))
+				SendChatMessage(L["Leeeeeroy!"], setmsg(true))
 				reset()
 			end
 		end
@@ -169,7 +191,7 @@ do
 		delay = timer or 3
 		if PullCountdownHandler:GetScript("OnUpdate") then
 			reset()
-			SendChatMessage(L["Pull ABORTED!"], MsgTest(true))
+			SendChatMessage(L["Pull ABORTED!"], setmsg(true))
 		else
 			PullCountdownHandler:SetScript("OnUpdate", pull)
 		end
@@ -183,30 +205,4 @@ do
 			PullCountdown.Pull()
 		end
 	end
-end
---[[
-##########################################################
-LOAD ALL SLASH FUNCTIONS
-##########################################################
-]]--
-_G.SlashCmdList["SVUISV"] = SVUIMasterCommand;
-_G.SLASH_SVUISV1="/sv"
-
-_G.SlashCmdList["SVUISVUI"] = SVUIMasterCommand;
-_G.SLASH_SVUISVUI1="/svui"
-
-_G.SlashCmdList["SVUIENABLE"] = EnableAddon;
-_G.SLASH_SVUIENABLE1="/enable"
-
-_G.SlashCmdList["SVUIDISABLE"] = DisableAddon;
-_G.SLASH_SVUIDISABLE1="/disable"
-
-_G.SlashCmdList["KOMBAT"] = function(msg)
-	SV:ToastyKombat()
-end
-_G.SLASH_KOMBAT1 = "/kombat"
-
-_G.SlashCmdList["LOLWUT"] = function(msg)
-	PlaySoundFile("Sound\\Character\\Human\\HumanVocalFemale\\HumanFemalePissed04.wav")
-end
-_G.SLASH_LOLWUT1 = "/lolwut"
\ No newline at end of file
+end
\ No newline at end of file
diff --git a/Interface/AddOns/SVUI/system/utilities.lua b/Interface/AddOns/SVUI/system/utilities.lua
index dd6d5b8..56b0ccc 100644
--- a/Interface/AddOns/SVUI/system/utilities.lua
+++ b/Interface/AddOns/SVUI/system/utilities.lua
@@ -35,11 +35,15 @@ local tonumber      = _G.tonumber;
 local table         = _G.table;
 local string        = _G.string;
 local math          = _G.math;
+local tinsert       = _G.tinsert;
+local tremove       = _G.tremove;
+local twipe         = _G.wipe;
 --[[ STRING METHODS ]]--
 local match, format = string.match, string.format;
 local gmatch, gsub = string.gmatch, string.gsub;
 --[[ MATH METHODS ]]--
 local floor, modf = math.floor, math.modf;
+
 local iLevelFilter = ITEM_LEVEL:gsub( "%%d", "(%%d+)" )
 --[[
 ##########################################################
@@ -50,6 +54,37 @@ local SV = select(2, ...)
 local L = SV.L
 --[[
 ##########################################################
+FRAME VISIBILITY MANAGEMENT
+##########################################################
+]]--
+do
+    local FRAMELIST = {};
+
+    function SV:ManageVisibility(frame)
+        if(not frame) then return end
+        if(frame.GetParent) then
+            FRAMELIST[frame] = frame:GetParent()
+        end
+    end
+
+    function SV:AuditVisibility(hidden)
+        if(hidden) then
+          self.NeedsFrameAudit = true
+          if(InCombatLockdown()) then return end
+          for frame, _ in pairs(FRAMELIST)do
+              frame:SetParent(self.Hidden)
+          end
+        else
+          if(InCombatLockdown()) then return end
+          for frame, parent in pairs(FRAMELIST) do
+              frame:SetParent(parent or UIParent)
+          end
+          self.NeedsFrameAudit = false
+        end
+    end
+end
+--[[
+##########################################################
 MISC UTILITY FUNCTIONS
 ##########################################################
 ]]--
@@ -434,142 +469,6 @@ do
 end
 --[[
 ##########################################################
-CHAT LOG PARSING FUNCTIONS (from LibDeformat  by:ckknight)
-##########################################################
-]]--
-do
-    local FORMAT_SEQUENCES = {
-        ["s"] = ".+",
-        ["c"] = ".",
-        ["%d*d"] = "%%-?%%d+",
-        ["[fg]"] = "%%-?%%d+%%.?%%d*",
-        ["%%%.%d[fg]"] = "%%-?%%d+%%.?%%d*",
-    }
-
-    local STRING_BASED_SEQUENCES = {
-        ["s"] = true,
-        ["c"] = true,
-    }
-
-    local cache = setmetatable({}, {__mode='k'})
-
-    local function _deformat(pattern)
-        local func = cache[pattern]
-        if func then return func end
-        local unpattern = '^' .. pattern:gsub("([%(%)%.%*%+%-%[%]%?%^%$%%])", "%%%1") .. '$'
-        local number_indexes = {}
-        local index_translation = nil
-        local highest_index
-        if not pattern:find("%%1%$") then
-            local i = 0
-            while true do
-                i = i + 1
-                local first_index
-                local first_sequence
-                for sequence in pairs(FORMAT_SEQUENCES) do
-                    local index = unpattern:find("%%%%" .. sequence)
-                    if index and (not first_index or index < first_index) then
-                        first_index = index
-                        first_sequence = sequence
-                    end
-                end
-                if not first_index then
-                    break
-                end
-                unpattern = unpattern:gsub("%%%%" .. first_sequence, "(" .. FORMAT_SEQUENCES[first_sequence] .. ")", 1)
-                number_indexes[i] = not STRING_BASED_SEQUENCES[first_sequence]
-            end
-            highest_index = i - 1
-        else
-            local i = 0
-            while true do
-                i = i + 1
-                local found_sequence
-                for sequence in pairs(FORMAT_SEQUENCES) do
-                    if unpattern:find("%%%%" .. i .. "%%%$" .. sequence) then
-                        found_sequence = sequence
-                        break
-                    end
-                end
-                if not found_sequence then
-                    break
-                end
-                unpattern = unpattern:gsub("%%%%" .. i .. "%%%$" .. found_sequence, "(" .. FORMAT_SEQUENCES[found_sequence] .. ")", 1)
-                number_indexes[i] = not STRING_BASED_SEQUENCES[found_sequence]
-            end
-            highest_index = i - 1
-            i = 0
-            index_translation = {}
-            pattern:gsub("%%(%d)%$", function(w)
-                i = i + 1
-                index_translation[i] = tonumber(w)
-            end)
-        end
-        if highest_index == 0 then
-            cache[pattern] = SV.fubar
-        else
-            local t = {}
-            t[#t+1] = [=[
-                return function(text)
-                    local ]=]
-            for i = 1, highest_index do
-                if i ~= 1 then
-                    t[#t+1] = ", "
-                end
-                t[#t+1] = "a"
-                if not index_translation then
-                    t[#t+1] = i
-                else
-                    t[#t+1] = index_translation[i]
-                end
-            end
-            t[#t+1] = [=[ = text:match(]=]
-            t[#t+1] = ("%q"):format(unpattern)
-            t[#t+1] = [=[)
-                if not a1 then
-                    return ]=]
-            for i = 1, highest_index do
-                if i ~= 1 then
-                    t[#t+1] = ", "
-                end
-                t[#t+1] = "nil"
-            end
-            t[#t+1] = "\n"
-            t[#t+1] = [=[
-                end
-            ]=]
-            t[#t+1] = "return "
-            for i = 1, highest_index do
-                if i ~= 1 then
-                    t[#t+1] = ", "
-                end
-                t[#t+1] = "a"
-                t[#t+1] = i
-                if number_indexes[i] then
-                    t[#t+1] = "+0"
-                end
-            end
-            t[#t+1] = "\n"
-            t[#t+1] = [=[
-                end
-            ]=]
-            t = table.concat(t, "")
-            cache[pattern] = assert(loadstring(t))()
-        end
-        return cache[pattern]
-    end
-
-    function SV:DeFormat(text, pattern)
-        if type(text) ~= "string" then
-            error(("Error: DeFormat text argument %s (%s)."):format(type(text), text), 2)
-        elseif type(pattern) ~= "string" then
-            error(("Error: DeFormat pattern argument %s (%s)."):format(type(pattern), pattern), 2)
-        end
-        return _deformat(pattern)(text)
-    end
-end
---[[
-##########################################################
 TIME UTILITIES
 ##########################################################
 ]]--
@@ -596,32 +495,4 @@ function SV:ParseSeconds(seconds)
     else
         return ("%s%d:%02d:%02d"):format(negative, seconds / SECONDS_PER_HOUR, math.fmod(seconds / 60, 60), math.fmod(seconds, 60))
     end
-end
---[[
-##########################################################
-SIMPLE BUTTON CONSTRUCT
-##########################################################
-]]--
-local Button_OnEnter = function(self, ...)
-    if InCombatLockdown() then return end
-    GameTooltip:SetOwner(self, "ANCHOR_TOPLEFT", 0, 4)
-    GameTooltip:ClearLines()
-    GameTooltip:AddLine(self.TText, 1, 1, 1)
-    GameTooltip:Show()
-end
-
-function SV:CreateButton(frame, label, anchor, x, y, width, height, tooltip)
-    local button = CreateFrame("Button", nil, frame, "UIPanelButtonTemplate")
-    button:SetWidth(width)
-    button:SetHeight(height)
-    button:SetPoint(anchor, x, y)
-    button:SetText(label)
-    button:RegisterForClicks("AnyUp")
-    button:SetHitRectInsets(0, 0, 0, 0);
-    button:SetFrameStrata("FULLSCREEN_DIALOG");
-    button.TText = tooltip
-    button:SetStylePanel("Button")
-    button:SetScript("OnEnter", Button_OnEnter)
-    button:SetScript("OnLeave", GameTooltip_Hide)
-    return button
 end
\ No newline at end of file
diff --git a/Interface/AddOns/SVUI/system/visibility.lua b/Interface/AddOns/SVUI/system/visibility.lua
deleted file mode 100644
index e7e9f4b..0000000
--- a/Interface/AddOns/SVUI/system/visibility.lua
+++ /dev/null
@@ -1,65 +0,0 @@
---[[
-##############################################################################
-_____/\\\\\\\\\\\____/\\\________/\\\__/\\\________/\\\__/\\\\\\\\\\\_       #
- ___/\\\/////////\\\_\/\\\_______\/\\\_\/\\\_______\/\\\_\/////\\\///__      #
-  __\//\\\______\///__\//\\\______/\\\__\/\\\_______\/\\\_____\/\\\_____     #
-   ___\////\\\__________\//\\\____/\\\___\/\\\_______\/\\\_____\/\\\_____    #
-    ______\////\\\________\//\\\__/\\\____\/\\\_______\/\\\_____\/\\\_____   #
-     _________\////\\\______\//\\\/\\\_____\/\\\_______\/\\\_____\/\\\_____  #
-      __/\\\______\//\\\______\//\\\\\______\//\\\______/\\\______\/\\\_____ #
-       _\///\\\\\\\\\\\/________\//\\\________\///\\\\\\\\\/____/\\\\\\\\\\\_#
-        ___\///////////___________\///___________\/////////_____\///////////_#
-##############################################################################
-S U P E R - V I L L A I N - U I   By: Munglunch                              #
-##############################################################################
-##########################################################
-LOCALIZED LUA FUNCTIONS
-##########################################################
-]]--
---[[ GLOBALS ]]--
-local _G = _G;
-local unpack    = _G.unpack;
-local select    = _G.select;
-local pairs     = _G.pairs;
-local tinsert       = _G.tinsert;
-local tremove       = _G.tremove;
-local twipe         = _G.wipe;
---[[
-##########################################################
-GET ADDON DATA
-##########################################################
-]]--
-local SV = select(2, ...)
-local L = SV.L;
---[[
-##########################################################
-LOCALS
-##########################################################
-]]--
-local DisplayFrames = {};
---[[
-##########################################################
-FRAME VISIBILITY MANAGEMENT
-##########################################################
-]]--
-function SV:AddToDisplayAudit(frame)
-    if(frame.GetParent) then
-        DisplayFrames[frame] = frame:GetParent()
-    end
-end
-
-function SV:FlushDisplayAudit()
-    self.NeedsFrameAudit = true
-    if(InCombatLockdown()) then return end
-    for frame, _ in pairs(DisplayFrames)do
-        frame:SetParent(self.Hidden)
-    end
-end
-
-function SV:PushDisplayAudit()
-    if(InCombatLockdown()) then return end
-    for frame, parent in pairs(DisplayFrames) do
-        frame:SetParent(parent or UIParent)
-    end
-    self.NeedsFrameAudit = false
-end
\ No newline at end of file
diff --git a/Interface/AddOns/SVUI_ChatOMatic/components/answering_service.lua b/Interface/AddOns/SVUI_ChatOMatic/components/answering_service.lua
index 5daf398..c6bed98 100644
--- a/Interface/AddOns/SVUI_ChatOMatic/components/answering_service.lua
+++ b/Interface/AddOns/SVUI_ChatOMatic/components/answering_service.lua
@@ -904,7 +904,7 @@ function PLUGIN:EnableAnsweringService()

 	self.Docklet = SV.Dock:NewDocklet("BottomLeft", "SVUI_ChatOMaticDock", "Answering Service", ICON_FILE, AnsweringOnClick)
 	self.Docklet:SetFrameStrata("HIGH")
-	self.Docklet:SetStylePanel("Default")
+	self.Docklet:SetStylePanel("Frame")

 	local title = self.Docklet:CreateFontString("HenchmenOperatorText")
 	title:SetPoint("TOPLEFT", self.Docklet, "TOPLEFT", 0, -2)
@@ -923,7 +923,7 @@ function PLUGIN:EnableAnsweringService()
 		phLn:SetHeight(20)
 		phLn:RegisterForClicks("AnyUp")
 		phLn:SetScript("OnClick", PhoneLineClick)
-		phLn:SetStylePanel("Fixed", "Button")
+		phLn:SetStylePanel("!_Frame", "Button")
 		phLn.Text = phLn:CreateFontString()
 		phLn.Text:SetPoint("TOPLEFT", phLn, "TOPLEFT", 0, 0)
 		phLn.Text:SetPoint("TOPRIGHT", phLn, "TOPRIGHT", 0, 0)
diff --git a/Interface/AddOns/SVUI_ConfigOMatic/SVUI_ConfigOMatic.lua b/Interface/AddOns/SVUI_ConfigOMatic/SVUI_ConfigOMatic.lua
index ed4b032..9a073fc 100644
--- a/Interface/AddOns/SVUI_ConfigOMatic/SVUI_ConfigOMatic.lua
+++ b/Interface/AddOns/SVUI_ConfigOMatic/SVUI_ConfigOMatic.lua
@@ -156,24 +156,8 @@ SV.Options.args.common = {
 							guiInline = true,
 							name = L["Common Stuff"],
 							args = {
-								autoScale = {
-									order = 1,
-									name = L["Auto Scale"],
-									desc = L["Automatically scale the User Interface based on your screen resolution"],
-									type = "toggle",
-									get = function(j)return SV.db.general.autoScale end,
-									set = function(j,value)SV.db.general.autoScale = value; SV:StaticPopup_Show("RL_CLIENT") end
-								},
-								multiMonitor = {
-									order = 2,
-									name = L["Multi Monitor"],
-									desc = L["Adjust UI dimensions to accomodate for multiple monitor setups"],
-									type = "toggle",
-									get = function(j)return SV.db.general.multiMonitor end,
-									set = function(j,value)SV.db.general.multiMonitor = value; SV:StaticPopup_Show("RL_CLIENT") end
-								},
 								saveDraggable = {
-									order = 3,
+									order = 1,
 									name = L["Save Draggable"],
 									desc = L["Save the positions of draggable frames when they are moved. NOTE: THIS WILL OVERRIDE BLIZZARD FRAME SNAPPING!"],
 									type = "toggle",
@@ -181,31 +165,19 @@ SV.Options.args.common = {
 									set = function(j,value)SV.db.general.saveDraggable = value; SV:StaticPopup_Show("RL_CLIENT") end
 								},
 								LoginMessage = {
-									order = 4,
+									order = 2,
 									type = 'toggle',
 									name = L['Login Messages'],
 									get = function(j)return SV.db.general.loginmessage end,
 									set = function(j,value)SV.db.general.loginmessage = value end
 								},
 								questTracker = {
-									order = 5,
+									order = 3,
 									type = 'toggle',
 									name = L['Custom Quest Tracker'],
 									get = function(j) return SV.db.SVQuest.enable end,
 									set = function(j,value) SV.db.SVQuest.enable = value;SV:StaticPopup_Show("RL_CLIENT") end
 								},
-								scaleAdjust = {
-									order = 6,
-									name = L["Base Scale"],
-									desc = L["You can use this to adjust the base value applied to auto-scaling."],
-									type = "range",
-									width = "full",
-									min = 0.5,
-									max = 1,
-									step = 0.01,
-									get = function(j)return SV.db.general.scaleAdjust end,
-									set = function(j,value) SV.db.general.scaleAdjust = value; SV:StaticPopup_Show("RL_CLIENT") end
-								},
 							}
 						},
 						lootGroup = {
diff --git a/Interface/AddOns/SVUI_ConfigOMatic/components/_load.xml b/Interface/AddOns/SVUI_ConfigOMatic/components/_load.xml
index 2a87e07..7d481b6 100644
--- a/Interface/AddOns/SVUI_ConfigOMatic/components/_load.xml
+++ b/Interface/AddOns/SVUI_ConfigOMatic/components/_load.xml
@@ -1,4 +1,5 @@
 <Ui xmlns="http://www.blizzard.com/wow/ui/">
+	<Script file='screen.lua'/>
 	<Script file='fonts.lua'/>
 	<Script file='map.lua'/>
 	<Script file='bar.lua'/>
diff --git a/Interface/AddOns/SVUI_ConfigOMatic/components/bag.lua b/Interface/AddOns/SVUI_ConfigOMatic/components/bag.lua
index 4158cf2..1752f37 100644
--- a/Interface/AddOns/SVUI_ConfigOMatic/components/bag.lua
+++ b/Interface/AddOns/SVUI_ConfigOMatic/components/bag.lua
@@ -142,6 +142,15 @@ SV.Options.args.SVBag = {
 							desc = L["Enable/Disable Prospecting, Disenchanting and Milling buttons on the bag frame."],
 							set = function(a,b)MOD:ChangeDBVar(b,a[#a])SV:StaticPopup_Show("RL_CLIENT")end
 						},
+						ignoreItems = {
+							order = 8,
+							name = L["Ignore Items"],
+							desc = L["List of items to ignore when sorting. If you wish to add multiple items you must seperate the word with a comma."],
+							type = "input",
+							width = "full",
+							multiline = true,
+							set = function(a,b) SV.db.SVBag[a[#a]] = b end
+						}
 					}
 				},
 				position = {
diff --git a/Interface/AddOns/SVUI_ConfigOMatic/components/dock.lua b/Interface/AddOns/SVUI_ConfigOMatic/components/dock.lua
index 2a43c23..03056ef 100644
--- a/Interface/AddOns/SVUI_ConfigOMatic/components/dock.lua
+++ b/Interface/AddOns/SVUI_ConfigOMatic/components/dock.lua
@@ -253,7 +253,9 @@ SV.Options.args.Dock.args["rightDockGroup"] = {
 				CHAT:UpdateLocals()
 				CHAT:RefreshChatFrames(true)
 				BAG.BagFrame:UpdateLayout()
-				BAG.BankFrame:UpdateLayout()
+				if(BAG.BankFrame) then
+					BAG.BankFrame:UpdateLayout()
+				end
 			end,
 		},
 		-- quest = {
@@ -288,26 +290,42 @@ SV.Options.args.Dock.args["rightDockGroup"] = {
 	}
 };

-SV.Options.args.Dock.args["SVUI_DockTopCenter"] = {
+SV.Options.args.Dock.args["SVUI_StatDockTopLeft"] = {
 	order = 5,
 	type = "group",
-	name = L["Top Dock"],
+	name = L["Top Stats: Left"],
 	guiInline = true,
 	args = {}
 };

-SV.Options.args.Dock.args["SVUI_DockBottomCenter"] = {
+SV.Options.args.Dock.args["SVUI_StatDockTopRight"] = {
+	order = 5,
+	type = "group",
+	name = L["Top Stats: Right"],
+	guiInline = true,
+	args = {}
+};
+
+SV.Options.args.Dock.args["SVUI_StatDockBottomLeft"] = {
 	order = 6,
 	type = "group",
-	name = L["Bottom Dock"],
+	name = L["Bottom Stats: Left"],
 	guiInline = true,
 	args = {}
-}
+};
+
+SV.Options.args.Dock.args["SVUI_StatDockBottomRight"] = {
+	order = 6,
+	type = "group",
+	name = L["Bottom Stats: Right"],
+	guiInline = true,
+	args = {}
+};


 do
 	local statValues = {[""] = "None"};
-	local configTable = SV.db.Dock.dataHolders;
+	local configTable = SV.db.Dock.statSlots;

 	for name, _ in pairs(MOD.DataTypes) do
 		statValues[name] = name;
@@ -316,7 +334,6 @@ do
 	for panelName, panelPositions in pairs(configTable) do
 		local optionTable = SV.Options.args.Dock.args;
 		if(not _G[panelName]) then
-			print(panelName)
 			optionTable[panelName] = nil;
 			return
 		end
@@ -328,8 +345,8 @@ do
 					type = 'select',
 					name = 'Slot '..i,
 					values = statValues,
-					get = function(key) return SV.db.Dock.dataHolders[panelName][i] end,
-					set = function(key, value) MOD:ChangeDBVar(value, i, "dataHolders", panelName); MOD:UpdateDataSlots() end
+					get = function(key) return SV.db.Dock.statSlots[panelName][i] end,
+					set = function(key, value) MOD:ChangeDBVar(value, i, "statSlots", panelName); MOD:UpdateDataSlots() end
 				}
 			end
 		end
diff --git a/Interface/AddOns/SVUI_ConfigOMatic/components/fonts.lua b/Interface/AddOns/SVUI_ConfigOMatic/components/fonts.lua
index b591550..d9cf246 100644
--- a/Interface/AddOns/SVUI_ConfigOMatic/components/fonts.lua
+++ b/Interface/AddOns/SVUI_ConfigOMatic/components/fonts.lua
@@ -344,7 +344,7 @@ local function GenerateFontGroup()
 						desc = L["Set the font size to use with this font-type."],
 						type = "range",
 						min = 6,
-						max = 22,
+						max = 64,
 						step = 1,
 					},
 				}
@@ -356,7 +356,7 @@ local function GenerateFontGroup()
 end

 SV.Options.args.fonts = {
-	order = 3,
+	order = 4,
 	type = "group",
 	name = L['Fonts'],
 	childGroups = "tab",
diff --git a/Interface/AddOns/SVUI_ConfigOMatic/components/map.lua b/Interface/AddOns/SVUI_ConfigOMatic/components/map.lua
index 7e3a277..20c6e4e 100644
--- a/Interface/AddOns/SVUI_ConfigOMatic/components/map.lua
+++ b/Interface/AddOns/SVUI_ConfigOMatic/components/map.lua
@@ -180,14 +180,14 @@ SV.Options.args.SVMap = {
 					name = L["Mouse Over"],
 					desc = L["Hidden unless you mouse over the frame."],
 					type = "toggle",
-					set = function(a,b)MOD:ChangeDBVar(b,a[#a],"minimapbar")MOD:UpdateMinimapButtonSettings()end,
+					set = function(a,b) MOD:ChangeDBVar(b,a[#a],"minimapbar") MOD:UpdateMinimapButtonSettings(true) end,
 				},
 				styleType = {
 					order = 3,
 					type = 'select',
 					name = L['Button Bar Layout'],
 					desc = L['Change settings for how the minimap buttons are styled.'],
-					set = function(a,b)MOD:ChangeDBVar(b,a[#a],"minimapbar")MOD:UpdateMinimapButtonSettings()end,
+					set = function(a,b) MOD:ChangeDBVar(b,a[#a],"minimapbar") MOD:UpdateMinimapButtonSettings(true) end,
 					disabled = function()return not SV.db.SVMap.minimapbar.enable end,
 					values = {
 						['NOANCHOR'] = L['No Anchor Bar'],
@@ -204,7 +204,7 @@ SV.Options.args.SVMap = {
 					max = 40,
 					step = 1,
 					width = "full",
-					set = function(a,b)MOD:ChangeDBVar(b,a[#a],"minimapbar")MOD:UpdateMinimapButtonSettings()end,
+					set = function(a,b)MOD:ChangeDBVar(b,a[#a],"minimapbar")MOD:UpdateMinimapButtonSettings(true) end,
 					disabled = function()return not SV.db.SVMap.minimapbar.enable or SV.db.SVMap.minimapbar.styleType == 'NOANCHOR'end
 				},
 			}
diff --git a/Interface/AddOns/SVUI_ConfigOMatic/components/plate.lua b/Interface/AddOns/SVUI_ConfigOMatic/components/plate.lua
index 011b0de..adac9e4 100644
--- a/Interface/AddOns/SVUI_ConfigOMatic/components/plate.lua
+++ b/Interface/AddOns/SVUI_ConfigOMatic/components/plate.lua
@@ -168,21 +168,15 @@ SV.Options.args.SVPlate = {
 							order = 3,
 							name = L["Color Name By Health Value"]
 						},
-						targetcount = {
-							type = "toggle",
-							order = 4,
-							name = L["Target Count"],
-							desc = L["Display the number of party / raid members targetting the nameplate unit."]
-						},
 						showthreat = {
 							type = "toggle",
-							order = 5,
+							order = 4,
 							name = L["Threat Text"],
 							desc = L["Display threat level as text on targeted,	boss or mouseover nameplate."]
 						},
 						nonTargetAlpha = {
 							type = "range",
-							order = 6,
+							order = 5,
 							name = L["Non-Target Alpha"],
 							desc = L["Alpha of nameplates that are not your current target."],
 							min = 0,
diff --git a/Interface/AddOns/SVUI_ConfigOMatic/components/screen.lua b/Interface/AddOns/SVUI_ConfigOMatic/components/screen.lua
new file mode 100644
index 0000000..7acb4aa
--- /dev/null
+++ b/Interface/AddOns/SVUI_ConfigOMatic/components/screen.lua
@@ -0,0 +1,146 @@
+--[[
+##############################################################################
+_____/\\\\\\\\\\\____/\\\________/\\\__/\\\________/\\\__/\\\\\\\\\\\_       #
+ ___/\\\/////////\\\_\/\\\_______\/\\\_\/\\\_______\/\\\_\/////\\\///__      #
+  __\//\\\______\///__\//\\\______/\\\__\/\\\_______\/\\\_____\/\\\_____     #
+   ___\////\\\__________\//\\\____/\\\___\/\\\_______\/\\\_____\/\\\_____    #
+    ______\////\\\________\//\\\__/\\\____\/\\\_______\/\\\_____\/\\\_____   #
+     _________\////\\\______\//\\\/\\\_____\/\\\_______\/\\\_____\/\\\_____  #
+      __/\\\______\//\\\______\//\\\\\______\//\\\______/\\\______\/\\\_____ #
+       _\///\\\\\\\\\\\/________\//\\\________\///\\\\\\\\\/____/\\\\\\\\\\\_#
+        ___\///////////___________\///___________\/////////_____\///////////_#
+##############################################################################
+S U P E R - V I L L A I N - U I   By: Munglunch                              #
+##############################################################################
+##########################################################
+LOCALIZED LUA FUNCTIONS
+##########################################################
+]]--
+--[[ GLOBALS ]]--
+local _G = _G;
+local unpack 	 =  _G.unpack;
+local pairs 	 =  _G.pairs;
+local tinsert 	 =  _G.tinsert;
+local table 	 =  _G.table;
+--[[ TABLE METHODS ]]--
+local tsort = table.sort;
+--[[
+##########################################################
+GET ADDON DATA
+##########################################################
+]]--
+local SV = _G["SVUI"];
+local L = SV.L;
+
+SV.Options.args.Screen = {
+	type = 'group',
+	name = 'Screen',
+	order = 3,
+	get = function(a)return SV.db.screen[a[#a]] end,
+	set = function(a,b) SV.db.screen[a[#a]] = b; end,
+	args = {
+		commonGroup = {
+			order = 1,
+			type = 'group',
+			name = L['Basic Options'],
+			guiInline = true,
+			args = {
+				autoScale = {
+					order = 1,
+					name = L["Auto Scale"],
+					desc = L["Automatically scale the User Interface based on your screen resolution"],
+					type = "toggle",
+					get = function(j)return SV.db.screen.autoScale end,
+					set = function(j,value)
+						SV.db.screen.autoScale = value;
+						if(value) then
+							SV.db.screen.scaleAdjust = 0.64;
+						end
+						SV:StaticPopup_Show("RL_CLIENT")
+					end
+				},
+				multiMonitor = {
+					order = 2,
+					name = L["Multi Monitor"],
+					desc = L["Adjust UI dimensions to accomodate for multiple monitor setups"],
+					type = "toggle",
+					get = function(j)return SV.db.screen.multiMonitor end,
+					set = function(j,value) SV.db.screen.multiMonitor = value; SV:StaticPopup_Show("RL_CLIENT") end
+				},
+			}
+		},
+		advancedGroup = {
+			order = 2,
+			type = 'group',
+			name = L['Advanced Options'],
+			guiInline = true,
+			args = {
+				advanced = {
+					order = 1,
+					name = L["Enable"],
+					desc = L["These settings are for advanced users only!"],
+					type = "toggle",
+					get = function(j)return SV.db.screen.advanced end,
+					set = function(j,value) SV.db.screen.advanced = value; SV:StaticPopup_Show("RL_CLIENT"); end
+				},
+				forcedWidth = {
+					order = 2,
+					name = L["Forced Width"],
+					desc = function() return L["Setting your resolution height here will bypass all evaluated measurements. Current: "] .. SV.db.screen.forcedWidth; end,
+					type = "input",
+					disabled = function() return not SV.db.screen.advanced end,
+					get = function(key) return SV.db.screen.forcedWidth end,
+					set = function(key, value)
+						local w = tonumber(value);
+						if(not w) then
+							SV:AddonMessage(L["Value must be a number"])
+						elseif(w < 800) then
+							SV:AddonMessage(L["Less than 800 is not allowed"])
+						else
+							SV.db.screen.forcedWidth = w;
+							SV:StaticPopup_Show("RL_CLIENT");
+						end
+					end
+				},
+				forcedHeight = {
+					order = 3,
+					name = L["Forced Height"],
+					desc = function() return L["Setting your resolution height here will bypass all evaluated measurements. Current: "] .. SV.db.screen.forcedHeight; end,
+					type = "input",
+					disabled = function() return not SV.db.screen.advanced end,
+					get = function(key) return SV.db.screen.forcedHeight end,
+					set = function(key, value)
+						local h = tonumber(value);
+						if(not h) then
+							SV:AddonMessage(L["Value must be a number"])
+						elseif(h < 600) then
+							SV:AddonMessage(L["Less than 600 is not allowed"])
+						else
+							SV.db.screen.forcedHeight = h;
+							SV:StaticPopup_Show("RL_CLIENT");
+						end
+					end
+				},
+				scaleAdjust = {
+					order = 4,
+					name = L["Base Scale"],
+					desc = L["You can use this to adjust the base value applied to scale calculations."],
+					type = "range",
+					width = 'full',
+					min = 0.25,
+					max = 1,
+					step = 0.01,
+					disabled = function() return not SV.db.screen.advanced end,
+					get = function(j)return SV.db.screen.scaleAdjust end,
+					set = function(j,value)
+						SV.db.screen.scaleAdjust = value;
+						if(value ~= 0.64) then
+							SV.db.screen.autoScale = false;
+						end
+						SV:StaticPopup_Show("RL_CLIENT")
+					end
+				},
+			}
+		},
+	}
+}
\ No newline at end of file
diff --git a/Interface/AddOns/SVUI_ConfigOMatic/components/units/target.lua b/Interface/AddOns/SVUI_ConfigOMatic/components/units/target.lua
index c71d528..0428c00 100644
--- a/Interface/AddOns/SVUI_ConfigOMatic/components/units/target.lua
+++ b/Interface/AddOns/SVUI_ConfigOMatic/components/units/target.lua
@@ -78,21 +78,15 @@ SV.Options.args.SVUnit.args.commonGroup.args.target={
 							name = L["Show Auras"],
 							func = function()local U = SVUI_Target;if U.forceShowAuras then U.forceShowAuras = nil else U.forceShowAuras = true end MOD:SetUnitFrame("target")end
 						},
-						gps = {
-							order = 2,
-							name = "GPS Tracking",
-							desc = "Show an arrow giving the direction and distance to the frames unit.",
-							type = "toggle",
-						},
 						predict = {
-							order = 3,
+							order = 2,
 							name = L["Heal Prediction"],
 							desc = L["Show a incomming heal prediction bar on the unitframe. Also display a slightly different colored bar for incoming overheals."],
 							type = "toggle"
 						},
 						hideonnpc = {
 							type = "toggle",
-							order = 4,
+							order = 3,
 							name = L["Text Toggle On NPC"],
 							desc = L["Power text will be hidden on NPC targets, in addition the name text will be repositioned to the power texts anchor point."],
 							get = function(l)return SV.db.SVUnit["target"]["power"].hideonnpc end,
@@ -100,11 +94,11 @@ SV.Options.args.SVUnit.args.commonGroup.args.target={
 						},
 						threatEnabled = {
 							type = "toggle",
-							order = 5,
+							order = 4,
 							name = L["Show Threat"]
 						},
 						middleClickFocus = {
-							order = 6,
+							order = 5,
 							name = L["Middle Click - Set Focus"],
 							desc = L["Middle clicking the unit frame will cause your focus to match the unit."],
 							type = "toggle",
diff --git a/Interface/AddOns/SVUI_CraftOMatic/SVUI_CraftOMatic.lua b/Interface/AddOns/SVUI_CraftOMatic/SVUI_CraftOMatic.lua
index cbcb131..fea337c 100644
--- a/Interface/AddOns/SVUI_CraftOMatic/SVUI_CraftOMatic.lua
+++ b/Interface/AddOns/SVUI_CraftOMatic/SVUI_CraftOMatic.lua
@@ -129,6 +129,141 @@ local function CheckForDoubleClick()
 end
 --[[
 ##########################################################
+CHAT LOG PARSING FUNCTIONS (from LibDeformat  by:ckknight)
+##########################################################
+]]--
+local ChatDeFormat;
+do
+    local FORMAT_SEQUENCES = {
+        ["s"] = ".+",
+        ["c"] = ".",
+        ["%d*d"] = "%%-?%%d+",
+        ["[fg]"] = "%%-?%%d+%%.?%%d*",
+        ["%%%.%d[fg]"] = "%%-?%%d+%%.?%%d*",
+    }
+
+    local STRING_BASED_SEQUENCES = {
+        ["s"] = true,
+        ["c"] = true,
+    }
+
+    local cache = setmetatable({}, {__mode='k'})
+
+    local function _deformat(pattern)
+        local func = cache[pattern]
+        if func then return func end
+        local unpattern = '^' .. pattern:gsub("([%(%)%.%*%+%-%[%]%?%^%$%%])", "%%%1") .. '$'
+        local number_indexes = {}
+        local index_translation = nil
+        local highest_index
+        if not pattern:find("%%1%$") then
+            local i = 0
+            while true do
+                i = i + 1
+                local first_index
+                local first_sequence
+                for sequence in pairs(FORMAT_SEQUENCES) do
+                    local index = unpattern:find("%%%%" .. sequence)
+                    if index and (not first_index or index < first_index) then
+                        first_index = index
+                        first_sequence = sequence
+                    end
+                end
+                if not first_index then
+                    break
+                end
+                unpattern = unpattern:gsub("%%%%" .. first_sequence, "(" .. FORMAT_SEQUENCES[first_sequence] .. ")", 1)
+                number_indexes[i] = not STRING_BASED_SEQUENCES[first_sequence]
+            end
+            highest_index = i - 1
+        else
+            local i = 0
+            while true do
+                i = i + 1
+                local found_sequence
+                for sequence in pairs(FORMAT_SEQUENCES) do
+                    if unpattern:find("%%%%" .. i .. "%%%$" .. sequence) then
+                        found_sequence = sequence
+                        break
+                    end
+                end
+                if not found_sequence then
+                    break
+                end
+                unpattern = unpattern:gsub("%%%%" .. i .. "%%%$" .. found_sequence, "(" .. FORMAT_SEQUENCES[found_sequence] .. ")", 1)
+                number_indexes[i] = not STRING_BASED_SEQUENCES[found_sequence]
+            end
+            highest_index = i - 1
+            i = 0
+            index_translation = {}
+            pattern:gsub("%%(%d)%$", function(w)
+                i = i + 1
+                index_translation[i] = tonumber(w)
+            end)
+        end
+        if highest_index == 0 then
+            cache[pattern] = SV.fubar
+        else
+            local t = {}
+            t[#t+1] = [=[
+                return function(text)
+                    local ]=]
+            for i = 1, highest_index do
+                if i ~= 1 then
+                    t[#t+1] = ", "
+                end
+                t[#t+1] = "a"
+                if not index_translation then
+                    t[#t+1] = i
+                else
+                    t[#t+1] = index_translation[i]
+                end
+            end
+            t[#t+1] = [=[ = text:match(]=]
+            t[#t+1] = ("%q"):format(unpattern)
+            t[#t+1] = [=[)
+                if not a1 then
+                    return ]=]
+            for i = 1, highest_index do
+                if i ~= 1 then
+                    t[#t+1] = ", "
+                end
+                t[#t+1] = "nil"
+            end
+            t[#t+1] = "\n"
+            t[#t+1] = [=[
+                end
+            ]=]
+            t[#t+1] = "return "
+            for i = 1, highest_index do
+                if i ~= 1 then
+                    t[#t+1] = ", "
+                end
+                t[#t+1] = "a"
+                t[#t+1] = i
+                if number_indexes[i] then
+                    t[#t+1] = "+0"
+                end
+            end
+            t[#t+1] = "\n"
+            t[#t+1] = [=[
+                end
+            ]=]
+            t = table.concat(t, "")
+            cache[pattern] = assert(loadstring(t))()
+        end
+        return cache[pattern]
+    end
+
+    ChatDeFormat = function(text, pattern)
+        if((type(text) == "string") and (type(pattern) == "string")) then
+            return _deformat(pattern)(text)
+        end
+        return false;
+    end
+end
+--[[
+##########################################################
 WORLDFRAME HANDLER
 ##########################################################
 ]]--
@@ -218,15 +353,15 @@ function PLUGIN:ModeLootLoader(mode, msg, info)
 end

 function PLUGIN:CheckForModeLoot(msg)
-  	local item, amt = SV:DeFormat(msg, LOOT_ITEM_CREATED_SELF)
+  	local item, amt = ChatDeFormat(msg, LOOT_ITEM_CREATED_SELF)
 	if not item then
-	  item = SV:DeFormat(msg, LOOT_ITEM_SELF_MULTIPLE)
+	  item = ChatDeFormat(msg, LOOT_ITEM_SELF_MULTIPLE)
 	  	if not item then
-		  item = SV:DeFormat(msg, LOOT_ITEM_SELF)
+		  item = ChatDeFormat(msg, LOOT_ITEM_SELF)
 		  	if not item then
-		      	item = SV:DeFormat(msg, LOOT_ITEM_PUSHED_SELF_MULTIPLE)
+		      	item = ChatDeFormat(msg, LOOT_ITEM_PUSHED_SELF_MULTIPLE)
 		      	if not item then
-		        	item, amt = SV:DeFormat(msg, LOOT_ITEM_PUSHED_SELF)
+		        	item, amt = ChatDeFormat(msg, LOOT_ITEM_PUSHED_SELF)
 		        	--print(item)
 		      	end
 		    end
diff --git a/Interface/AddOns/SVUI_CraftOMatic/components/archaeology.lua b/Interface/AddOns/SVUI_CraftOMatic/components/archaeology.lua
index 39e4f8d..f192096 100644
--- a/Interface/AddOns/SVUI_CraftOMatic/components/archaeology.lua
+++ b/Interface/AddOns/SVUI_CraftOMatic/components/archaeology.lua
@@ -443,7 +443,7 @@ function PLUGIN:LoadArchaeologyMode()
 		local solve = CreateFrame("Button", nil, bar, "SecureHandlerClickTemplate")
 		local yOffset,xOffset = 0,0;

-		bar:SetStylePanel("Default", "Bar")
+		bar:SetStylePanel("Frame", "Bar")
 		bar:SetStatusBarTexture([[Interface\AddOns\SVUI\assets\artwork\Template\DEFAULT]])
 		bar:SetSize(BAR_WIDTH,BAR_HEIGHT)
 		if(i > 10) then
diff --git a/Interface/AddOns/SVUI_CraftOMatic/components/farming.lua b/Interface/AddOns/SVUI_CraftOMatic/components/farming.lua
index 8742eb7..3f4c67d 100644
--- a/Interface/AddOns/SVUI_CraftOMatic/components/farming.lua
+++ b/Interface/AddOns/SVUI_CraftOMatic/components/farming.lua
@@ -271,7 +271,7 @@ do
 	local function CreateFarmingButton(index, owner, buttonName, buttonType, name, texture, allowDrop, showCount)
 		local BUTTONSIZE = owner.ButtonSize;
 		local button = CreateFrame("Button", ("FarmingButton"..buttonName.."%d"):format(index), owner, "SecureActionButtonTemplate")
-		button:SetStylePanel("Fixed", "Transparent")
+		button:SetStylePanel("!_Frame", "Transparent")
 		button.Panel:SetFrameLevel(0)
 		button:SetNormalTexture(nil)
 		button:SetSizeToScale(BUTTONSIZE, BUTTONSIZE)
@@ -555,7 +555,7 @@ function PLUGIN:PrepareFarmingTools()
 		slotSlider:SetPoint("BOTTOMLEFT", farmingDocklet, -28, 0);
 		slotSlider:SetBackdrop({bgFile = bgTex, edgeFile = bdTex, edgeSize = 4, insets = {left = 3, right = 3, top = 3, bottom = 3}});
 		slotSlider:SetFrameLevel(6)
-		slotSlider:SetStylePanel("Fixed", "Transparent", true);
+		slotSlider:SetStylePanel("!_Frame", "Transparent", true);
 		slotSlider:SetThumbTexture("Interface\\Buttons\\UI-ScrollBar-Knob");
 		slotSlider:SetOrientation("VERTICAL");
 		slotSlider:SetValueStep(5);
diff --git a/Interface/AddOns/SVUI_FightOMatic/SVUI_FightOMatic.lua b/Interface/AddOns/SVUI_FightOMatic/SVUI_FightOMatic.lua
index 93ec42c..d2e64c5 100644
--- a/Interface/AddOns/SVUI_FightOMatic/SVUI_FightOMatic.lua
+++ b/Interface/AddOns/SVUI_FightOMatic/SVUI_FightOMatic.lua
@@ -766,7 +766,7 @@ local function MakeCommWindow()
 		local poi = CreateFrame("Frame", poiName, frame)
 		poi:SetSize((DOCK_WIDTH - 2), sectionHeight)
 		poi:SetPoint("TOP", frame, "TOP", 0, -yOffset)
-		poi:SetStylePanel("Default", "Transparent")
+		poi:SetStylePanel("Frame", "Transparent")

 		local safe = CreateFrame("Button", nil, poi)
 		safe:SetSize(sectionWidth, sectionHeight)
@@ -851,25 +851,20 @@ local function MakeInfoWindow()
 	leftColumn:SetSizeToScale(DATA_WIDTH, DATA_HEIGHT)
 	leftColumn:SetPointToScale("LEFT", frame, "LEFT", 0, 0)
 	leftColumn.lockedOpen = true
-	SV.Dock:NewDataHolder(leftColumn, 3, "ANCHOR_CURSOR", nil, "Transparent", true)
+	SV.Dock:NewDataHolder(leftColumn, 3, "ANCHOR_CURSOR", 1, "Transparent", true)
 	leftColumn:SetFrameLevel(0)

 	local rightColumn = CreateFrame("Frame", "SVUI_FightOMaticInfoRight", frame)
 	rightColumn:SetSizeToScale(DATA_WIDTH, DATA_HEIGHT)
 	rightColumn:SetPointToScale("LEFT", leftColumn, "RIGHT", 2, 0)
 	rightColumn.lockedOpen = true
-	SV.Dock:NewDataHolder(rightColumn, 3, "ANCHOR_CURSOR", nil, "Transparent", true)
+	SV.Dock:NewDataHolder(rightColumn, 3, "ANCHOR_CURSOR", 2, "Transparent", true)
 	rightColumn:SetFrameLevel(0)

 	PLUGIN.INFO = frame

 	_G["SVUI_FightOMaticTool4"].Window = PLUGIN.INFO

-	SV.Dock.BGPanels = {
-		["SVUI_FightOMaticInfoLeft"] = {top = "Honor", middle = "Kills", bottom = "Assists"},
-		["SVUI_FightOMaticInfoRight"] = {top = "Damage", middle = "Healing", bottom = "Deaths"}
-	}
-
 	SV.Dock:UpdateDataSlots()

 	PLUGIN.INFO:Hide()
diff --git a/Interface/AddOns/SVUI_StyleOMatic/SVUI_StyleOMatic.lua b/Interface/AddOns/SVUI_StyleOMatic/SVUI_StyleOMatic.lua
index 7990cf3..0367398 100644
--- a/Interface/AddOns/SVUI_StyleOMatic/SVUI_StyleOMatic.lua
+++ b/Interface/AddOns/SVUI_StyleOMatic/SVUI_StyleOMatic.lua
@@ -490,7 +490,7 @@ local function DockFadeInDocklet()
 		PLUGIN.Docklet.Dock2:Show()
 	end
 end
-SV.Events:On("DOCKS_FADE_IN", "DockFadeInDocklet", DockFadeInDocklet);
+SV.Events:On("DOCK_RIGHT_FADE_IN", "DockFadeInDocklet", DockFadeInDocklet);

 local function DockFadeOutDocklet()
 	local active = PLUGIN.Docklet.DockButton:GetAttribute("isActive")
@@ -499,7 +499,7 @@ local function DockFadeOutDocklet()
 		PLUGIN.Docklet.Dock2:Hide()
 	end
 end
-SV.Events:On("DOCKS_FADE_OUT", "DockFadeOutDocklet", DockFadeOutDocklet);
+SV.Events:On("DOCK_RIGHT_FADE_OUT", "DockFadeOutDocklet", DockFadeOutDocklet);
 --[[
 ##########################################################
 BUILD FUNCTION
@@ -513,7 +513,7 @@ function PLUGIN:Load()
 	self.cache.Docks = self.cache.Docks or {"None", "None"}

 	local alert = CreateFrame('Frame', nil, UIParent);
-	alert:SetStylePanel("Fixed", 'Transparent');
+	alert:SetStylePanel("!_Frame", 'Transparent');
 	alert:SetSize(250, 70);
 	alert:SetPoint('CENTER', UIParent, 'CENTER');
 	alert:SetFrameStrata('DIALOG');
diff --git a/Interface/AddOns/SVUI_StyleOMatic/components/addons/Ace3.lua b/Interface/AddOns/SVUI_StyleOMatic/components/addons/Ace3.lua
index 24dbdf1..0718932 100644
--- a/Interface/AddOns/SVUI_StyleOMatic/components/addons/Ace3.lua
+++ b/Interface/AddOns/SVUI_StyleOMatic/components/addons/Ace3.lua
@@ -111,7 +111,7 @@ local function StyleAceGUI(event, addon)
 		if(widgetType == "MultiLineEditBox") then
 			local widgetFrame = widget.frame;
 			PLUGIN:ApplyFixedFrameStyle(widgetFrame, "Default", true)
-			PLUGIN:ApplyFrameStyle(widget.scrollBG, "Headline", true)
+			PLUGIN:ApplyFrameStyle(widget.scrollBG, "Lite", true)
 			Widget_ButtonStyle(widget.button)
 			PLUGIN:ApplyScrollFrameStyle(widget.scrollBar)
 			widget.scrollBar:SetPoint("RIGHT", widgetFrame, "RIGHT", -4)
@@ -242,7 +242,7 @@ local function StyleAceGUI(event, addon)
 					return newButton
 				end
 			elseif(not widgetParent.Panel) then
-				PLUGIN:ApplyFrameStyle(widgetParent, "Headline", false, true)
+				PLUGIN:ApplyFrameStyle(widgetParent, "Lite", false, true)
 			end

 			if(widgetType == "TabGroup") then
diff --git a/Interface/AddOns/SVUI_StyleOMatic/components/addons/AdiBags.lua b/Interface/AddOns/SVUI_StyleOMatic/components/addons/AdiBags.lua
index 2679161..0620767 100644
--- a/Interface/AddOns/SVUI_StyleOMatic/components/addons/AdiBags.lua
+++ b/Interface/AddOns/SVUI_StyleOMatic/components/addons/AdiBags.lua
@@ -45,8 +45,8 @@ local function StyleAdiBags(event)

 	local function SkinFrame(frame)
 		local region = frame.HeaderRightRegion
-		frame:SetStylePanel("Default", 'Transparent')
-		_G[frame:GetName()..'Bags']:SetStylePanel("Default", "Default")
+		frame:SetStylePanel("Frame", 'Transparent')
+		_G[frame:GetName()..'Bags']:SetStylePanel("Frame", "Default")
 		for i = 1, 3 do
 			region.widgets[i].widget:SetStylePanel("Button")
 		end
diff --git a/Interface/AddOns/SVUI_StyleOMatic/components/addons/Altoholic.lua b/Interface/AddOns/SVUI_StyleOMatic/components/addons/Altoholic.lua
index c3da9c7..464b633 100644
--- a/Interface/AddOns/SVUI_StyleOMatic/components/addons/Altoholic.lua
+++ b/Interface/AddOns/SVUI_StyleOMatic/components/addons/Altoholic.lua
@@ -55,7 +55,7 @@ local function StyleAltoholic(event, addon)

 		AltoholicFramePortrait:Die()

-		PLUGIN:ApplyFrameStyle(AltoholicFrame, "Action", false, true)
+		PLUGIN:ApplyFrameStyle(AltoholicFrame, "Composite2", false, true)
 		PLUGIN:ApplyFrameStyle(AltoMsgBox)
 		PLUGIN:ApplyButtonStyle(AltoMsgBoxYesButton)
 		PLUGIN:ApplyButtonStyle(AltoMsgBoxNoButton)
diff --git a/Interface/AddOns/SVUI_StyleOMatic/components/addons/AtlasLoot.lua b/Interface/AddOns/SVUI_StyleOMatic/components/addons/AtlasLoot.lua
index 12e2eed..58259de 100644
--- a/Interface/AddOns/SVUI_StyleOMatic/components/addons/AtlasLoot.lua
+++ b/Interface/AddOns/SVUI_StyleOMatic/components/addons/AtlasLoot.lua
@@ -141,7 +141,7 @@ local function StyleAtlasLoot(event, addon)
 	for _, button in pairs(buttons) do _G[button]:SetStylePanel("Button")end

 	-- Manipulate the main frames
-	PLUGIN:ApplyFrameStyle(_G["AtlasLootDefaultFrame"], "Action");
+	PLUGIN:ApplyFrameStyle(_G["AtlasLootDefaultFrame"], "Composite2");
 	PLUGIN:ApplyFixedFrameStyle(_G["AtlasLootItemsFrame"], "Inset");
 	PLUGIN:ApplyFrameStyle(_G["AtlasLootPanel"], "Default");
 	hooksecurefunc(_G["AtlasLootPanel"], "SetPoint", _hook_ALPanel);
diff --git a/Interface/AddOns/SVUI_StyleOMatic/components/addons/AuctionLite.lua b/Interface/AddOns/SVUI_StyleOMatic/components/addons/AuctionLite.lua
index 3f0c6e4..29bfcae 100644
--- a/Interface/AddOns/SVUI_StyleOMatic/components/addons/AuctionLite.lua
+++ b/Interface/AddOns/SVUI_StyleOMatic/components/addons/AuctionLite.lua
@@ -40,7 +40,7 @@ AUCTIONLITE
 ]]--
 local function BGHelper(parent)
   parent.bg = CreateFrame("Frame", nil, parent)
-  parent.bg:SetStylePanel("Fixed", "Inset")
+  parent.bg:SetStylePanel("!_Frame", "Inset")
   parent.bg:SetPointToScale("TOPLEFT", parent, "TOPLEFT", 16, -103)
   parent.bg:SetPointToScale("BOTTOMRIGHT", AuctionFrame, "BOTTOMRIGHT", -8, 36)
   parent.bg:SetFrameLevel(parent.bg:GetFrameLevel() - 1)
diff --git a/Interface/AddOns/SVUI_StyleOMatic/components/addons/BigWigs.lua b/Interface/AddOns/SVUI_StyleOMatic/components/addons/BigWigs.lua
index 0a93ce2..7a93fad 100644
--- a/Interface/AddOns/SVUI_StyleOMatic/components/addons/BigWigs.lua
+++ b/Interface/AddOns/SVUI_StyleOMatic/components/addons/BigWigs.lua
@@ -80,7 +80,7 @@ local function applystyle(bar)
 	else
 		bg = CreateFrame("Frame")
 	end
-	bg:SetStylePanel("Fixed", 'Transparent', true)
+	bg:SetStylePanel("!_Frame", 'Transparent', true)
 	bg:SetParent(bar)
 	bg:SetAllPointsOut(bar)
 	bg:SetFrameLevel(bar:GetFrameLevel() - 1)
@@ -95,7 +95,7 @@ local function applystyle(bar)
 			ibg = CreateFrame("Frame")
 		end
 		ibg:SetParent(bar)
-		ibg:SetStylePanel("Fixed", 'Transparent', true)
+		ibg:SetStylePanel("!_Frame", 'Transparent', true)
 		ibg:SetBackdropColor(0, 0, 0, 0)
 		ibg:SetAllPointsOut(bar.candyBarIconFrame)
 		ibg:SetFrameLevel(bar:GetFrameLevel() - 1)
diff --git a/Interface/AddOns/SVUI_StyleOMatic/components/addons/Bugsack.lua b/Interface/AddOns/SVUI_StyleOMatic/components/addons/Bugsack.lua
index 04a9e8d..07abd99 100644
--- a/Interface/AddOns/SVUI_StyleOMatic/components/addons/Bugsack.lua
+++ b/Interface/AddOns/SVUI_StyleOMatic/components/addons/Bugsack.lua
@@ -43,7 +43,7 @@ local function StyleBugSack(event, addon)
 	hooksecurefunc(BugSack, "OpenSack", function()
 		if BugSackFrame.Panel then return end
 		BugSackFrame:RemoveTextures()
-		BugSackFrame:SetStylePanel("Default", 'Transparent')
+		BugSackFrame:SetStylePanel("Frame", 'Transparent')
 		PLUGIN:ApplyTabStyle(BugSackTabAll)
 		BugSackTabAll:SetPoint("TOPLEFT", BugSackFrame, "BOTTOMLEFT", 0, 1)
 		PLUGIN:ApplyTabStyle(BugSackTabSession)
diff --git a/Interface/AddOns/SVUI_StyleOMatic/components/addons/Cooline.lua b/Interface/AddOns/SVUI_StyleOMatic/components/addons/Cooline.lua
index 3184111..d437806 100644
--- a/Interface/AddOns/SVUI_StyleOMatic/components/addons/Cooline.lua
+++ b/Interface/AddOns/SVUI_StyleOMatic/components/addons/Cooline.lua
@@ -46,7 +46,7 @@ local function StyleCoolLine()
 	CoolLine.updatelook()
 	PLUGIN:ApplyFrameStyle(CoolLine,"Transparent")
 	CoolLine.Panel:SetAllPoints(CoolLine)
-	SV:AddToDisplayAudit(CoolLine)
+	SV:ManageVisibility(CoolLine)

 	if PLUGIN:IsAddonReady("DockletCoolLine") then
 		if not CoolLineDB.vertical then
diff --git a/Interface/AddOns/SVUI_StyleOMatic/components/addons/DBM.lua b/Interface/AddOns/SVUI_StyleOMatic/components/addons/DBM.lua
index 6af3314..c5e52f4 100644
--- a/Interface/AddOns/SVUI_StyleOMatic/components/addons/DBM.lua
+++ b/Interface/AddOns/SVUI_StyleOMatic/components/addons/DBM.lua
@@ -55,7 +55,7 @@ local function StyleBars(self)
 				if not icon1.overlay then
 					icon1.overlay = CreateFrame('Frame', '$parentIcon1Overlay', tbar)
 					icon1.overlay:SetSizeToScale(28)
-					icon1.overlay:SetStylePanel("Default", "Button")
+					icon1.overlay:SetStylePanel("Frame", "Button")
 					icon1.overlay:SetFrameLevel(0)
 					icon1.overlay:SetPointToScale('BOTTOMRIGHT', frame, 'BOTTOMLEFT', -4, 0)
 				end
@@ -63,7 +63,7 @@ local function StyleBars(self)
 				if not icon2.overlay then
 					icon2.overlay = CreateFrame('Frame', '$parentIcon2Overlay', tbar)
 					icon2.overlay:SetSizeToScale(28)
-					icon2.overlay:SetStylePanel("Default", "Button")
+					icon2.overlay:SetStylePanel("Frame", "Button")
 					icon2.overlay:SetFrameLevel(0)
 					icon2.overlay:SetPointToScale('BOTTOMLEFT', frame, 'BOTTOMRIGHT', 4, 0)
 				end
@@ -100,7 +100,7 @@ local function StyleBars(self)
 				tbar:SetWidth(sharedWidth)
 				tbar:SetHeight(10)
 				tbar:SetPointToScale('BOTTOMLEFT', frame, 'BOTTOMLEFT', 0, 0)
-				tbar:SetStylePanel("Default", "Bar")
+				tbar:SetStylePanel("Frame", "Bar")

 				name:ClearAllPoints()
 				name:SetHeight(8)
@@ -175,7 +175,7 @@ local StyleBoss = function()
 				bar:SetPointToScale('TOPLEFT', prev, 'TOPLEFT', 0, -(22 + 4))
 			end
 		end
-		bar:SetStylePanel("Fixed", 'Transparent')
+		bar:SetStylePanel("!_Frame", 'Transparent')
 		background:SetNormalTexture(nil)
 		progress:SetStatusBarTexture([[Interface\AddOns\SVUI\assets\artwork\Template\DEFAULT]])
 		progress:ClearAllPoints()
@@ -210,15 +210,15 @@ local function StyleDBM(event, addon)
 	if((not RangeSet) and DBMRangeCheck and (not DBM_SavedOptions['DontShowRangeFrame'])) then
 		DBM.RangeCheck:Show()
 		DBM.RangeCheck:Hide()
-		DBMRangeCheck:HookScript('OnShow', function(self) self:SetStylePanel("Fixed", 'Transparent') end)
-		DBMRangeCheckRadar:SetStylePanel("Fixed", 'Transparent')
+		DBMRangeCheck:HookScript('OnShow', function(self) self:SetStylePanel("!_Frame", 'Transparent') end)
+		DBMRangeCheckRadar:SetStylePanel("!_Frame", 'Transparent')
 		RangeSet = true
 	end

 	if((not InfoSet) and DBMInfoFrame and (not DBM_SavedOptions['DontShowInfoFrame'])) then
 		DBM.InfoFrame:Show(5, 'test')
 		DBM.InfoFrame:Hide()
-		DBMInfoFrame:HookScript('OnShow', function(self) self:SetStylePanel("Fixed", 'Transparent') end)
+		DBMInfoFrame:HookScript('OnShow', function(self) self:SetStylePanel("!_Frame", 'Transparent') end)
 		InfoSet = true
 	end

diff --git a/Interface/AddOns/SVUI_StyleOMatic/components/addons/DXE.lua b/Interface/AddOns/SVUI_StyleOMatic/components/addons/DXE.lua
index 11de4bb..5a8dadf 100644
--- a/Interface/AddOns/SVUI_StyleOMatic/components/addons/DXE.lua
+++ b/Interface/AddOns/SVUI_StyleOMatic/components/addons/DXE.lua
@@ -42,14 +42,14 @@ DXE
 ##########################################################
 ]]--
 local function StyleDXEBar(bar)
-	bar:SetStylePanel("Fixed", "Transparent")
+	bar:SetStylePanel("!_Frame", "Transparent")
 	bar.bg:SetTexture(0,0,0,0)
 	bar.border.Show = SV.fubar
 	bar.border:Hide()
 	bar.statusbar:SetStatusBarTexture([[Interface\AddOns\SVUI\assets\artwork\Template\DEFAULT]])
 	bar.statusbar:ClearAllPoints()
 	bar.statusbar:SetAllPointsIn()
-	bar.righticon:SetStylePanel("Fixed", "Default")
+	bar.righticon:SetStylePanel("!_Frame", "Default")
 	bar.righticon.border.Show = SV.fubar
 	bar.righticon.border:Hide()
 	bar.righticon:ClearAllPoints()
@@ -58,7 +58,7 @@ local function StyleDXEBar(bar)
 	bar.righticon.t:ClearAllPoints()
 	bar.righticon.t:SetAllPointsIn()
 	bar.righticon.t:SetDrawLayer("ARTWORK")
-	bar.lefticon:SetStylePanel("Fixed", "Default")
+	bar.lefticon:SetStylePanel("!_Frame", "Default")
 	bar.lefticon.border.Show = SV.fubar
 	bar.lefticon.border:Hide()
 	bar.lefticon:ClearAllPoints()
@@ -96,7 +96,7 @@ local function StyleDXE()
 		DXE:LayoutHealthWatchers_()
 		for i,hw in ipairs(frame.HW) do
 			if hw:IsShown() then
-				hw:SetStylePanel("Fixed", "Transparent")
+				hw:SetStylePanel("!_Frame", "Transparent")
 				hw.border.Show = SV.fubar
 				hw.border:Hide()
 				hw.healthbar:SetStatusBarTexture([[Interface\AddOns\SVUI\assets\artwork\Template\DEFAULT]])
diff --git a/Interface/AddOns/SVUI_StyleOMatic/components/addons/MasterPlan.lua b/Interface/AddOns/SVUI_StyleOMatic/components/addons/MasterPlan.lua
index 28189f4..c19355c 100644
--- a/Interface/AddOns/SVUI_StyleOMatic/components/addons/MasterPlan.lua
+++ b/Interface/AddOns/SVUI_StyleOMatic/components/addons/MasterPlan.lua
@@ -64,7 +64,7 @@ local GarrMission_Rewards = function(self)
   if(frame and (not frame.Panel)) then
     local size = frame:GetHeight() - 6
     frame:RemoveTextures()
-    frame:SetStylePanel("Default", 'Icon', true, 2)
+    frame:SetStylePanel("Frame", 'Icon', true, 2)
     hooksecurefunc(frame, "SetPoint", StyleRewardIcon)
   end
 end
diff --git a/Interface/AddOns/SVUI_StyleOMatic/components/addons/Omen.lua b/Interface/AddOns/SVUI_StyleOMatic/components/addons/Omen.lua
index 356672c..0830834 100644
--- a/Interface/AddOns/SVUI_StyleOMatic/components/addons/Omen.lua
+++ b/Interface/AddOns/SVUI_StyleOMatic/components/addons/Omen.lua
@@ -70,7 +70,7 @@ local function StyleOmen()
     if(not PLUGIN:ValidateDocklet("Omen")) then
       PLUGIN:ApplyFrameStyle(self.BarList, 'Transparent')
       self.Title:RemoveTextures()
-      self.Title:SetStylePanel("Default", "Default")
+      self.Title:SetStylePanel("Frame", "Default")
       self.Title:SetPanelColor("class")
     end
     self.BarList:SetPoint('TOPLEFT', self.Title, 'BOTTOMLEFT', 0, 1)
@@ -122,11 +122,11 @@ function PLUGIN:Docklet_Omen(parent)
   Omen:OnProfileChanged(nil,db)
   OmenTitle:RemoveTextures()
   OmenTitle.Panel = nil
-  OmenTitle:SetStylePanel("Default", "Transparent")
+  OmenTitle:SetStylePanel("Frame", "Transparent")
   --OmenTitle:SetPanelColor("class")
   --OmenTitle:GetFontString():SetFont(SVUI.Media.font.default, 12, "OUTLINE")
   OmenBarList:RemoveTextures()
-  OmenAnchor:SetStylePanel("Fixed", 'Transparent')
+  OmenAnchor:SetStylePanel("!_Frame", 'Transparent')
   OmenAnchor:ClearAllPoints()
   OmenAnchor:SetAllPoints(parent)
   OmenAnchor:SetParent(parent)
diff --git a/Interface/AddOns/SVUI_StyleOMatic/components/addons/Recount.lua b/Interface/AddOns/SVUI_StyleOMatic/components/addons/Recount.lua
index 36bda5e..f52e712 100644
--- a/Interface/AddOns/SVUI_StyleOMatic/components/addons/Recount.lua
+++ b/Interface/AddOns/SVUI_StyleOMatic/components/addons/Recount.lua
@@ -60,7 +60,7 @@ local function StyleFrame(frame)
   frame:SetBackdrop(nil)

   frame.TitleBackground = CreateFrame('Frame', nil, frame)
-  frame.TitleBackground:SetStylePanel("Fixed", "Transparent")
+  frame.TitleBackground:SetStylePanel("!_Frame", "Transparent")
   --frame.TitleBackground:SetPanelColor("class")
   frame.TitleBackground:SetPoint('TOP', frame, 'TOP', 0, -8)
   frame.TitleBackground.timeLapse = 0
diff --git a/Interface/AddOns/SVUI_StyleOMatic/components/addons/SexyCooldown.lua b/Interface/AddOns/SVUI_StyleOMatic/components/addons/SexyCooldown.lua
index 482e550..7f088c9 100644
--- a/Interface/AddOns/SVUI_StyleOMatic/components/addons/SexyCooldown.lua
+++ b/Interface/AddOns/SVUI_StyleOMatic/components/addons/SexyCooldown.lua
@@ -56,7 +56,7 @@ end
 local function StyleSexyCooldownBar(bar)
 	SCDStripStyleSettings(bar)
 	PLUGIN:ApplyFrameStyle(bar)
-	SV:AddToDisplayAudit(bar)
+	SV:ManageVisibility(bar)
 	if PLUGIN:IsAddonReady("DockletSexyCooldown") then
 		bar:ClearAllPoints()
 		bar:SetPointToScale('BOTTOMRIGHT', SVUI_ActionBar1, 'TOPRIGHT', 0, 2)
@@ -76,7 +76,7 @@ local function StyleSexyCooldownIcon(bar, icon)
 end

 local function StyleSexyCooldownBackdrop(bar)
-	bar:SetStylePanel("Fixed", "Transparent")
+	bar:SetStylePanel("!_Frame", "Transparent")
 end

 local function HookSCDBar(bar)
diff --git a/Interface/AddOns/SVUI_StyleOMatic/components/addons/Skada.lua b/Interface/AddOns/SVUI_StyleOMatic/components/addons/Skada.lua
index c56d408..b764828 100644
--- a/Interface/AddOns/SVUI_StyleOMatic/components/addons/Skada.lua
+++ b/Interface/AddOns/SVUI_StyleOMatic/components/addons/Skada.lua
@@ -54,7 +54,7 @@ local function skada_panel_loader(dock, window)
   local bgroup = window.bargroup.backdrop;
   if bgroup then
     bgroup:Show()
-    bgroup:SetStylePanel("Fixed", 'Transparent', true)
+    bgroup:SetStylePanel("!_Frame", 'Transparent', true)
   end

   dock.FrameLink = window;
@@ -113,7 +113,7 @@ local function StyleSkada()
       panelAnchor = skada.button
       skada.button:SetHeightToScale(22)
       skada.button:RemoveTextures()
-      skada.button:SetStylePanel("Default", "Transparent")
+      skada.button:SetStylePanel("Frame", "Transparent")
       --skada.button:SetPanelColor("class")
       local titleFont = skada.button:GetFontString()
       titleFont:SetFont(SVUI.Media.font.dialog, 13, "NONE")
@@ -121,7 +121,7 @@ local function StyleSkada()
       titleFont:SetShadowOffset(1, -1)
     end

-    skada:SetStylePanel("Default", "Transparent")
+    skada:SetStylePanel("Frame", "Transparent")
     skada.Panel:ClearAllPoints()
     skada.Panel:SetPoint('TOPLEFT', panelAnchor, 'TOPLEFT', -3, 3)
     skada.Panel:SetPoint('BOTTOMRIGHT', skada, 'BOTTOMRIGHT', 3, -3)
diff --git a/Interface/AddOns/SVUI_StyleOMatic/components/addons/TradeSkillDW.lua b/Interface/AddOns/SVUI_StyleOMatic/components/addons/TradeSkillDW.lua
index f4dc862..d62bc49 100644
--- a/Interface/AddOns/SVUI_StyleOMatic/components/addons/TradeSkillDW.lua
+++ b/Interface/AddOns/SVUI_StyleOMatic/components/addons/TradeSkillDW.lua
@@ -41,7 +41,7 @@ TSDW
 local function StyleTradeSkillDW()
 	assert(TradeSkillDW_QueueFrame, "AddOn Not Loaded")

-	TradeSkillFrame:SetStylePanel("Default", "Action")
+	TradeSkillFrame:SetStylePanel("Frame", "Composite2")
 	TradeSkillListScrollFrame:RemoveTextures(true)
 	TradeSkillDetailScrollFrame:RemoveTextures(true)
 	TradeSkillFrameInset:RemoveTextures(true)
@@ -64,7 +64,7 @@ local function StyleTradeSkillDW()
 	end)

 	TradeSkillFrame:SetHeightToScale(TradeSkillFrame:GetHeight() + 12)
-	TradeSkillRankFrame:SetStylePanel("Default", 'Transparent')
+	TradeSkillRankFrame:SetStylePanel("Frame", 'Transparent')
 	TradeSkillRankFrame:SetStatusBarTexture(SV.Media.bar.default)
 	TradeSkillCreateButton:SetStylePanel("Button")
 	TradeSkillCancelButton:SetStylePanel("Button")
diff --git a/Interface/AddOns/SVUI_StyleOMatic/components/addons/VEM.lua b/Interface/AddOns/SVUI_StyleOMatic/components/addons/VEM.lua
index 4ae363e..7f13089 100644
--- a/Interface/AddOns/SVUI_StyleOMatic/components/addons/VEM.lua
+++ b/Interface/AddOns/SVUI_StyleOMatic/components/addons/VEM.lua
@@ -56,14 +56,14 @@ local function StyleBars(self)

 				if not icon1.overlay then
 					icon1.overlay = CreateFrame('Frame', '$parentIcon1Overlay', tbar)
-					icon1.overlay:SetStylePanel("Fixed")
+					icon1.overlay:SetStylePanel("!_Frame")
 					icon1.overlay:SetFrameLevel(0)
 					icon1.overlay:SetSizeToScale(22)
 					icon1.overlay:SetPointToScale('BOTTOMRIGHT', frame, 'BOTTOMLEFT', -2, 0)
 				end
 				if not icon2.overlay then
 					icon2.overlay = CreateFrame('Frame', '$parentIcon2Overlay', tbar)
-					icon2.overlay:SetStylePanel("Fixed")
+					icon2.overlay:SetStylePanel("!_Frame")
 					icon2.overlay:SetFrameLevel(0)
 					icon2.overlay:SetSizeToScale(22)
 					icon2.overlay:SetPointToScale('BOTTOMLEFT', frame, 'BOTTOMRIGHT', 2, 0)
@@ -99,7 +99,7 @@ local function StyleBars(self)
 				texture:SetTexture([[Interface\AddOns\SVUI\assets\artwork\Template\DEFAULT]])
 				tbar:SetAllPointsIn(frame)

-				frame:SetStylePanel("Fixed")
+				frame:SetStylePanel("!_Frame")

 				name:ClearAllPoints()
 				name:SetWidth(165)
@@ -174,7 +174,7 @@ local StyleBoss = function()
 				bar:SetPointToScale('TOPLEFT', prev, 'TOPLEFT', 0, -26)
 			end
 		end
-		bar:SetStylePanel("Fixed", 'Transparent')
+		bar:SetStylePanel("!_Frame", 'Transparent')
 		background:SetNormalTexture(nil)
 		progress:SetStatusBarTexture([[Interface\AddOns\SVUI\assets\artwork\Template\DEFAULT]])
 		progress:ClearAllPoints()
@@ -198,7 +198,7 @@ end

 local _hook_OnShow = function(self)
 	if(not self.Panel) then
-		self:SetStylePanel("Fixed", 'Transparent')
+		self:SetStylePanel("!_Frame", 'Transparent')
 	end
 end

@@ -215,7 +215,7 @@ local function StyleVEM(event, addon)
 			VEM.RangeCheck:Show()
 			VEM.RangeCheck:Hide()
 			VEMRangeCheck:HookScript('OnShow', _hook_OnShow)
-			VEMRangeCheckRadar:SetStylePanel("Fixed", 'Transparent')
+			VEMRangeCheckRadar:SetStylePanel("!_Frame", 'Transparent')
 		end

 		if not VEM_SavedOptions['DontShowInfoFrame'] then
diff --git a/Interface/AddOns/SVUI_StyleOMatic/components/addons/Zygor.lua b/Interface/AddOns/SVUI_StyleOMatic/components/addons/Zygor.lua
index 2663033..71f7ec5 100644
--- a/Interface/AddOns/SVUI_StyleOMatic/components/addons/Zygor.lua
+++ b/Interface/AddOns/SVUI_StyleOMatic/components/addons/Zygor.lua
@@ -53,7 +53,7 @@ local function StyleZygorTabs()
 			texture:SetTexCoord(0.16, 0.86, 0.16, 0.86)
 		end
 	end
-	ZGVCharacterGearFinderButton:SetStylePanel("Default", "Default", true, 2)
+	ZGVCharacterGearFinderButton:SetStylePanel("Frame", "Default", true, 2)
 	ZGVCharacterGearFinderButton.Panel:SetPointToScale("TOPLEFT", 2, -3)
 	ZGVCharacterGearFinderButton.Panel:SetPointToScale("BOTTOMRIGHT", 0, -2)
 end
diff --git a/Interface/AddOns/SVUI_StyleOMatic/components/addons/alDamageMeter.lua b/Interface/AddOns/SVUI_StyleOMatic/components/addons/alDamageMeter.lua
index 0445449..fcf859d 100644
--- a/Interface/AddOns/SVUI_StyleOMatic/components/addons/alDamageMeter.lua
+++ b/Interface/AddOns/SVUI_StyleOMatic/components/addons/alDamageMeter.lua
@@ -59,7 +59,7 @@ function PLUGIN:Docklet_alDamageMeter(parent)
   dmconf.width=parentFrame:GetWidth()
   alDamageMeterFrame:ClearAllPoints()
   alDamageMeterFrame:SetAllPoints(parent)
-  alDamageMeterFrame.backdrop:SetStylePanel("Fixed", 'Transparent',true)
+  alDamageMeterFrame.backdrop:SetStylePanel("!_Frame", 'Transparent',true)
   alDamageMeterFrame.bg:Die()
   alDamageMeterFrame:SetFrameStrata('LOW')

diff --git a/Interface/AddOns/SVUI_StyleOMatic/components/atlas/garrison.lua b/Interface/AddOns/SVUI_StyleOMatic/components/atlas/garrison.lua
index 5f835a0..2c88d7a 100644
--- a/Interface/AddOns/SVUI_StyleOMatic/components/atlas/garrison.lua
+++ b/Interface/AddOns/SVUI_StyleOMatic/components/atlas/garrison.lua
@@ -49,7 +49,7 @@ SV:SetAtlasFunc("GarrMission_PortraitsFromLevel", GarrMission_PortraitsFromLevel
 local GarrMission_MaterialFrame = function(self)
   local frame = self:GetParent()
   frame:RemoveTextures()
-  frame:SetStylePanel("Default", "Inset", true, 1, -5, -7)
+  frame:SetStylePanel("Frame", "Inset", true, 1, -5, -7)
 end
 SV:SetAtlasFunc("GarrMission_MaterialFrame", GarrMission_MaterialFrame)

diff --git a/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/achievement.lua b/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/achievement.lua
index 014086e..fc11618 100644
--- a/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/achievement.lua
+++ b/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/achievement.lua
@@ -110,7 +110,7 @@ local _hook_AchievementsUpdate = function()
 				icontex:SetAllPointsIn()
 			end
 			if(icon and not icon.Panel) then
-				icon:SetStylePanel("Fixed", "Slot")
+				icon:SetStylePanel("!_Frame", "Slot")
 				icon:SetHeightToScale(icon:GetHeight() - 14)
 				icon:SetWidthToScale(icon:GetWidth() - 14)
 				icon:ClearAllPoints()
@@ -130,7 +130,7 @@ local function BarStyleHelper(bar)
 	bar:RemoveTextures()
 	bar:SetStatusBarTexture(SV.Media.bar.default)
 	bar:SetStatusBarColor(4/255, 179/255, 30/255)
-	bar:SetStylePanel("Default", "Default")
+	bar:SetStylePanel("Frame", "Default")
 	if _G[bar:GetName().."Title"]then
 		_G[bar:GetName().."Title"]:SetPoint("LEFT", 4, 0)
 	end
@@ -176,13 +176,13 @@ local function AchievementStyle()
 	PLUGIN:ApplyWindowStyle(AchievementFrame)

 	AchievementFrameSummaryAchievements:RemoveTextures(true)
-	AchievementFrameSummaryAchievements:SetStylePanel("Default", 'Inset')
+	AchievementFrameSummaryAchievements:SetStylePanel("Frame", 'Inset')
 	AchievementFrameHeaderTitle:ClearAllPoints()
 	AchievementFrameHeaderTitle:SetPointToScale("TOPLEFT", AchievementFrame.Panel, "TOPLEFT", -30, -8)
 	AchievementFrameHeaderPoints:ClearAllPoints()
 	AchievementFrameHeaderPoints:SetPointToScale("LEFT", AchievementFrameHeaderTitle, "RIGHT", 2, 0)
-	AchievementFrameCategoriesContainer:SetStylePanel("Default", "Inset", true, 2, -2, 2)
-	AchievementFrameAchievementsContainer:SetStylePanel("Default", "Default")
+	AchievementFrameCategoriesContainer:SetStylePanel("Frame", "Inset", true, 2, -2, 2)
+	AchievementFrameAchievementsContainer:SetStylePanel("Frame", "Default")
 	AchievementFrameAchievementsContainer.Panel:SetPointToScale("TOPLEFT", 0, 2)
 	AchievementFrameAchievementsContainer.Panel:SetPointToScale("BOTTOMRIGHT", -3, -3)
 	PLUGIN:ApplyCloseButtonStyle(AchievementFrameCloseButton, AchievementFrame.Panel)
@@ -292,7 +292,7 @@ local function AchievementStyle()
 					tex:SetAllPointsIn()
 				end

-				icon:SetStylePanel("Fixed", "Default")
+				icon:SetStylePanel("!_Frame", "Default")
 				icon:SetHeightToScale(icon:GetHeight()-14)
 				icon:SetWidthToScale(icon:GetWidth()-14)
 				icon:ClearAllPoints()
@@ -347,7 +347,7 @@ local function AchievementStyle()

 			_G[d.."IconBling"]:Die()
 			_G[d.."IconOverlay"]:Die()
-			_G[d.."Icon"]:SetStylePanel("Fixed", "Default")
+			_G[d.."Icon"]:SetStylePanel("!_Frame", "Default")
 			_G[d.."Icon"]:SetHeightToScale(_G[d.."Icon"]:GetHeight()-14)
 			_G[d.."Icon"]:SetWidthToScale(_G[d.."Icon"]:GetWidth()-14)
 			_G[d.."Icon"]:ClearAllPoints()
@@ -386,7 +386,7 @@ local function AchievementStyle()
 		_G["AchievementFrameStatsContainerButton"..f.."HeaderMiddle"]:Die()
 		local d = "AchievementFrameComparisonStatsContainerButton"..f;
 		_G[d]:RemoveTextures()
-		_G[d]:SetStylePanel("Default", "Default")
+		_G[d]:SetStylePanel("Frame", "Default")
 		_G[d.."BG"]:SetTexture(1, 1, 1, 0.2)
 		_G[d.."HeaderLeft"]:Die()
 		_G[d.."HeaderRight"]:Die()
diff --git a/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/archeology.lua b/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/archeology.lua
index 64177dc..8d4e4cc 100644
--- a/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/archeology.lua
+++ b/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/archeology.lua
@@ -32,10 +32,10 @@ local function ArchaeologyStyle()

 	ArchaeologyFrame:RemoveTextures()
 	ArchaeologyFrameInset:RemoveTextures()
-	ArchaeologyFrame:SetStylePanel("Default", "Halftone")
+	ArchaeologyFrame:SetStylePanel("Frame", "Composite1")
 	ArchaeologyFrame.Panel:SetAllPoints()
 	ArchaeologyFrame.portrait:SetAlpha(0)
-	ArchaeologyFrameInset:SetStylePanel("Default", "Inset")
+	ArchaeologyFrameInset:SetStylePanel("Frame", "Inset")
 	ArchaeologyFrameInset.Panel:SetPoint("TOPLEFT")
 	ArchaeologyFrameInset.Panel:SetPoint("BOTTOMRIGHT", -3, -1)
 	ArchaeologyFrameArtifactPageSolveFrameSolveButton:SetStylePanel("Button")
@@ -47,12 +47,12 @@ local function ArchaeologyStyle()
 	ArchaeologyFrameRankBar:RemoveTextures()
 	ArchaeologyFrameRankBar:SetStatusBarTexture([[Interface\AddOns\SVUI\assets\artwork\Template\DEFAULT]])
 	ArchaeologyFrameRankBar:SetFrameLevel(ArchaeologyFrameRankBar:GetFrameLevel()+2)
-	ArchaeologyFrameRankBar:SetStylePanel("Default", "Default")
+	ArchaeologyFrameRankBar:SetStylePanel("Frame", "Default")
 	ArchaeologyFrameArtifactPageSolveFrameStatusBar:RemoveTextures()
 	ArchaeologyFrameArtifactPageSolveFrameStatusBar:SetStatusBarTexture([[Interface\AddOns\SVUI\assets\artwork\Template\DEFAULT]])
 	ArchaeologyFrameArtifactPageSolveFrameStatusBar:SetStatusBarColor(0.7, 0.2, 0)
 	ArchaeologyFrameArtifactPageSolveFrameStatusBar:SetFrameLevel(ArchaeologyFrameArtifactPageSolveFrameStatusBar:GetFrameLevel()+2)
-	ArchaeologyFrameArtifactPageSolveFrameStatusBar:SetStylePanel("Default", "Default")
+	ArchaeologyFrameArtifactPageSolveFrameStatusBar:SetStylePanel("Frame", "Default")

 	for b = 1, ARCHAEOLOGY_MAX_COMPLETED_SHOWN do
 		local c = _G["ArchaeologyFrameCompletedPageArtifact"..b]
@@ -61,7 +61,7 @@ local function ArchaeologyStyle()
 			_G["ArchaeologyFrameCompletedPageArtifact"..b.."Bg"]:Die()
 			_G["ArchaeologyFrameCompletedPageArtifact"..b.."Icon"]:SetTexCoord(0.1, 0.9, 0.1, 0.9)
 			_G["ArchaeologyFrameCompletedPageArtifact"..b.."Icon"].backdrop = CreateFrame("Frame", nil, c)
-			_G["ArchaeologyFrameCompletedPageArtifact"..b.."Icon"].backdrop:SetStylePanel("Fixed", "Default")
+			_G["ArchaeologyFrameCompletedPageArtifact"..b.."Icon"].backdrop:SetStylePanel("!_Frame", "Default")
 			_G["ArchaeologyFrameCompletedPageArtifact"..b.."Icon"].backdrop:SetAllPointsOut(_G["ArchaeologyFrameCompletedPageArtifact"..b.."Icon"])
 			_G["ArchaeologyFrameCompletedPageArtifact"..b.."Icon"].backdrop:SetFrameLevel(c:GetFrameLevel()-2)
 			_G["ArchaeologyFrameCompletedPageArtifact"..b.."Icon"]:SetDrawLayer("OVERLAY")
@@ -70,7 +70,7 @@ local function ArchaeologyStyle()

 	ArchaeologyFrameArtifactPageIcon:SetTexCoord(0.1, 0.9, 0.1, 0.9)
 	ArchaeologyFrameArtifactPageIcon.backdrop = CreateFrame("Frame", nil, ArchaeologyFrameArtifactPage)
-	ArchaeologyFrameArtifactPageIcon.backdrop:SetStylePanel("Fixed", "Default")
+	ArchaeologyFrameArtifactPageIcon.backdrop:SetStylePanel("!_Frame", "Default")
 	ArchaeologyFrameArtifactPageIcon.backdrop:SetAllPointsOut(ArchaeologyFrameArtifactPageIcon)
 	ArchaeologyFrameArtifactPageIcon.backdrop:SetFrameLevel(ArchaeologyFrameArtifactPage:GetFrameLevel())
 	ArchaeologyFrameArtifactPageIcon:SetParent(ArchaeologyFrameArtifactPageIcon.backdrop)
diff --git a/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/auctionhouse.lua b/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/auctionhouse.lua
index 271893a..e499d05 100644
--- a/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/auctionhouse.lua
+++ b/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/auctionhouse.lua
@@ -111,9 +111,9 @@ local function AuctionStyle()
 	--SideDressUpFrame:SetPoint("LEFT", AuctionFrame, "RIGHT", 16, 0)

 	AuctionProgressFrame:RemoveTextures()
-	AuctionProgressFrame:SetStylePanel("Fixed", "Transparent", true)
+	AuctionProgressFrame:SetStylePanel("!_Frame", "Transparent", true)
 	AuctionProgressFrameCancelButton:SetStylePanel("Button")
-	AuctionProgressFrameCancelButton:SetStylePanel("Fixed", "Default")
+	AuctionProgressFrameCancelButton:SetStylePanel("!_Frame", "Default")
 	AuctionProgressFrameCancelButton:SetHitRectInsets(0, 0, 0, 0)
 	AuctionProgressFrameCancelButton:GetNormalTexture():SetAllPointsIn()
 	AuctionProgressFrameCancelButton:GetNormalTexture():SetTexCoord(0.67, 0.37, 0.61, 0.26)
@@ -123,13 +123,13 @@ local function AuctionStyle()

 	local AuctionProgressBarBG = CreateFrame("Frame", nil, AuctionProgressBarIcon:GetParent())
 	AuctionProgressBarBG:SetAllPointsOut(AuctionProgressBarIcon)
-	AuctionProgressBarBG:SetStylePanel("Fixed", "Default")
+	AuctionProgressBarBG:SetStylePanel("!_Frame", "Default")
 	AuctionProgressBarIcon:SetParent(AuctionProgressBarBG)

 	AuctionProgressBarText:ClearAllPoints()
 	AuctionProgressBarText:SetPoint("CENTER")
 	AuctionProgressBar:RemoveTextures()
-	AuctionProgressBar:SetStylePanel("Default", "Default")
+	AuctionProgressBar:SetStylePanel("Frame", "Default")
 	AuctionProgressBar:SetStatusBarTexture(SV.Media.bar.default)
 	AuctionProgressBar:SetStatusBarColor(1, 1, 0)

@@ -174,7 +174,7 @@ local function AuctionStyle()
 	AuctionFrameBrowse.bg1 = CreateFrame("Frame", nil, AuctionFrameBrowse)
 	AuctionFrameBrowse.bg1:SetPointToScale("TOPLEFT", 20, -103)
 	AuctionFrameBrowse.bg1:SetPointToScale("BOTTOMRIGHT", -575, 40)
-	AuctionFrameBrowse.bg1:SetStylePanel("Fixed", "Inset")
+	AuctionFrameBrowse.bg1:SetStylePanel("!_Frame", "Inset")

 	BrowseNoResultsText:SetParent(AuctionFrameBrowse.bg1)
 	BrowseSearchCountText:SetParent(AuctionFrameBrowse.bg1)
@@ -185,7 +185,7 @@ local function AuctionStyle()
 	AuctionFrameBrowse.bg1:SetFrameLevel(AuctionFrameBrowse.bg1:GetFrameLevel()-1)
 	BrowseFilterScrollFrame:SetHeightToScale(300)
 	AuctionFrameBrowse.bg2 = CreateFrame("Frame", nil, AuctionFrameBrowse)
-	AuctionFrameBrowse.bg2:SetStylePanel("Fixed", "Inset")
+	AuctionFrameBrowse.bg2:SetStylePanel("!_Frame", "Inset")
 	AuctionFrameBrowse.bg2:SetPointToScale("TOPLEFT", AuctionFrameBrowse.bg1, "TOPRIGHT", 4, 0)
 	AuctionFrameBrowse.bg2:SetPointToScale("BOTTOMRIGHT", AuctionFrame, "BOTTOMRIGHT", -8, 40)
 	AuctionFrameBrowse.bg2:SetFrameLevel(AuctionFrameBrowse.bg2:GetFrameLevel() - 1)
@@ -308,19 +308,19 @@ local function AuctionStyle()

 	BrowseScrollFrame:SetHeightToScale(300)
 	AuctionFrameBid.bg = CreateFrame("Frame", nil, AuctionFrameBid)
-	AuctionFrameBid.bg:SetStylePanel("Fixed", "Inset")
+	AuctionFrameBid.bg:SetStylePanel("!_Frame", "Inset")
 	AuctionFrameBid.bg:SetPointToScale("TOPLEFT", 22, -72)
 	AuctionFrameBid.bg:SetPointToScale("BOTTOMRIGHT", 66, 39)
 	AuctionFrameBid.bg:SetFrameLevel(AuctionFrameBid.bg:GetFrameLevel()-1)
 	BidScrollFrame:SetHeightToScale(332)
 	AuctionsScrollFrame:SetHeightToScale(336)
 	AuctionFrameAuctions.bg1 = CreateFrame("Frame", nil, AuctionFrameAuctions)
-	AuctionFrameAuctions.bg1:SetStylePanel("Fixed", "Inset")
+	AuctionFrameAuctions.bg1:SetStylePanel("!_Frame", "Inset")
 	AuctionFrameAuctions.bg1:SetPointToScale("TOPLEFT", 15, -70)
 	AuctionFrameAuctions.bg1:SetPointToScale("BOTTOMRIGHT", -545, 35)
 	AuctionFrameAuctions.bg1:SetFrameLevel(AuctionFrameAuctions.bg1:GetFrameLevel() - 2)
 	AuctionFrameAuctions.bg2 = CreateFrame("Frame", nil, AuctionFrameAuctions)
-	AuctionFrameAuctions.bg2:SetStylePanel("Fixed", "Inset")
+	AuctionFrameAuctions.bg2:SetStylePanel("!_Frame", "Inset")
 	AuctionFrameAuctions.bg2:SetPointToScale("TOPLEFT", AuctionFrameAuctions.bg1, "TOPRIGHT", 3, 0)
 	AuctionFrameAuctions.bg2:SetPointToScale("BOTTOMRIGHT", AuctionFrame, -8, 35)
 	AuctionFrameAuctions.bg2:SetFrameLevel(AuctionFrameAuctions.bg2:GetFrameLevel() - 2)
diff --git a/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/barbershop.lua b/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/barbershop.lua
index 0aca4eb..1dec876 100644
--- a/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/barbershop.lua
+++ b/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/barbershop.lua
@@ -40,7 +40,7 @@ local function BarberShopStyle()
 	end

 	BarberShopFrame:RemoveTextures()
-	BarberShopFrame:SetStylePanel("Default", "Halftone")
+	BarberShopFrame:SetStylePanel("Frame", "Composite1")
 	BarberShopFrame:SetSizeToScale(BarberShopFrame:GetWidth()-30, BarberShopFrame:GetHeight()-56)

 	local lastframe;
@@ -65,7 +65,7 @@ local function BarberShopStyle()
 	end

 	BarberShopFrameMoneyFrame:RemoveTextures()
-	BarberShopFrameMoneyFrame:SetStylePanel("Default", "Inset")
+	BarberShopFrameMoneyFrame:SetStylePanel("Frame", "Inset")
 	BarberShopFrameMoneyFrame:SetPointToScale("TOP", lastframe, "BOTTOM", 0, -10)

 	BarberShopFrameBackground:Die()
@@ -75,7 +75,7 @@ local function BarberShopStyle()
 	BarberShopAltFormFrameBorder:RemoveTextures()
 	BarberShopAltFormFrame:SetPointToScale("BOTTOM", BarberShopFrame, "TOP", 0, 5)
 	BarberShopAltFormFrame:RemoveTextures()
-	BarberShopAltFormFrame:SetStylePanel("Default", "Action")
+	BarberShopAltFormFrame:SetStylePanel("Frame", "Composite2")

 	BarberShopFrameResetButton:ClearAllPoints()
 	BarberShopFrameResetButton:SetPointToScale("BOTTOM", BarberShopFrame.Panel, "BOTTOM", 0, 4)
diff --git a/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/battlefield.lua b/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/battlefield.lua
index 7928104..46c4577 100644
--- a/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/battlefield.lua
+++ b/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/battlefield.lua
@@ -36,7 +36,7 @@ local function BattlefieldStyle()
 	BattlefieldMinimapTabLeft:Die()
 	BattlefieldMinimapTabMiddle:Die()
 	BattlefieldMinimapTabRight:Die()
-	BattlefieldMinimap:SetStylePanel("Fixed", "Transparent")
+	BattlefieldMinimap:SetStylePanel("!_Frame", "Transparent")
 	BattlefieldMinimap.Panel:SetPointToScale("BOTTOMRIGHT", -4, 2)
 	BattlefieldMinimap:SetFrameStrata("LOW")
 	BattlefieldMinimapCloseButton:ClearAllPoints()
diff --git a/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/blackmarket.lua b/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/blackmarket.lua
index 5bcef82..fc823be 100644
--- a/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/blackmarket.lua
+++ b/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/blackmarket.lua
@@ -67,7 +67,7 @@ local function BlackMarketStyle()
 	PLUGIN:ApplyWindowStyle(BlackMarketFrame)

 	BlackMarketFrame.Inset:RemoveTextures()
-	BlackMarketFrame.Inset:SetStylePanel("Fixed", "Inset")
+	BlackMarketFrame.Inset:SetStylePanel("!_Frame", "Inset")

 	PLUGIN:ApplyCloseButtonStyle(BlackMarketFrame.CloseButton)
 	PLUGIN:ApplyScrollFrameStyle(BlackMarketScrollFrameScrollBar, 4)
diff --git a/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/calendar.lua b/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/calendar.lua
index 9d63008..7d5a6dc 100644
--- a/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/calendar.lua
+++ b/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/calendar.lua
@@ -58,7 +58,7 @@ local function CalendarStyle()
 		if(cfframe) then
 			cfframe:RemoveTextures()
 			cfframe:SetWidthToScale(155)
-			cfframe:SetStylePanel("Default", "Default")
+			cfframe:SetStylePanel("Frame", "Default")

 			local cfbutton = _G["CalendarFilterButton"];
 			if(cfbutton) then
@@ -78,10 +78,10 @@ local function CalendarStyle()
 	end

 	local l = CreateFrame("Frame", "CalendarFrameBackdrop", CalendarFrame)
-	l:SetStylePanel("Fixed", "Default")
+	l:SetStylePanel("!_Frame", "Default")
 	l:SetPoint("TOPLEFT", 10, -72)
 	l:SetPoint("BOTTOMRIGHT", -8, 3)
-	CalendarContextMenu:SetStylePanel("Fixed", "Default")
+	CalendarContextMenu:SetStylePanel("!_Frame", "Default")
 	hooksecurefunc(CalendarContextMenu, "SetBackdropColor", function(f, r, g, b, a)
 		if r ~= 0 or g ~= 0 or b ~= 0 or a ~= 0.5 then
 			 f:SetBackdropColor(0, 0, 0, 0.5)
@@ -96,7 +96,7 @@ local function CalendarStyle()
 		 _G["CalendarDayButton"..u]:SetFrameLevel(_G["CalendarDayButton"..u]:GetFrameLevel()+1)
 	end
 	CalendarCreateEventFrame:RemoveTextures()
-	CalendarCreateEventFrame:SetStylePanel("Fixed", "Transparent", true)
+	CalendarCreateEventFrame:SetStylePanel("!_Frame", "Transparent", true)
 	CalendarCreateEventFrame:SetPoint("TOPLEFT", CalendarFrame, "TOPRIGHT", 3, -24)
 	CalendarCreateEventTitleFrame:RemoveTextures()
 	CalendarCreateEventCreateButton:SetStylePanel("Button")
@@ -105,12 +105,12 @@ local function CalendarStyle()
 	CalendarCreateEventInviteButton:SetPoint("TOPLEFT", CalendarCreateEventInviteEdit, "TOPRIGHT", 4, 1)
 	CalendarCreateEventInviteEdit:SetWidthToScale(CalendarCreateEventInviteEdit:GetWidth()-2)
 	CalendarCreateEventInviteList:RemoveTextures()
-	CalendarCreateEventInviteList:SetStylePanel("Fixed", "Default")
+	CalendarCreateEventInviteList:SetStylePanel("!_Frame", "Default")
 	CalendarCreateEventInviteEdit:SetStylePanel("Editbox")
 	CalendarCreateEventTitleEdit:SetStylePanel("Editbox")
 	PLUGIN:ApplyDropdownStyle(CalendarCreateEventTypeDropDown, 120)
 	CalendarCreateEventDescriptionContainer:RemoveTextures()
-	CalendarCreateEventDescriptionContainer:SetStylePanel("Fixed", "Default")
+	CalendarCreateEventDescriptionContainer:SetStylePanel("!_Frame", "Default")
 	PLUGIN:ApplyCloseButtonStyle(CalendarCreateEventCloseButton)
 	CalendarCreateEventLockEventCheck:SetStylePanel("Checkbox", true)
 	PLUGIN:ApplyDropdownStyle(CalendarCreateEventHourDropDown, 68)
@@ -128,7 +128,7 @@ local function CalendarStyle()
 	CalendarClassButtonContainer:HookScript("OnShow", function()
 		for u, D in ipairs(CLASS_SORT_ORDER)do
 			local e = _G["CalendarClassButton"..u]e:RemoveTextures()
-			e:SetStylePanel("Default", "Default")
+			e:SetStylePanel("Frame", "Default")
 			local E = CLASS_ICON_TCOORDS[D]
 			local F = e:GetNormalTexture()
 			F:SetTexture("Interface\\Glues\\CharacterCreate\\UI-CharacterCreate-Classes")
@@ -136,18 +136,18 @@ local function CalendarStyle()
 		end
 		CalendarClassButton1:SetPoint("TOPLEFT", CalendarClassButtonContainer, "TOPLEFT", 5, 0)
 		CalendarClassTotalsButton:RemoveTextures()
-		CalendarClassTotalsButton:SetStylePanel("Default", "Default")
+		CalendarClassTotalsButton:SetStylePanel("Frame", "Default")
 	end)
 	CalendarTexturePickerFrame:RemoveTextures()
 	CalendarTexturePickerTitleFrame:RemoveTextures()
-	CalendarTexturePickerFrame:SetStylePanel("Fixed", "Transparent", true)
+	CalendarTexturePickerFrame:SetStylePanel("!_Frame", "Transparent", true)
 	PLUGIN:ApplyScrollFrameStyle(CalendarTexturePickerScrollBar)
 	CalendarTexturePickerAcceptButton:SetStylePanel("Button")
 	CalendarTexturePickerCancelButton:SetStylePanel("Button")
 	CalendarCreateEventInviteButton:SetStylePanel("Button")
 	CalendarCreateEventRaidInviteButton:SetStylePanel("Button")
 	CalendarMassInviteFrame:RemoveTextures()
-	CalendarMassInviteFrame:SetStylePanel("Fixed", "Transparent", true)
+	CalendarMassInviteFrame:SetStylePanel("!_Frame", "Transparent", true)
 	CalendarMassInviteTitleFrame:RemoveTextures()
 	PLUGIN:ApplyCloseButtonStyle(CalendarMassInviteCloseButton)
 	CalendarMassInviteGuildAcceptButton:SetStylePanel("Button")
@@ -155,23 +155,23 @@ local function CalendarStyle()
 	CalendarMassInviteGuildMinLevelEdit:SetStylePanel("Editbox")
 	CalendarMassInviteGuildMaxLevelEdit:SetStylePanel("Editbox")
 	CalendarViewRaidFrame:RemoveTextures()
-	CalendarViewRaidFrame:SetStylePanel("Fixed", "Transparent", true)
+	CalendarViewRaidFrame:SetStylePanel("!_Frame", "Transparent", true)
 	CalendarViewRaidFrame:SetPoint("TOPLEFT", CalendarFrame, "TOPRIGHT", 3, -24)
 	CalendarViewRaidTitleFrame:RemoveTextures()
 	PLUGIN:ApplyCloseButtonStyle(CalendarViewRaidCloseButton)
 	CalendarViewHolidayFrame:RemoveTextures(true)
-	CalendarViewHolidayFrame:SetStylePanel("Fixed", "Transparent", true)
+	CalendarViewHolidayFrame:SetStylePanel("!_Frame", "Transparent", true)
 	CalendarViewHolidayFrame:SetPoint("TOPLEFT", CalendarFrame, "TOPRIGHT", 3, -24)
 	CalendarViewHolidayTitleFrame:RemoveTextures()
 	PLUGIN:ApplyCloseButtonStyle(CalendarViewHolidayCloseButton)
 	CalendarViewEventFrame:RemoveTextures()
-	CalendarViewEventFrame:SetStylePanel("Fixed", "Transparent", true)
+	CalendarViewEventFrame:SetStylePanel("!_Frame", "Transparent", true)
 	CalendarViewEventFrame:SetPoint("TOPLEFT", CalendarFrame, "TOPRIGHT", 3, -24)
 	CalendarViewEventTitleFrame:RemoveTextures()
 	CalendarViewEventDescriptionContainer:RemoveTextures()
-	CalendarViewEventDescriptionContainer:SetStylePanel("Fixed", "Transparent", true)
+	CalendarViewEventDescriptionContainer:SetStylePanel("!_Frame", "Transparent", true)
 	CalendarViewEventInviteList:RemoveTextures()
-	CalendarViewEventInviteList:SetStylePanel("Fixed", "Transparent", true)
+	CalendarViewEventInviteList:SetStylePanel("!_Frame", "Transparent", true)
 	CalendarViewEventInviteListSection:RemoveTextures()
 	PLUGIN:ApplyCloseButtonStyle(CalendarViewEventCloseButton)
 	PLUGIN:ApplyScrollFrameStyle(CalendarViewEventInviteListScrollFrameScrollBar)
@@ -180,7 +180,7 @@ local function CalendarStyle()
 	end
 	CalendarEventPickerFrame:RemoveTextures()
 	CalendarEventPickerTitleFrame:RemoveTextures()
-	CalendarEventPickerFrame:SetStylePanel("Fixed", "Transparent", true)
+	CalendarEventPickerFrame:SetStylePanel("!_Frame", "Transparent", true)
 	PLUGIN:ApplyScrollFrameStyle(CalendarEventPickerScrollBar)
 	CalendarEventPickerCloseButton:SetStylePanel("Button")
 	PLUGIN:ApplyScrollFrameStyle(CalendarCreateEventDescriptionScrollFrameScrollBar)
diff --git a/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/challenges.lua b/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/challenges.lua
index 4f65fa4..1ba897a 100644
--- a/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/challenges.lua
+++ b/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/challenges.lua
@@ -32,7 +32,7 @@ local function ChallengesFrameStyle()
   ChallengesFrameInset:RemoveTextures()
   ChallengesFrameInsetBg:Hide()
   ChallengesFrameDetails.bg:Hide()
-  ChallengesFrameDetails:SetStylePanel("Default", "Inset")
+  ChallengesFrameDetails:SetStylePanel("Frame", "Inset")
   ChallengesFrameLeaderboard:SetStylePanel("Button")
   select(2, ChallengesFrameDetails:GetRegions()):Hide()
   select(9, ChallengesFrameDetails:GetRegions()):Hide()
@@ -54,7 +54,7 @@ local function ChallengesFrameStyle()
     local F = ChallengesFrame["RewardRow"..u]
     for A = 1, 2 do
       local v = F["Reward"..A]
-      v:SetStylePanel("Default")
+      v:SetStylePanel("Frame")
       v.Icon:SetTexCoord(0.1, 0.9, 0.1, 0.9)
     end
   end
diff --git a/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/character.lua b/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/character.lua
index b30806a..7d33d55 100644
--- a/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/character.lua
+++ b/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/character.lua
@@ -106,7 +106,7 @@ local function StyleCharacterSlots()
 			if(not charSlot.Panel) then
 				charSlot:RemoveTextures()
 				charSlot.ignoreTexture:SetTexture([[Interface\PaperDollInfoFrame\UI-GearManager-LeaveItem-Transparent]])
-				charSlot:SetStylePanel("Slot", true, 1, 0, 0)
+				charSlot:SetStylePanel("Slot", 1, 0, 0)

 				local iconTex = _G[globalName.."IconTexture"]
 				if(iconTex) then
@@ -150,7 +150,7 @@ local function StyleCharacterSlots()
 						texture:SetTexCoord(0.16, 0.86, 0.16, 0.86)
 					end
 				end
-				tab:SetStylePanel("Default", "Default", true, 2)
+				tab:SetStylePanel("Frame", "Default", true, 2)
 				tab.Panel:SetPointToScale("TOPLEFT", 2, -3)
 				tab.Panel:SetPointToScale("BOTTOMRIGHT", 0, -2)
 			end
@@ -177,7 +177,7 @@ local function EquipmentFlyout_OnShow()
 		texture:SetAllPointsIn()
 		button:SetFrameLevel(button:GetFrameLevel() + 2)
 		if not button.Panel then
-			button:SetStylePanel("Default", "Default")
+			button:SetStylePanel("Frame", "Default")
 			button.Panel:SetAllPoints()
 		end
 		counter = counter + 1;
@@ -191,7 +191,7 @@ local function Reputation_OnShow()
 		if bar then
 			 bar:SetStatusBarTexture([[Interface\AddOns\SVUI\assets\artwork\Template\DEFAULT]])
 			if not bar.Panel then
-				 bar:SetStylePanel("Default", "Inset")
+				 bar:SetStylePanel("Frame", "Inset")
 			end
 			_G["ReputationBar"..i.."Background"]:SetTexture(0,0,0,0)
 			_G["ReputationBar"..i.."ReputationBarHighlight1"]:SetTexture(0,0,0,0)
@@ -232,11 +232,11 @@ local function PaperDollEquipmentManagerPane_OnShow()
 	end

 	GearManagerDialogPopup:RemoveTextures()
-	GearManagerDialogPopup:SetStylePanel("Default", "Inset", true)
+	GearManagerDialogPopup:SetStylePanel("Frame", "Inset", true)
 	GearManagerDialogPopup:SetPointToScale("LEFT", PaperDollFrame, "RIGHT", 4, 0)
 	GearManagerDialogPopupScrollFrame:RemoveTextures()
 	GearManagerDialogPopupEditBox:RemoveTextures()
-	GearManagerDialogPopupEditBox:SetStylePanel("Default", 'Inset')
+	GearManagerDialogPopupEditBox:SetStylePanel("Frame", 'Inset')
 	GearManagerDialogPopupOkay:SetStylePanel("Button")
 	GearManagerDialogPopupCancel:SetStylePanel("Button")

@@ -278,7 +278,6 @@ local function CharacterFrameStyle()
 	SlotListener:SetScript("OnEvent", StyleCharacterSlots)
 	CharacterFrame:HookScript("OnShow", StyleCharacterSlots)

-	CharacterFrameExpandButton:SetSizeToScale(CharacterFrameExpandButton:GetWidth() - 7, CharacterFrameExpandButton:GetHeight() - 7)
 	PLUGIN:ApplyPaginationStyle(CharacterFrameExpandButton)

 	hooksecurefunc('CharacterFrame_Collapse', function()
@@ -316,7 +315,7 @@ local function CharacterFrameStyle()
 		if(_G[gName]) then _G[gName]:RemoveTextures(true) end
 	end

-	CharacterFrameInsetRight:SetStylePanel("Default", 'Inset')
+	CharacterFrameInsetRight:SetStylePanel("Frame", 'Inset')

 	for i=1, 6 do
 		local pane = _G["CharacterStatsPaneCategory"..i]
@@ -330,15 +329,15 @@ local function CharacterFrameStyle()
 	CharacterModelFrameBackgroundBotLeft:SetTexture(0,0,0,0)
 	CharacterModelFrameBackgroundBotRight:SetTexture(0,0,0,0)

-	CharacterModelFrame:SetStylePanel("Fixed", "Model")
+	CharacterModelFrame:SetStylePanel("!_Frame", "Model")
 	CharacterFrameExpandButton:SetFrameLevel(CharacterModelFrame:GetFrameLevel() + 5)

 	PaperDollTitlesPane:RemoveTextures()
 	PaperDollTitlesPaneScrollChild:RemoveTextures()
-	PaperDollTitlesPane:SetStylePanel("Default", 'Inset')
+	PaperDollTitlesPane:SetStylePanel("Frame", 'Inset')
 	PaperDollTitlesPane:HookScript("OnShow", PaperDollTitlesPane_OnShow)

-	PaperDollEquipmentManagerPane:SetStylePanel("Default", 'Inset')
+	PaperDollEquipmentManagerPane:SetStylePanel("Frame", 'Inset')
 	PaperDollEquipmentManagerPaneEquipSet:SetStylePanel("Button")
 	PaperDollEquipmentManagerPaneSaveSet:SetStylePanel("Button")
 	PaperDollEquipmentManagerPaneEquipSet:SetWidthToScale(PaperDollEquipmentManagerPaneEquipSet:GetWidth()-8)
@@ -356,14 +355,14 @@ local function CharacterFrameStyle()

 	ReputationFrame:RemoveTextures(true)
 	ReputationListScrollFrame:RemoveTextures()
-	ReputationListScrollFrame:SetStylePanel("Default", "Inset")
+	ReputationListScrollFrame:SetStylePanel("Frame", "Inset")
 	ReputationDetailFrame:RemoveTextures()
-	ReputationDetailFrame:SetStylePanel("Default", "Inset", true)
+	ReputationDetailFrame:SetStylePanel("Frame", "Inset", true)
 	ReputationDetailFrame:SetPointToScale("TOPLEFT", ReputationFrame, "TOPRIGHT", 4, -28)
 	ReputationFrame:HookScript("OnShow", Reputation_OnShow)
 	hooksecurefunc("ExpandFactionHeader", Reputation_OnShow)
 	hooksecurefunc("CollapseFactionHeader", Reputation_OnShow)
-	TokenFrameContainer:SetStylePanel("Default", 'Inset')
+	TokenFrameContainer:SetStylePanel("Frame", 'Inset')

 	TokenFrame:HookScript("OnShow", function()
 		for i = 1, GetCurrencyListSize() do
@@ -379,14 +378,14 @@ local function CharacterFrameStyle()
 			end
 		end
 		TokenFramePopup:RemoveTextures()
-		TokenFramePopup:SetStylePanel("Default", "Inset", true)
+		TokenFramePopup:SetStylePanel("Frame", "Inset", true)
 		TokenFramePopup:SetPointToScale("TOPLEFT", TokenFrame, "TOPRIGHT", 4, -28)
 	end)

-	PetModelFrame:SetStylePanel("Default", "Comic",false,1,-7,-7)
+	PetModelFrame:SetStylePanel("Frame", "Premium", false, 1, -7, -7)
 	PetPaperDollPetInfo:GetRegions():SetTexCoord(.12, .63, .15, .55)
 	PetPaperDollPetInfo:SetFrameLevel(PetPaperDollPetInfo:GetFrameLevel() + 10)
-	PetPaperDollPetInfo:SetStylePanel("Default", "Slot")
+	PetPaperDollPetInfo:SetStylePanel("Frame", "Slot")
 	PetPaperDollPetInfo.Panel:SetFrameLevel(0)
 	PetPaperDollPetInfo:SetSizeToScale(24, 24)
 end
diff --git a/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/chat.lua b/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/chat.lua
index 28ea85e..3addbd5 100644
--- a/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/chat.lua
+++ b/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/chat.lua
@@ -144,13 +144,13 @@ HELPERS
 ]]--
 local ChatGeneric_OnShow = function(self)
 	 if(not self.Panel) then
-	 	self:SetStylePanel("Default", "Halftone")
+	 	self:SetStylePanel("Frame", "Composite1")
 	end
 end

 local ChatMenu_OnShow = function(self)
 	if(not self.Panel) then
-		self:SetStylePanel("Default", "Halftone")
+		self:SetStylePanel("Frame", "Composite1")
 	end
 	self:ClearAllPoints()
 	self:SetPointToScale("BOTTOMLEFT", ChatFrame1, "TOPLEFT", 0, 30)
@@ -167,7 +167,7 @@ local ChatConfigChannelSettingsLeft_OnEvent = function(self)
 		if(checkbox) then
 			if(not checkbox.Panel) then
 				checkbox:RemoveTextures()
-				checkbox:SetStylePanel("Default", 'Transparent')
+				checkbox:SetStylePanel("Frame", 'Transparent')
 			end
 			checkbox:SetHeight(boxHeight)
 			checkbox.Panel:SetPointToScale("TOPLEFT",3,-1)
@@ -198,7 +198,7 @@ local ChatConfigBackgroundFrame_OnShow = function(self)
 		if(checkbox) then
 			if(not checkbox.Panel) then
 				checkbox:RemoveTextures()
-				checkbox:SetStylePanel("Default", "Default")
+				checkbox:SetStylePanel("Frame", "Default")
 			end
 			checkbox.Panel:SetPointToScale("TOPLEFT", 3, -1)
 			checkbox.Panel:SetPointToScale("BOTTOMRIGHT", -3, 1)
@@ -222,7 +222,7 @@ local ChatConfigBackgroundFrame_OnShow = function(self)
 		if(checkbox) then
 			if(not checkbox.Panel) then
 				checkbox:RemoveTextures()
-				checkbox:SetStylePanel("Default", "Default")
+				checkbox:SetStylePanel("Frame", "Default")
 			end
 			checkbox.Panel:SetPointToScale("TOPLEFT", 3, -1)
 			checkbox.Panel:SetPointToScale("BOTTOMRIGHT", -3, 1)
@@ -239,7 +239,7 @@ local ChatConfigBackgroundFrame_OnShow = function(self)
 		if(checkbox) then
 			if(not checkbox.Panel) then
 				checkbox:RemoveTextures()
-				checkbox:SetStylePanel("Default", "Default")
+				checkbox:SetStylePanel("Frame", "Default")
 			end
 			checkbox.Panel:SetPointToScale("TOPLEFT", 3, -1)
 			checkbox.Panel:SetPointToScale("BOTTOMRIGHT", -3, 1)
@@ -256,7 +256,7 @@ local ChatConfigBackgroundFrame_OnShow = function(self)
 		if(checkbox) then
 			if(not checkbox.Panel) then
 				checkbox:RemoveTextures()
-				checkbox:SetStylePanel("Default", "Default")
+				checkbox:SetStylePanel("Frame", "Default")
 			end
 			checkbox.Panel:SetPointToScale("TOPLEFT", 3, -1)
 			checkbox.Panel:SetPointToScale("BOTTOMRIGHT", -3, 1)
@@ -273,7 +273,7 @@ local ChatConfigBackgroundFrame_OnShow = function(self)
 		if(checkbox) then
 			if(not checkbox.Panel) then
 				checkbox:RemoveTextures()
-				checkbox:SetStylePanel("Default", "Default")
+				checkbox:SetStylePanel("Frame", "Default")
 			end
 			checkbox.Panel:SetPointToScale("TOPLEFT", 3, -1)
 			checkbox.Panel:SetPointToScale("BOTTOMRIGHT", -3, 1)
@@ -290,7 +290,7 @@ local ChatConfigBackgroundFrame_OnShow = function(self)
 		if(checkbox) then
 			if(not checkbox.Panel) then
 				checkbox:RemoveTextures()
-				checkbox:SetStylePanel("Default", "Default")
+				checkbox:SetStylePanel("Frame", "Default")
 			end
 			checkbox.Panel:SetPointToScale("TOPLEFT", 3, -1)
 			checkbox.Panel:SetPointToScale("BOTTOMRIGHT", -3, 1)
@@ -307,7 +307,7 @@ local ChatConfigBackgroundFrame_OnShow = function(self)
 		if(checkbox) then
 			if(not checkbox.Panel) then
 				checkbox:RemoveTextures()
-				checkbox:SetStylePanel("Default", "Default")
+				checkbox:SetStylePanel("Frame", "Default")
 			end
 			checkbox.Panel:SetPointToScale("TOPLEFT", 3, -1)
 			checkbox.Panel:SetPointToScale("BOTTOMRIGHT", -3, 1)
@@ -324,7 +324,7 @@ local ChatConfigBackgroundFrame_OnShow = function(self)
 		if(checkbox) then
 			if(not checkbox.Panel) then
 				checkbox:RemoveTextures()
-				checkbox:SetStylePanel("Default", "Default")
+				checkbox:SetStylePanel("Frame", "Default")
 			end
 			checkbox.Panel:SetPointToScale("TOPLEFT", 3, -1)
 			checkbox.Panel:SetPointToScale("BOTTOMRIGHT", -3, 1)
@@ -405,13 +405,13 @@ local function ChatStyle()
 	if(_G["CombatConfigTab5"]) then _G["CombatConfigTab5"]:RemoveTextures() end

 	CombatConfigSettingsNameEditBox:SetStylePanel("Editbox")
-	ChatConfigFrame:SetStylePanel("Default", "Halftone", true)
+	ChatConfigFrame:SetStylePanel("Frame", "Composite1", true)

 	for i = 1, #ChatFrameList3 do
 		local frame = _G[ChatFrameList3[i]]
 		if(frame) then
 			frame:RemoveTextures()
-			frame:SetStylePanel("Default", 'Transparent')
+			frame:SetStylePanel("Frame", 'Transparent')
 		end
 	end

diff --git a/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/dressup (Failbox's conflicted copy 2014-12-26).lua b/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/dressup (Failbox's conflicted copy 2014-12-26).lua
deleted file mode 100644
index b131f6c..0000000
--- a/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/dressup (Failbox's conflicted copy 2014-12-26).lua
+++ /dev/null
@@ -1,57 +0,0 @@
---[[
-##############################################################################
-_____/\\\\\\\\\\\____/\\\________/\\\__/\\\________/\\\__/\\\\\\\\\\\_       #
- ___/\\\/////////\\\_\/\\\_______\/\\\_\/\\\_______\/\\\_\/////\\\///__      #
-  __\//\\\______\///__\//\\\______/\\\__\/\\\_______\/\\\_____\/\\\_____     #
-   ___\////\\\__________\//\\\____/\\\___\/\\\_______\/\\\_____\/\\\_____    #
-    ______\////\\\________\//\\\__/\\\____\/\\\_______\/\\\_____\/\\\_____   #
-     _________\////\\\______\//\\\/\\\_____\/\\\_______\/\\\_____\/\\\_____  #
-      __/\\\______\//\\\______\//\\\\\______\//\\\______/\\\______\/\\\_____ #
-       _\///\\\\\\\\\\\/________\//\\\________\///\\\\\\\\\/____/\\\\\\\\\\\_#
-        ___\///////////___________\///___________\/////////_____\///////////_#
-##############################################################################
-S U P E R - V I L L A I N - U I   By: Munglunch                              #
-##############################################################################
---]]
---[[ GLOBALS ]]--
-local _G = _G;
-local unpack  = _G.unpack;
-local select  = _G.select;
---[[ ADDON ]]--
-local SV = _G.SVUI;
-local L = SV.L;
-local PLUGIN = select(2, ...);
-local Schema = PLUGIN.Schema;
---[[
-##########################################################
-DRESSUP PLUGINR
-##########################################################
-]]--
-local function DressUpStyle()
-	if PLUGIN.db.blizzard.enable ~= true or PLUGIN.db.blizzard.dressingroom ~= true then
-		 return
-	end
-
-	DressUpFrame:SetSizeToScale(600, 700)
-	PLUGIN:ApplyWindowStyle(DressUpFrame, true, true)
-
-	DressUpModel:ClearAllPoints()
-	DressUpModel:SetPointToScale("TOPLEFT", DressUpFrame, "TOPLEFT", 12, -76)
-	DressUpModel:SetPointToScale("BOTTOMRIGHT", DressUpFrame, "BOTTOMRIGHT", -12, 36)
-
-	DressUpModel:SetStylePanel("Fixed", "Model")
-
-	DressUpFrameCancelButton:SetPointToScale("BOTTOMRIGHT", DressUpFrame, "BOTTOMRIGHT", -12, 12)
-	DressUpFrameCancelButton:SetStylePanel("Button")
-
-	DressUpFrameResetButton:SetPointToScale("RIGHT", DressUpFrameCancelButton, "LEFT", -12, 0)
-	DressUpFrameResetButton:SetStylePanel("Button")
-
-	PLUGIN:ApplyCloseButtonStyle(DressUpFrameCloseButton, DressUpFrame.Panel)
-end
---[[
-##########################################################
-PLUGIN LOADING
-##########################################################
-]]--
-PLUGIN:SaveCustomStyle(DressUpStyle)
\ No newline at end of file
diff --git a/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/dressup.lua b/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/dressup.lua
index d754eca..8c012b0 100644
--- a/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/dressup.lua
+++ b/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/dressup.lua
@@ -39,7 +39,7 @@ local function DressUpStyle()
 	DressUpModel:SetPointToScale("TOPLEFT", DressUpFrame, "TOPLEFT", 12, -76)
 	DressUpModel:SetPointToScale("BOTTOMRIGHT", DressUpFrame, "BOTTOMRIGHT", -12, 36)

-	DressUpModel:SetStylePanel("Fixed", "Model")
+	DressUpModel:SetStylePanel("!_Frame", "Model")

 	DressUpFrameCancelButton:SetPointToScale("BOTTOMRIGHT", DressUpFrame, "BOTTOMRIGHT", -12, 12)
 	DressUpFrameCancelButton:SetStylePanel("Button")
diff --git a/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/encounterjournal.lua b/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/encounterjournal.lua
index 6f1c3a2..a3e8baf 100644
--- a/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/encounterjournal.lua
+++ b/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/encounterjournal.lua
@@ -51,7 +51,7 @@ local function ChangeTabHelper(this, xOffset, yOffset)
   this.backdrop:SetAllPointsIn(this)
   this.backdrop:SetFrameLevel(0)

-  this.backdrop:SetStylePanel("Default", "Component", true)
+  this.backdrop:SetStylePanel("Frame", "Heavy", true)
   this.backdrop:SetPanelColor("dark")
   this:HookScript("OnEnter",Tab_OnEnter)
   this:HookScript("OnLeave",Tab_OnLeave)
@@ -153,21 +153,21 @@ local function EncounterJournalStyle()

   EncounterJournalSearchResults:RemoveTextures(true)

-  EncounterJournal:SetStylePanel("Default", "Action")
+  EncounterJournal:SetStylePanel("Frame", "Composite2")
   EncounterJournal:SetPanelColor("dark")
-  EncounterJournalInset:SetStylePanel("Fixed", "Inset")
+  EncounterJournalInset:SetStylePanel("!_Frame", "Inset")

-  EncounterJournalInstanceSelectScrollFrameScrollChild:SetStylePanel("Fixed", "Default")
+  EncounterJournalInstanceSelectScrollFrameScrollChild:SetStylePanel("!_Frame", "Default")
   EncounterJournalInstanceSelectScrollFrameScrollChild:SetPanelColor("dark")
   EncounterJournalInstanceSelectScrollDownButton:SetStylePanel("Button")
   EncounterJournalInstanceSelectScrollDownButton:SetNormalTexture([[Interface\AddOns\SVUI\assets\artwork\Icons\MOVE-DOWN]])

-  EncounterJournalEncounterFrameInstanceFrame:SetStylePanel("Fixed", "Inset")
+  EncounterJournalEncounterFrameInstanceFrame:SetStylePanel("!_Frame", "Inset")

   local comicHolder = CreateFrame('Frame', nil, EncounterJournal.encounter)
   comicHolder:SetPoint("TOPLEFT", EncounterJournalEncounterFrameInfoBossesScrollFrame, "TOPLEFT", -20, 40)
   comicHolder:SetPoint("BOTTOMRIGHT", EncounterJournalEncounterFrameInfoBossesScrollFrame, "BOTTOMRIGHT", 0, 0)
-  comicHolder:SetStylePanel("Default", "Comic")
+  comicHolder:SetStylePanel("Frame", "Premium")
   comicHolder:SetPanelColor("dark")
   EncounterJournal.encounter.info.encounterTitle:SetParent(comicHolder)
   EncounterJournal.searchResults.TitleText:SetParent(comicHolder)
@@ -189,7 +189,7 @@ local function EncounterJournalStyle()
   bgParent.loreBG:SetPoint("TOPLEFT", bgParent, "TOPLEFT", 0, 0)
   bgParent.loreBG:SetPoint("BOTTOMRIGHT", bgParent, "BOTTOMRIGHT", 0, 90)

-  loreParent:SetStylePanel("Default", "Pattern", true, 1, 1, 5)
+  loreParent:SetStylePanel("Frame", "Pattern", true, 1, 1, 5)
   loreParent:SetPanelColor("dark")
   loreParent.child.lore:SetTextColor(1, 1, 1)
   EncounterJournal.encounter.infoFrame.description:SetTextColor(1, 1, 1)
@@ -246,7 +246,7 @@ local function EncounterJournalStyle()
       if index <= numLoot then
           item.icon:SetTexCoord(0.1, 0.9, 0.1, 0.9)
           if(not item.Panel) then
-            item:SetStylePanel("Fixed", "Slot")
+            item:SetStylePanel("!_Frame", "Slot")
           end
           item.slot:SetTextColor(0.5, 1, 0)
           item.armorType:SetTextColor(1, 1, 0)
diff --git a/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/friends.lua b/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/friends.lua
index 788b821..28f4eb7 100644
--- a/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/friends.lua
+++ b/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/friends.lua
@@ -102,7 +102,7 @@ local function TabCustomHelper(this)
 	end
 	this:GetHighlightTexture():SetTexture(0,0,0,0)
 	this.backdrop = CreateFrame("Frame", nil, this)
-	this.backdrop:SetStylePanel("Fixed", "Default")
+	this.backdrop:SetStylePanel("!_Frame", "Default")
 	this.backdrop:SetFrameLevel(this:GetFrameLevel()-1)
 	this.backdrop:SetPointToScale("TOPLEFT", 3, -8)
 	this.backdrop:SetPointToScale("BOTTOMRIGHT", -6, 0)
@@ -140,16 +140,16 @@ local function FriendsFrameStyle()
 	PLUGIN:ApplyEditBoxStyle(WhoFrameEditBoxInset)
 	ChannelFrameRightInset:RemoveTextures()
 	ChannelFrameLeftInset:RemoveTextures()
-	ChannelFrameRightInset:SetStylePanel("Fixed", "ModelBorder")
-	ChannelFrameLeftInset:SetStylePanel("Fixed", "ModelBorder")
+	ChannelFrameRightInset:SetStylePanel("!_Frame", "ModelBorder")
+	ChannelFrameLeftInset:SetStylePanel("!_Frame", "ModelBorder")
 	LFRQueueFrameListInset:RemoveTextures()
 	LFRQueueFrameRoleInset:RemoveTextures()
 	LFRQueueFrameCommentInset:RemoveTextures()
-	LFRQueueFrameListInset:SetStylePanel("Fixed", "ModelBorder")
-	FriendsFrameInset:SetStylePanel("Fixed", "ModelBorder")
-	FriendsFrameFriendsScrollFrame:SetStylePanel("Fixed", "Model")
-	WhoFrameListInset:SetStylePanel("Fixed", "ModelBorder")
-	RaidFrame:SetStylePanel("Fixed", "ModelBorder")
+	LFRQueueFrameListInset:SetStylePanel("!_Frame", "ModelBorder")
+	FriendsFrameInset:SetStylePanel("!_Frame", "ModelBorder")
+	FriendsFrameFriendsScrollFrame:SetStylePanel("!_Frame", "Model")
+	WhoFrameListInset:SetStylePanel("!_Frame", "ModelBorder")
+	RaidFrame:SetStylePanel("!_Frame", "ModelBorder")

 	for c, e in pairs(FriendsFrameButtons)do
 		 _G[e]:SetStylePanel("Button")
@@ -176,7 +176,7 @@ local function FriendsFrameStyle()
 	FriendsFrameBattlenetFrame:RemoveTextures()
 	FriendsFrameBattlenetFrame:SetHeight(22)
 	FriendsFrameBattlenetFrame:SetPoint('TOPLEFT', FriendsFrameStatusDropDown, 'TOPRIGHT', 0, -1)
-	FriendsFrameBattlenetFrame:SetStylePanel("Fixed", "Inset")
+	FriendsFrameBattlenetFrame:SetStylePanel("!_Frame", "Inset")
 	FriendsFrameBattlenetFrame:SetBackdropColor(0,0,0,0.8)

 	-- FriendsFrameBattlenetFrame.BroadcastButton:GetNormalTexture():SetTexCoord(.28, .72, .28, .72)
@@ -194,14 +194,14 @@ local function FriendsFrameStyle()
 	end)
 	FriendsFrameBattlenetFrame.Tag:SetFontObject(SVUI_Font_Narrator)
 	AddFriendNameEditBox:SetStylePanel("Editbox")
-	AddFriendFrame:SetStylePanel("Fixed", "Transparent", true)
-	ScrollOfResurrectionSelectionFrame:SetStylePanel("Fixed", 'Transparent')
-	ScrollOfResurrectionSelectionFrameList:SetStylePanel("Fixed", 'Default')
+	AddFriendFrame:SetStylePanel("!_Frame", "Transparent", true)
+	ScrollOfResurrectionSelectionFrame:SetStylePanel("!_Frame", 'Transparent')
+	ScrollOfResurrectionSelectionFrameList:SetStylePanel("!_Frame", 'Default')
 	PLUGIN:ApplyScrollFrameStyle(ScrollOfResurrectionSelectionFrameListScrollFrameScrollBar, 4)
 	ScrollOfResurrectionSelectionFrameTargetEditBox:SetStylePanel("Editbox")
-	FriendsFrameBroadcastInput:SetStylePanel("Default", "Default")
-	ChannelFrameDaughterFrameChannelName:SetStylePanel("Default", "Default")
-	ChannelFrameDaughterFrameChannelPassword:SetStylePanel("Default", "Default")
+	FriendsFrameBroadcastInput:SetStylePanel("Frame", "Default")
+	ChannelFrameDaughterFrameChannelName:SetStylePanel("Frame", "Default")
+	ChannelFrameDaughterFrameChannelPassword:SetStylePanel("Frame", "Default")

 	ChannelFrame:HookScript("OnShow", function()
 		ChannelRosterScrollFrame:RemoveTextures()
@@ -219,7 +219,7 @@ local function FriendsFrameStyle()
 		WhoListScrollFrame:RemoveTextures()
 	end)

-	ChannelFrameDaughterFrame:SetStylePanel("Default", 'Inset')
+	ChannelFrameDaughterFrame:SetStylePanel("Frame", 'Inset')
 	PLUGIN:ApplyCloseButtonStyle(ChannelFrameDaughterFrameDetailCloseButton, ChannelFrameDaughterFrame)
 	PLUGIN:ApplyCloseButtonStyle(FriendsFrameCloseButton, FriendsFrame.Panel)
 	PLUGIN:ApplyDropdownStyle(WhoFrameDropDown, 150)
@@ -233,7 +233,7 @@ local function FriendsFrameStyle()
 	end

 	hooksecurefunc("ChannelList_Update", ChannelList_OnUpdate)
-	FriendsFriendsFrame:SetStylePanel("Default", 'Inset')
+	FriendsFriendsFrame:SetStylePanel("Frame", 'Inset')

 	_G["FriendsFriendsFrame"]:RemoveTextures()
 	_G["FriendsFriendsList"]:RemoveTextures()
@@ -246,29 +246,29 @@ local function FriendsFrameStyle()
 	FriendsFriendsNoteFrame:SetStylePanel("Editbox")
 	PLUGIN:ApplyDropdownStyle(FriendsFriendsFrameDropDown, 150)
 	BNConversationInviteDialog:RemoveTextures()
-	BNConversationInviteDialog:SetStylePanel("Default", 'Transparent')
+	BNConversationInviteDialog:SetStylePanel("Frame", 'Transparent')
 	BNConversationInviteDialogList:RemoveTextures()
-	BNConversationInviteDialogList:SetStylePanel("Fixed", 'Default')
+	BNConversationInviteDialogList:SetStylePanel("!_Frame", 'Default')
 	BNConversationInviteDialogInviteButton:SetStylePanel("Button")
 	BNConversationInviteDialogCancelButton:SetStylePanel("Button")
 	for i = 1, BN_CONVERSATION_INVITE_NUM_DISPLAYED do
 		 _G["BNConversationInviteDialogListFriend"..i].checkButton:SetStylePanel("Checkbox", true)
 	end
-	FriendsTabHeaderSoRButton:SetStylePanel("Fixed", 'Default')
+	FriendsTabHeaderSoRButton:SetStylePanel("!_Frame", 'Default')
 	FriendsTabHeaderSoRButton:SetStylePanel("Button")
 	FriendsTabHeaderSoRButtonIcon:SetDrawLayer('OVERLAY')
 	FriendsTabHeaderSoRButtonIcon:SetTexCoord(0.1, 0.9, 0.1, 0.9)
 	FriendsTabHeaderSoRButtonIcon:SetAllPointsIn()
 	FriendsTabHeaderSoRButton:SetPointToScale('TOPRIGHT', FriendsTabHeader, 'TOPRIGHT', -8, -56)
-	FriendsTabHeaderRecruitAFriendButton:SetStylePanel("Fixed", 'Default')
+	FriendsTabHeaderRecruitAFriendButton:SetStylePanel("!_Frame", 'Default')
 	FriendsTabHeaderRecruitAFriendButton:SetStylePanel("Button")
 	FriendsTabHeaderRecruitAFriendButtonIcon:SetDrawLayer('OVERLAY')
 	FriendsTabHeaderRecruitAFriendButtonIcon:SetTexCoord(0.1, 0.9, 0.1, 0.9)
 	FriendsTabHeaderRecruitAFriendButtonIcon:SetAllPointsIn()

-	FriendsFrameIgnoreScrollFrame:SetStylePanel("Fixed", "ModelBorder")
+	FriendsFrameIgnoreScrollFrame:SetStylePanel("!_Frame", "ModelBorder")
 	PLUGIN:ApplyScrollFrameStyle(FriendsFrameIgnoreScrollFrameScrollBar, 4)
-	FriendsFramePendingScrollFrame:SetStylePanel("Fixed", "Inset")
+	FriendsFramePendingScrollFrame:SetStylePanel("!_Frame", "Inset")
 	PLUGIN:ApplyScrollFrameStyle(FriendsFramePendingScrollFrameScrollBar, 4)
 	IgnoreListFrame:RemoveTextures()
 	PendingListFrame:RemoveTextures()
@@ -279,9 +279,9 @@ local function FriendsFrameStyle()
 	ScrollOfResurrectionFrameTargetEditBoxMiddle:SetTexture(0,0,0,0)
 	ScrollOfResurrectionFrameTargetEditBoxRight:SetTexture(0,0,0,0)
 	ScrollOfResurrectionFrameNoteFrame:RemoveTextures()
-	ScrollOfResurrectionFrameNoteFrame:SetStylePanel("Fixed")
-	ScrollOfResurrectionFrameTargetEditBox:SetStylePanel("Fixed")
-	ScrollOfResurrectionFrame:SetStylePanel("Fixed", 'Transparent')
+	ScrollOfResurrectionFrameNoteFrame:SetStylePanel("!_Frame")
+	ScrollOfResurrectionFrameTargetEditBox:SetStylePanel("!_Frame")
+	ScrollOfResurrectionFrame:SetStylePanel("!_Frame", 'Transparent')
 end
 --[[
 ##########################################################
diff --git a/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/garrison.lua b/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/garrison.lua
index 55cb69e..fc5e3b6 100644
--- a/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/garrison.lua
+++ b/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/garrison.lua
@@ -120,7 +120,7 @@ local _hook_ReagentUpdate = function(self)
     for i = 1, #reagents do
     	if(reagents[i] and (not reagents[i].Panel)) then
     		reagents[i]:RemoveTextures()
-        	reagents[i]:SetStylePanel("Slot", true, 2, 0, 0, 0.5)
+        	reagents[i]:SetStylePanel("Slot", 2, 0, 0, 0.5)
         	if(reagents[i].Icon) then
 				reagents[i].Icon:SetTexCoord(0.1, 0.9, 0.1, 0.9)
 			end
@@ -156,7 +156,7 @@ local _hook_GarrisonFollowerListUpdate = function(self)
         	local follower = followers[followersList[index]];
 	        if(not button.Panel) then
 	            button:RemoveTextures()
-	            button:SetStylePanel("Default", 'Blackout', true, 1, 0, 0)
+	            button:SetStylePanel("Frame", 'Blackout', true, 1, 0, 0)
 				if(button.XPBar) then
 					button.XPBar:SetTexture([[Interface\AddOns\SVUI\assets\artwork\Bars\DEFAULT]])
 					button.XPBar:SetGradient('HORIZONTAL', 0.5, 0, 1, 1, 0, 1)
@@ -223,7 +223,7 @@ local _hook_GarrisonFollowerPage_ShowFollower = function(self, followerID)
     if(not self.XPBar.Panel) then
 	    self.XPBar:RemoveTextures()
 		self.XPBar:SetStatusBarTexture([[Interface\AddOns\SVUI\assets\artwork\Bars\DEFAULT]])
-		self.XPBar:SetStylePanel("Fixed", "Bar")
+		self.XPBar:SetStylePanel("!_Frame", "Bar")
 	end

     for i=1, #self.AbilitiesFrame.Abilities do
@@ -272,7 +272,7 @@ local function StyleListButtons(listButtons)
 	    	local size = frame:GetHeight() - 6
 	    	local texture = frame.Icon:GetTexture()
 			frame:RemoveTextures()
-	    	frame:SetStylePanel("Fixed", 'Blackout', true, 3)
+	    	frame:SetStylePanel("!_Frame", 'Blackout', true, 3)
 	    	frame.Icon:SetTexture(texture)
 			frame.Icon:SetTexCoord(0.1, 0.9, 0.1, 0.9)
 			frame.Icon:ClearAllPoints()
@@ -307,15 +307,15 @@ local function LoadGarrisonStyle()
 	PLUGIN:ApplyTabStyle(GarrisonMissionFrameTab2)

 	GarrisonBuildingFrameFollowers:RemoveTextures()
-	GarrisonBuildingFrameFollowers:SetStylePanel("Default", 'Inset', true, 1, -5, -5)
+	GarrisonBuildingFrameFollowers:SetStylePanel("Frame", 'Inset', true, 1, -5, -5)
 	GarrisonBuildingFrameFollowers:ClearAllPoints()
 	GarrisonBuildingFrameFollowers:SetPoint("LEFT", GarrisonBuildingFrame, "LEFT", 10, 0)
 	GarrisonBuildingFrame.BuildingList:RemoveTextures()
-	GarrisonBuildingFrame.BuildingList:SetStylePanel("Fixed", 'Inset')
+	GarrisonBuildingFrame.BuildingList:SetStylePanel("!_Frame", 'Inset')
 	GarrisonBuildingFrame.TownHallBox:RemoveTextures()
-	GarrisonBuildingFrame.TownHallBox:SetStylePanel("Fixed", 'Inset')
+	GarrisonBuildingFrame.TownHallBox:SetStylePanel("!_Frame", 'Inset')
 	GarrisonBuildingFrame.InfoBox:RemoveTextures()
-	GarrisonBuildingFrame.InfoBox:SetStylePanel("Fixed", 'Inset')
+	GarrisonBuildingFrame.InfoBox:SetStylePanel("!_Frame", 'Inset')
 	--PLUGIN:ApplyTabStyle(GarrisonBuildingFrame.BuildingList.Tab1)
 	GarrisonBuildingFrame.BuildingList.Tab1:GetNormalTexture().SetAtlas = function() return end
 	GarrisonBuildingFrame.BuildingList.Tab1:RemoveTextures(true)
@@ -329,26 +329,26 @@ local function LoadGarrisonStyle()
 	GarrisonBuildingFrame.BuildingList.Tab3:RemoveTextures(true)
 	GarrisonBuildingFrame.BuildingList.Tab3:SetStylePanel("Button", false, 1, -4, -10)
 	GarrisonBuildingFrame.BuildingList.MaterialFrame:RemoveTextures()
-	GarrisonBuildingFrame.BuildingList.MaterialFrame:SetStylePanel("Default", "Inset", true, 1, -5, -7)
+	GarrisonBuildingFrame.BuildingList.MaterialFrame:SetStylePanel("Frame", "Inset", true, 1, -5, -7)
 	GarrisonBuildingFrameTutorialButton:Die()

 	StyleUpdateRewards()

 	GarrisonLandingPage.FollowerTab:RemoveTextures()
 	GarrisonLandingPage.FollowerTab.AbilitiesFrame:RemoveTextures()
-	GarrisonLandingPage.FollowerTab:SetStylePanel("Default", "ModelBorder")
+	GarrisonLandingPage.FollowerTab:SetStylePanel("Frame", "ModelBorder")

 	GarrisonLandingPage.FollowerTab.Panel:ClearAllPoints()
 	GarrisonLandingPage.FollowerTab.Panel:SetPoint("TOPLEFT", GarrisonLandingPage.FollowerList.SearchBox, "TOPRIGHT", 10, 6)
 	GarrisonLandingPage.FollowerTab.Panel:SetPoint("BOTTOMRIGHT", GarrisonLandingPage, "BOTTOMRIGHT", -38, 30)

 	GarrisonLandingPage.FollowerList:RemoveTextures()
-	GarrisonLandingPage.FollowerList:SetStylePanel("Default", 'Inset', false, 4, 0, 0)
+	GarrisonLandingPage.FollowerList:SetStylePanel("Frame", 'Inset', false, 4, 0, 0)

 	local bgFrameTop = CreateFrame("Frame", nil, GarrisonLandingPage.Report)
 	bgFrameTop:SetPoint("TOPLEFT", GarrisonLandingPage.Report, "TOPLEFT", 38, -91)
 	bgFrameTop:SetPoint("BOTTOMRIGHT", GarrisonLandingPage.Report.List, "BOTTOMLEFT", -4, 0)
-	bgFrameTop:SetStylePanel("Default", "Paper")
+	bgFrameTop:SetStylePanel("Frame", "Paper")
 	bgFrameTop:SetPanelColor("special")

 	PLUGIN:ApplyTabStyle(GarrisonLandingPageTab1, nil, 10, 4)
@@ -358,7 +358,7 @@ local function LoadGarrisonStyle()
 	GarrisonLandingPageTab1:SetPoint(a1, p, a2, x, (y - 15))

 	GarrisonLandingPageReportList:RemoveTextures()
-	GarrisonLandingPageReportList:SetStylePanel("Default", 'Inset', false, 4, 0, 0)
+	GarrisonLandingPageReportList:SetStylePanel("Frame", 'Inset', false, 4, 0, 0)

 	GarrisonLandingPageReport.Available:RemoveTextures(true)
 	GarrisonLandingPageReport.Available:SetStylePanel("Button")
@@ -369,11 +369,11 @@ local function LoadGarrisonStyle()
 	GarrisonLandingPageReport.InProgress:GetNormalTexture().SetAtlas = function() return end

 	GarrisonMissionFrameMissions:RemoveTextures()
-	GarrisonMissionFrameMissions:SetStylePanel("Fixed", "Inset")
+	GarrisonMissionFrameMissions:SetStylePanel("!_Frame", "Inset")
 	GarrisonMissionFrameMissions.CompleteDialog.BorderFrame:RemoveTextures()
-	GarrisonMissionFrameMissions.CompleteDialog.BorderFrame:SetStylePanel("Default", 'Halftone', false, 4, 0, 0)
+	GarrisonMissionFrameMissions.CompleteDialog.BorderFrame:SetStylePanel("Frame", 'Composite1', false, 4, 0, 0)
 	GarrisonMissionFrameMissions.CompleteDialog.BorderFrame.Stage:RemoveTextures()
-	GarrisonMissionFrameMissions.CompleteDialog.BorderFrame.Stage:SetStylePanel("Fixed", "Model")
+	GarrisonMissionFrameMissions.CompleteDialog.BorderFrame.Stage:SetStylePanel("!_Frame", "Model")
 	GarrisonMissionFrameMissions.CompleteDialog.BorderFrame.ViewButton:RemoveTextures(true)
 	GarrisonMissionFrameMissions.CompleteDialog.BorderFrame.ViewButton:SetStylePanel("Button")

@@ -386,10 +386,10 @@ local function LoadGarrisonStyle()
 	GarrisonMissionFrameMissionsTab1:SetPoint(a1, p, a2, x, (y + 8))

 	GarrisonMissionFrameMissions.MaterialFrame:RemoveTextures()
-	GarrisonMissionFrameMissions.MaterialFrame:SetStylePanel("Default", "Inset", true, 1, -3, -3)
+	GarrisonMissionFrameMissions.MaterialFrame:SetStylePanel("Frame", "Inset", true, 1, -3, -3)

 	GarrisonMissionFrame.FollowerTab:RemoveTextures()
-	GarrisonMissionFrame.FollowerTab:SetStylePanel("Fixed", "ModelBorder")
+	GarrisonMissionFrame.FollowerTab:SetStylePanel("!_Frame", "ModelBorder")

 	GarrisonMissionFrame.FollowerTab.ItemWeapon:RemoveTextures()
 	StyleListItem(GarrisonMissionFrame.FollowerTab.ItemWeapon)
@@ -398,7 +398,7 @@ local function LoadGarrisonStyle()

 	GarrisonMissionFrame.MissionTab:RemoveTextures()
 	GarrisonMissionFrame.MissionTab.MissionPage:RemoveTextures()
-	GarrisonMissionFrame.MissionTab.MissionPage:SetStylePanel("Default", 'Paper', false, 4, 0, 0)
+	GarrisonMissionFrame.MissionTab.MissionPage:SetStylePanel("Frame", 'Paper', false, 4, 0, 0)
 	GarrisonMissionFrame.MissionTab.MissionPage:SetPanelColor("special")

 	local missionChance = GarrisonMissionFrame.MissionTab.MissionPage.RewardsFrame.Chance;
@@ -419,9 +419,9 @@ local function LoadGarrisonStyle()
 	GarrisonMissionFrame.MissionTab.MissionPage.StartMissionButton:SetStylePanel("Button")

 	GarrisonMissionFrameFollowers:RemoveTextures()
-	GarrisonMissionFrameFollowers:SetStylePanel("Default", 'Inset', false, 4, 0, 0)
+	GarrisonMissionFrameFollowers:SetStylePanel("Frame", 'Inset', false, 4, 0, 0)
 	GarrisonMissionFrameFollowers.MaterialFrame:RemoveTextures()
-	GarrisonMissionFrameFollowers.MaterialFrame:SetStylePanel("Default", "Inset", true, 1, -5, -7)
+	GarrisonMissionFrameFollowers.MaterialFrame:SetStylePanel("Frame", "Inset", true, 1, -5, -7)
 	PLUGIN:ApplyEditBoxStyle(GarrisonMissionFrameFollowers.SearchBox)

 	--GarrisonMissionFrameFollowersListScrollFrame
@@ -431,7 +431,7 @@ local function LoadGarrisonStyle()
 	local mFollowers = mStage.FollowersFrame;

 	mComplete:RemoveTextures()
-	mComplete:SetStylePanel("Default", 'Paper', false, 4, 0, 0)
+	mComplete:SetStylePanel("Frame", 'Paper', false, 4, 0, 0)
 	mComplete:SetPanelColor("special")
 	mStage:RemoveTextures()
 	mStage.MissionInfo:RemoveTextures()
@@ -451,22 +451,22 @@ local function LoadGarrisonStyle()
 	mComplete.NextMissionButton:SetStylePanel("Button")

 	--GarrisonMissionFrame.MissionComplete.BonusRewards:RemoveTextures()
-	--GarrisonMissionFrame.MissionComplete.BonusRewards:SetStylePanel("Fixed", "Model")
+	--GarrisonMissionFrame.MissionComplete.BonusRewards:SetStylePanel("!_Frame", "Model")

 	local display = GarrisonCapacitiveDisplayFrame
 	display:RemoveTextures(true)
 	GarrisonCapacitiveDisplayFrameInset:RemoveTextures(true)
 	display.CapacitiveDisplay:RemoveTextures(true)
-	display.CapacitiveDisplay:SetStylePanel("Default", 'Transparent')
-	display.CapacitiveDisplay.ShipmentIconFrame:SetStylePanel("Slot", true, 2, 0, 0, 0.5)
+	display.CapacitiveDisplay:SetStylePanel("Frame", 'Transparent')
+	display.CapacitiveDisplay.ShipmentIconFrame:SetStylePanel("Slot", 2, 0, 0, 0.5)
 	display.CapacitiveDisplay.ShipmentIconFrame.Icon:SetTexCoord(0.1, 0.9, 0.1, 0.9)
-	display:SetStylePanel("Default", 'Action')
+	display:SetStylePanel("Frame", "Composite2")

 	local reagents = display.CapacitiveDisplay.Reagents;
     for i = 1, #reagents do
     	if(reagents[i]) then
     		reagents[i]:RemoveTextures()
-        	reagents[i]:SetStylePanel("Slot", true, 2, 0, 0, 0.5)
+        	reagents[i]:SetStylePanel("Slot", 2, 0, 0, 0.5)
         	if(reagents[i].Icon) then
 				reagents[i].Icon:SetTexCoord(0.1, 0.9, 0.1, 0.9)
 			end
@@ -511,24 +511,24 @@ local function LoadGarrisonStyle()

 	PLUGIN:ApplyWindowStyle(GarrisonRecruiterFrame, true)
 	GarrisonRecruiterFrameInset:RemoveTextures()
-	GarrisonRecruiterFrameInset:SetStylePanel("Fixed", "Inset")
+	GarrisonRecruiterFrameInset:SetStylePanel("!_Frame", "Inset")
 	PLUGIN:ApplyDropdownStyle(GarrisonRecruiterFramePickThreatDropDown)
-	GarrisonRecruiterFrame.Pick.Radio1:SetStylePanel("Colored", true, -3, -3)
-	GarrisonRecruiterFrame.Pick.Radio2:SetStylePanel("Colored", true, -3, -3)
+	GarrisonRecruiterFrame.Pick.Radio1:SetStylePanel("!_Checkbox", false, -3, -3, true)
+	GarrisonRecruiterFrame.Pick.Radio2:SetStylePanel("!_Checkbox", false, -3, -3, true)

 	PLUGIN:ApplyWindowStyle(GarrisonRecruitSelectFrame, true)
 	GarrisonRecruitSelectFrame.FollowerSelection:RemoveTextures()

 	GarrisonRecruitSelectFrame.FollowerList:RemoveTextures()
-	GarrisonRecruitSelectFrame.FollowerList:SetStylePanel("Default", 'Inset', false, 4, 0, 0)
+	GarrisonRecruitSelectFrame.FollowerList:SetStylePanel("Frame", 'Inset', false, 4, 0, 0)

 	GarrisonRecruitSelectFrame.FollowerSelection.Recruit1:RemoveTextures()
 	GarrisonRecruitSelectFrame.FollowerSelection.Recruit2:RemoveTextures()
 	GarrisonRecruitSelectFrame.FollowerSelection.Recruit3:RemoveTextures()

-	GarrisonRecruitSelectFrame.FollowerSelection.Recruit1:SetStylePanel("Default", 'Inset')
-	GarrisonRecruitSelectFrame.FollowerSelection.Recruit2:SetStylePanel("Default", 'Inset')
-	GarrisonRecruitSelectFrame.FollowerSelection.Recruit3:SetStylePanel("Default", 'Inset')
+	GarrisonRecruitSelectFrame.FollowerSelection.Recruit1:SetStylePanel("Frame", 'Inset')
+	GarrisonRecruitSelectFrame.FollowerSelection.Recruit2:SetStylePanel("Frame", 'Inset')
+	GarrisonRecruitSelectFrame.FollowerSelection.Recruit3:SetStylePanel("Frame", 'Inset')

 	StyleFollowerPortrait(GarrisonRecruitSelectFrame.FollowerSelection.Recruit1.PortraitFrame)
 	StyleFollowerPortrait(GarrisonRecruitSelectFrame.FollowerSelection.Recruit2.PortraitFrame)
diff --git a/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/gossip.lua b/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/gossip.lua
index 6dea61d..ef978bb 100644
--- a/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/gossip.lua
+++ b/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/gossip.lua
@@ -45,7 +45,7 @@ local function GossipStyle()
 			ItemTextPageText:SetTextColor(1, 1, 1)
 		end
 	end)
-	ItemTextFrame:SetStylePanel("Default", "Pattern")
+	ItemTextFrame:SetStylePanel("Frame", "Pattern")
 	ItemTextFrameInset:Die()
 	PLUGIN:ApplyScrollFrameStyle(ItemTextScrollFrameScrollBar)
 	PLUGIN:ApplyCloseButtonStyle(ItemTextFrameCloseButton)
@@ -54,8 +54,8 @@ local function GossipStyle()
 	for s, t in pairs(r)do
 		_G[t]:RemoveTextures()
 	end
-	GossipFrame:SetStylePanel("Default", "Halftone")
-	GossipGreetingScrollFrame:SetStylePanel("Fixed", "Inset", true)
+	GossipFrame:SetStylePanel("Frame", "Composite1")
+	GossipGreetingScrollFrame:SetStylePanel("!_Frame", "Inset", true)
 	GossipGreetingScrollFrame.spellTex = GossipGreetingScrollFrame:CreateTexture(nil, "ARTWORK")
 	GossipGreetingScrollFrame.spellTex:SetTexture([[Interface\QuestFrame\QuestBG]])
 	GossipGreetingScrollFrame.spellTex:SetPoint("TOPLEFT", 2, -2)
@@ -68,7 +68,7 @@ local function GossipStyle()

 	NPCFriendshipStatusBar:RemoveTextures()
 	NPCFriendshipStatusBar:SetStatusBarTexture([[Interface\AddOns\SVUI\assets\artwork\Template\DEFAULT]])
-	NPCFriendshipStatusBar:SetStylePanel("Default", "Bar")
+	NPCFriendshipStatusBar:SetStylePanel("Frame", "Bar")

 	NPCFriendshipStatusBar:ClearAllPoints()
 	NPCFriendshipStatusBar:SetPoint("TOPLEFT", GossipFrame, "TOPLEFT", 58, -34)
diff --git a/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/guild.lua b/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/guild.lua
index 7dad096..f571f67 100644
--- a/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/guild.lua
+++ b/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/guild.lua
@@ -382,7 +382,7 @@ local function GuildBankStyle()
 	local sortButton = CreateFrame("Button", nil, GuildBankFrame)
 	sortButton:SetPointToScale("BOTTOMLEFT", GuildBankFrame, "BOTTOMRIGHT", 2, 0)
 	sortButton:SetSizeToScale(36, 36)
-	sortButton:SetStylePanel("Framed")
+	sortButton:SetStylePanel("HeavyButton")
 	sortButton:SetNormalTexture([[Interface\AddOns\SVUI\assets\artwork\Icons\BAGS-CLEANUP]])
 	--StyleSortingButton(sortButton)
 	local Sort_OnClick = BAGS:RunSortingProcess(BAGS.Sort, "guild")
@@ -408,7 +408,7 @@ local function GuildBankStyle()
 						texture:SetTexture(0,0,0,0)
 					end
 					button:RemoveTextures()
-					button:SetStylePanel("Slot", true, 2, 0, 0)
+					button:SetStylePanel("Slot", 2, 0, 0)

 					local icon = _G[btnName.."IconTexture"]
 					if(icon) then
@@ -451,7 +451,7 @@ local function GuildBankStyle()

 	GuildBankPopupFrame:RemoveTextures()
 	GuildBankPopupScrollFrame:RemoveTextures()
-	GuildBankPopupFrame:SetStylePanel("Fixed", "Transparent", true)
+	GuildBankPopupFrame:SetStylePanel("!_Frame", "Transparent", true)
 	GuildBankPopupFrame:SetPointToScale("TOPLEFT", GuildBankFrame, "TOPRIGHT", 1, -30)
 	GuildBankPopupOkayButton:SetStylePanel("Button")
 	GuildBankPopupCancelButton:SetStylePanel("Button")
@@ -460,7 +460,7 @@ local function GuildBankStyle()
 	GuildBankPopupNameRight:Die()
 	GuildBankPopupNameMiddle:Die()
 	GuildItemSearchBox:RemoveTextures()
-	GuildItemSearchBox:SetStylePanel("Default", "Overlay")
+	GuildItemSearchBox:SetStylePanel("Frame", "Overlay")
 	GuildItemSearchBox.Panel:SetPointToScale("TOPLEFT", 10, -1)
 	GuildItemSearchBox.Panel:SetPointToScale("BOTTOMRIGHT", 4, 1)

@@ -469,7 +469,7 @@ local function GuildBankStyle()
 		local button = _G[btnName]
 		if(button) then
 			button:RemoveTextures()
-			button:SetStylePanel("Fixed", "Default")
+			button:SetStylePanel("!_Frame", "Default")
 			button:SetStylePanel("Button")

 			local icon = _G[btnName.."Icon"]
@@ -526,8 +526,8 @@ local function GuildFrameStyle()
 		end
 	end

-	GuildNewsBossModel:SetStylePanel("Default", 'Transparent')
-	GuildNewsBossModelTextFrame:SetStylePanel("Default", "Default")
+	GuildNewsBossModel:SetStylePanel("Frame", 'Transparent')
+	GuildNewsBossModelTextFrame:SetStylePanel("Frame", "Default")
 	GuildNewsBossModelTextFrame.Panel:SetPointToScale("TOPLEFT", GuildNewsBossModel.Panel, "BOTTOMLEFT", 0, -1)
 	GuildNewsBossModel:SetPoint("TOPLEFT", GuildFrame, "TOPRIGHT", 4, -43)

@@ -537,11 +537,11 @@ local function GuildFrameStyle()

 	GuildFactionBar:RemoveTextures()
 	GuildFactionBar.progress:SetTexture([[Interface\AddOns\SVUI\assets\artwork\Template\DEFAULT]])
-	GuildFactionBar:SetStylePanel("Default", "Inset")
+	GuildFactionBar:SetStylePanel("Frame", "Inset")
 	GuildFactionBar.Panel:SetPointToScale("TOPLEFT", GuildFactionBar.progress, "TOPLEFT", -1, 1)
 	GuildFactionBar.Panel:SetPointToScale("BOTTOMRIGHT", GuildFactionBar, "BOTTOMRIGHT", 1, 1)

-	GuildRosterContainer:SetStylePanel("Default", "Inset")
+	GuildRosterContainer:SetStylePanel("Frame", "Inset")
 	PLUGIN:ApplyScrollFrameStyle(GuildRosterContainerScrollBar, 4, -4)
 	GuildRosterShowOfflineButton:SetStylePanel("Checkbox", true)

@@ -562,15 +562,15 @@ local function GuildFrameStyle()
 		end
 	end

-	GuildMemberDetailFrame:SetStylePanel("Default", "Default", true)
-	GuildMemberNoteBackground:SetStylePanel("Default", 'Transparent')
-	GuildMemberOfficerNoteBackground:SetStylePanel("Default", 'Transparent')
+	GuildMemberDetailFrame:SetStylePanel("Frame", "Default", true)
+	GuildMemberNoteBackground:SetStylePanel("Frame", 'Transparent')
+	GuildMemberOfficerNoteBackground:SetStylePanel("Frame", 'Transparent')

 	PLUGIN:ApplyDropdownStyle(GuildMemberRankDropdown, 182)
 	GuildMemberRankDropdown:HookScript("OnShow", function() GuildMemberDetailRankText:Hide() end)
 	GuildMemberRankDropdown:HookScript("OnHide", function() GuildMemberDetailRankText:Show() end)
 	GuildNewsFrame:RemoveTextures()
-	GuildNewsContainer:SetStylePanel("Default", "Inset")
+	GuildNewsContainer:SetStylePanel("Frame", "Inset")

 	for i = 1, 17 do
 		local btn = _G["GuildNewsContainerButton"..i]
@@ -582,7 +582,7 @@ local function GuildFrameStyle()
 	end

 	GuildNewsFiltersFrame:RemoveTextures()
-	GuildNewsFiltersFrame:SetStylePanel("Fixed", "Transparent", true)
+	GuildNewsFiltersFrame:SetStylePanel("!_Frame", "Transparent", true)
 	PLUGIN:ApplyCloseButtonStyle(GuildNewsFiltersFrameCloseButton)

 	for i = 1, 7 do
@@ -606,22 +606,22 @@ local function GuildFrameStyle()
 	local panel1 = CreateFrame("Frame", nil, GuildInfoFrameInfo)
 	panel1:SetPoint("TOPLEFT", GuildInfoFrameInfo, "TOPLEFT", 2, -22)
 	panel1:SetPoint("BOTTOMRIGHT", GuildInfoFrameInfo, "BOTTOMRIGHT", 0, 200)
-	panel1:SetStylePanel("Default", 'Transparent')
+	panel1:SetStylePanel("Frame", 'Transparent')

 	local panel2 = CreateFrame("Frame", nil, GuildInfoFrameInfo)
 	panel2:SetPoint("TOPLEFT", GuildInfoFrameInfo, "TOPLEFT", 2, -158)
 	panel2:SetPoint("BOTTOMRIGHT", GuildInfoFrameInfo, "BOTTOMRIGHT", 0, 118)
-	panel2:SetStylePanel("Default", 'Transparent')
+	panel2:SetStylePanel("Frame", 'Transparent')

 	local panel3 = CreateFrame("Frame", nil, GuildInfoFrameInfo)
 	panel3:SetPoint("TOPLEFT", GuildInfoFrameInfo, "TOPLEFT", 2, -233)
 	panel3:SetPoint("BOTTOMRIGHT", GuildInfoFrameInfo, "BOTTOMRIGHT", 0, 3)
-	panel3:SetStylePanel("Default", 'Transparent')
+	panel3:SetStylePanel("Frame", 'Transparent')

-	GuildRecruitmentCommentInputFrame:SetStylePanel("Fixed", "Default")
-	GuildTextEditFrame:SetStylePanel("Fixed", "Transparent", true)
+	GuildRecruitmentCommentInputFrame:SetStylePanel("!_Frame", "Default")
+	GuildTextEditFrame:SetStylePanel("!_Frame", "Transparent", true)
 	PLUGIN:ApplyScrollFrameStyle(GuildTextEditScrollFrameScrollBar, 4, 4)
-	GuildTextEditContainer:SetStylePanel("Fixed", "Default")
+	GuildTextEditContainer:SetStylePanel("!_Frame", "Default")

 	local editChildren = GuildTextEditFrame:GetNumChildren()

@@ -637,7 +637,7 @@ local function GuildFrameStyle()
 	end

 	PLUGIN:ApplyScrollFrameStyle(GuildLogScrollFrameScrollBar, 4, 4)
-	GuildLogFrame:SetStylePanel("Default", 'Transparent')
+	GuildLogFrame:SetStylePanel("Frame", 'Transparent')

 	local logChildren = GuildLogFrame:GetNumChildren()

@@ -652,7 +652,7 @@ local function GuildFrameStyle()
 		end
 	end

-	GuildRewardsFrame:SetStylePanel("Default", "Inset")
+	GuildRewardsFrame:SetStylePanel("Frame", "Inset")
 	PLUGIN:ApplyScrollFrameStyle(GuildRewardsContainerScrollBar, 4, -4)
 	PLUGIN:ApplyScrollFrameStyle(GuildPerksContainerScrollBar, 4, 2)

@@ -794,7 +794,7 @@ local function LFGuildFrameStyle()
 	LookingForGuildRequestButton:SetStylePanel("Button")

 	PLUGIN:ApplyCloseButtonStyle(LookingForGuildFrameCloseButton)
-	LookingForGuildCommentInputFrame:SetStylePanel("Default", "Default")
+	LookingForGuildCommentInputFrame:SetStylePanel("Frame", "Default")
 	LookingForGuildCommentInputFrame:RemoveTextures(false)

 	for u = 1, 5 do
@@ -812,11 +812,11 @@ local function LFGuildFrameStyle()
 	end

 	GuildFinderRequestMembershipFrame:RemoveTextures(true)
-	GuildFinderRequestMembershipFrame:SetStylePanel("Fixed", "Transparent", true)
+	GuildFinderRequestMembershipFrame:SetStylePanel("!_Frame", "Transparent", true)
 	GuildFinderRequestMembershipFrameAcceptButton:SetStylePanel("Button")
 	GuildFinderRequestMembershipFrameCancelButton:SetStylePanel("Button")
 	GuildFinderRequestMembershipFrameInputFrame:RemoveTextures()
-	GuildFinderRequestMembershipFrameInputFrame:SetStylePanel("Fixed", "Default")
+	GuildFinderRequestMembershipFrameInputFrame:SetStylePanel("!_Frame", "Default")
 end
 --[[
 ##########################################################
diff --git a/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/help.lua b/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/help.lua
index d1b88e7..5a00f31 100644
--- a/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/help.lua
+++ b/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/help.lua
@@ -78,12 +78,12 @@ local function HelpFrameStyle()
 	tinsert(HelpFrameButtonList, "HelpFrameReportBugSubmit")
 	for d = 1, #HelpFrameList do
 		_G[HelpFrameList[d]]:RemoveTextures(true)
-		_G[HelpFrameList[d]]:SetStylePanel("Default", "Default")
+		_G[HelpFrameList[d]]:SetStylePanel("Frame", "Default")
 	end
 	HelpFrameHeader:SetFrameLevel(HelpFrameHeader:GetFrameLevel()+2)
 	HelpFrameKnowledgebaseErrorFrame:SetFrameLevel(HelpFrameKnowledgebaseErrorFrame:GetFrameLevel()+2)
 	HelpFrameReportBugScrollFrame:RemoveTextures()
-	HelpFrameReportBugScrollFrame:SetStylePanel("Default", "Default")
+	HelpFrameReportBugScrollFrame:SetStylePanel("Frame", "Default")
 	HelpFrameReportBugScrollFrame.Panel:SetPointToScale("TOPLEFT", -4, 4)
 	HelpFrameReportBugScrollFrame.Panel:SetPointToScale("BOTTOMRIGHT", 6, -4)
 	for d = 1, HelpFrameReportBug:GetNumChildren()do
@@ -94,7 +94,7 @@ local function HelpFrameStyle()
 	end
 	PLUGIN:ApplyScrollFrameStyle(HelpFrameReportBugScrollFrameScrollBar)
 	HelpFrameSubmitSuggestionScrollFrame:RemoveTextures()
-	HelpFrameSubmitSuggestionScrollFrame:SetStylePanel("Default", "Default")
+	HelpFrameSubmitSuggestionScrollFrame:SetStylePanel("Frame", "Default")
 	HelpFrameSubmitSuggestionScrollFrame.Panel:SetPointToScale("TOPLEFT", -4, 4)
 	HelpFrameSubmitSuggestionScrollFrame.Panel:SetPointToScale("BOTTOMRIGHT", 6, -4)
 	for d = 1, HelpFrameSubmitSuggestion:GetNumChildren()do
@@ -105,7 +105,7 @@ local function HelpFrameStyle()
 	end
 	PLUGIN:ApplyScrollFrameStyle(HelpFrameSubmitSuggestionScrollFrameScrollBar)
 	HelpFrameTicketScrollFrame:RemoveTextures()
-	HelpFrameTicketScrollFrame:SetStylePanel("Default", "Default")
+	HelpFrameTicketScrollFrame:SetStylePanel("Frame", "Default")
 	HelpFrameTicketScrollFrame.Panel:SetPointToScale("TOPLEFT", -4, 4)
 	HelpFrameTicketScrollFrame.Panel:SetPointToScale("BOTTOMRIGHT", 6, -4)
 	for d = 1, HelpFrameTicket:GetNumChildren()do
@@ -141,14 +141,14 @@ local function HelpFrameStyle()
 	HelpFrameKnowledgebaseNavBarOverlay:Die()
 	HelpFrameKnowledgebaseNavBar:RemoveTextures()
 	HelpFrame:RemoveTextures(true)
-	HelpFrame:SetStylePanel("Default", "Halftone")
+	HelpFrame:SetStylePanel("Frame", "Composite1")
 	HelpFrameKnowledgebaseSearchBox:SetStylePanel("Editbox")
 	PLUGIN:ApplyScrollFrameStyle(HelpFrameKnowledgebaseScrollFrameScrollBar, 5)
 	PLUGIN:ApplyScrollFrameStyle(HelpFrameTicketScrollFrameScrollBar, 4)
 	PLUGIN:ApplyCloseButtonStyle(HelpFrameCloseButton, HelpFrame.Panel)
 	PLUGIN:ApplyCloseButtonStyle(HelpFrameKnowledgebaseErrorFrameCloseButton, HelpFrameKnowledgebaseErrorFrame.Panel)
 	HelpFrameCharacterStuckHearthstone:SetStylePanel("Button")
-	HelpFrameCharacterStuckHearthstone:SetStylePanel("Fixed", "Default")
+	HelpFrameCharacterStuckHearthstone:SetStylePanel("!_Frame", "Default")
 	HelpFrameCharacterStuckHearthstone.IconTexture:SetAllPointsIn()
 	HelpFrameCharacterStuckHearthstone.IconTexture:SetTexCoord(0.1, 0.9, 0.1, 0.9)
 	hooksecurefunc("NavBar_AddButton", function(h, k)
@@ -169,7 +169,7 @@ local function HelpFrameStyle()
 		if e and e:GetObjectType()
 		 == "Frame"and not e:GetName()
 		then
-			e:SetStylePanel("Fixed", "Default")
+			e:SetStylePanel("!_Frame", "Default")
 		end
 	end
 end
diff --git a/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/inspect.lua b/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/inspect.lua
index 19e32b6..a78d182 100644
--- a/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/inspect.lua
+++ b/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/inspect.lua
@@ -60,7 +60,7 @@ local function InspectStyle()
 	end
 	InspectFrame:RemoveTextures(true)
 	InspectFrameInset:RemoveTextures(true)
-	InspectFrame:SetStylePanel("Default", 'Action')
+	InspectFrame:SetStylePanel("Frame", "Composite2")
 	PLUGIN:ApplyCloseButtonStyle(InspectFrameCloseButton)
 	for d = 1, 4 do
 		PLUGIN:ApplyTabStyle(_G["InspectFrameTab"..d])
@@ -75,7 +75,7 @@ local function InspectStyle()
 	InspectModelFrameBorderBottom:Die()
 	InspectModelFrameBorderBottom2:Die()
 	InspectModelFrameBackgroundOverlay:Die()
-	InspectModelFrame:SetStylePanel("Default", "Default")
+	InspectModelFrame:SetStylePanel("Frame", "Default")
 	for _, slot in pairs(InspectSlotList)do
 		local texture = _G["Inspect"..slot.."IconTexture"]
 		local frame = _G["Inspect"..slot]
@@ -84,7 +84,7 @@ local function InspectStyle()
 		texture:SetTexCoord(0.1, 0.9, 0.1, 0.9)
 		texture:SetAllPointsIn()
 		frame:SetFrameLevel(frame:GetFrameLevel() + 1)
-		frame:SetStylePanel("Fixed")
+		frame:SetStylePanel("!_Frame")
 	end
 	hooksecurefunc('InspectPaperDollItemSlotButton_Update', function(q)
 		local unit = InspectFrame.unit;
diff --git a/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/itemsocketing.lua b/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/itemsocketing.lua
index 0f7387f..4d63389 100644
--- a/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/itemsocketing.lua
+++ b/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/itemsocketing.lua
@@ -30,10 +30,10 @@ ITEMSOCKETING PLUGINR
 local function ItemSocketStyle()
 	if PLUGIN.db.blizzard.enable ~= true or PLUGIN.db.blizzard.socket ~= true then return end
 	ItemSocketingFrame:RemoveTextures()
-	ItemSocketingFrame:SetStylePanel("Default", "Action")
+	ItemSocketingFrame:SetStylePanel("Frame", "Composite2")
 	ItemSocketingFrameInset:Die()
 	ItemSocketingScrollFrame:RemoveTextures()
-	ItemSocketingScrollFrame:SetStylePanel("Default", "Inset", true)
+	ItemSocketingScrollFrame:SetStylePanel("Frame", "Inset", true)
 	PLUGIN:ApplyScrollFrameStyle(ItemSocketingScrollFrameScrollBar, 2)
 	for j = 1, MAX_NUM_SOCKETS do
 		local i = _G[("ItemSocketingSocket%d"):format(j)];
@@ -42,7 +42,7 @@ local function ItemSocketStyle()
 		local E = _G[("ItemSocketingSocket%dIconTexture"):format(j)];
 		i:RemoveTextures()
 		i:SetStylePanel("Button")
-		i:SetStylePanel("Fixed", "Button", true)
+		i:SetStylePanel("!_Frame", "Button", true)
 		C:Die()
 		D:Die()
 		E:SetTexCoord(0.1, 0.9, 0.1, 0.9)
diff --git a/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/itemupgrade.lua b/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/itemupgrade.lua
index e312c1a..5dbc536 100644
--- a/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/itemupgrade.lua
+++ b/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/itemupgrade.lua
@@ -38,7 +38,7 @@ local function ItemUpgradeStyle()
 	ItemUpgradeFrameUpgradeButton:RemoveTextures()
 	ItemUpgradeFrameUpgradeButton:SetStylePanel("Button")
 	ItemUpgradeFrame.ItemButton:RemoveTextures()
-	ItemUpgradeFrame.ItemButton:SetStylePanel("Slot", true)
+	ItemUpgradeFrame.ItemButton:SetStylePanel("Slot")
 	ItemUpgradeFrame.ItemButton.IconTexture:SetAllPointsIn()
 	hooksecurefunc('ItemUpgradeFrame_Update', function()
 		if GetItemUpgradeItemInfo() then
diff --git a/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/keybinding.lua b/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/keybinding.lua
index 3f2c22e..b24eefb 100644
--- a/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/keybinding.lua
+++ b/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/keybinding.lua
@@ -63,7 +63,7 @@ local function BindingStyle()

 	PLUGIN:ApplyScrollFrameStyle(KeyBindingFrameScrollFrameScrollBar)
 	KeyBindingFrame:RemoveTextures()
-	KeyBindingFrame:SetStylePanel("Default", "Halftone")
+	KeyBindingFrame:SetStylePanel("Frame", "Composite1")
 end
 --[[
 ##########################################################
diff --git a/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/lfd.lua b/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/lfd.lua
index 56d75e1..a83e4e3 100644
--- a/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/lfd.lua
+++ b/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/lfd.lua
@@ -51,7 +51,7 @@ local function StyleMoneyRewards(frameName)
       local size = frame:GetHeight() - 6
       local texture = icon:GetTexture()
       frame:RemoveTextures()
-      frame:SetStylePanel("Fixed", "Inset")
+      frame:SetStylePanel("!_Frame", "Inset")
       icon:SetTexture(texture)
       icon:SetTexCoord(0.1, 0.9, 0.1, 0.9)
       icon:ClearAllPoints()
@@ -95,7 +95,7 @@ local LFDQueueRandom_OnUpdate = function()
         z:SetSize(118, 39)
         x:SetAlpha(0)
         t.border = CreateFrame("Frame", nil, t)
-        t.border:SetStylePanel("Fixed")
+        t.border:SetStylePanel("!_Frame")
         t.border:SetAllPointsOut(icon)
         icon:SetParent(t.border)
         y:SetParent(t.border)
@@ -127,7 +127,7 @@ local ScenarioQueueRandom_OnUpdate = function()
         z:SetSize(118, 39)
         x:SetAlpha(0)
         t.border = CreateFrame("Frame", nil, t)
-        t.border:SetStylePanel("Fixed")
+        t.border:SetStylePanel("!_Frame")
         t.border:SetAllPointsOut(icon)
         icon:SetParent(t.border)
         y:SetParent(t.border)
@@ -179,7 +179,7 @@ local function LFDFrameStyle()
   PLUGIN:ApplyCloseButtonStyle(LFGDungeonReadyDialogCloseButton)

   LFGDungeonReadyStatus:RemoveTextures()
-  LFGDungeonReadyStatus:SetStylePanel("Default", "Pattern", true, 2, 4, 4)
+  LFGDungeonReadyStatus:SetStylePanel("Frame", "Pattern", true, 2, 4, 4)
   LFGDungeonReadyDialogRoleIconTexture:SetTexture("Interface\\LFGFrame\\UI-LFG-ICONS-ROLEBACKGROUNDS")
   LFGDungeonReadyDialogRoleIconTexture:SetAlpha(0.5)

@@ -265,7 +265,7 @@ local function LFDFrameStyle()
       button.ring:Hide()
       button.bg:SetTexture(0,0,0,0)
       button.bg:SetAllPoints()
-      button:SetStylePanel("Default", 'Button')
+      button:SetStylePanel("Frame", 'Button')
       button:SetStylePanel("Button")
       button.icon:SetTexCoord(0.1, 0.9, 0.1, 0.9)
       button.icon:SetDrawLayer("OVERLAY")
@@ -273,7 +273,7 @@ local function LFDFrameStyle()
       button.icon:ClearAllPoints()
       button.icon:SetPoint("LEFT", 10, 0)
       button.border = CreateFrame("Frame", nil, button)
-      button.border:SetStylePanel("Fixed", 'Default')
+      button.border:SetStylePanel("!_Frame", 'Default')
       button.border:SetAllPointsOut(button.icon)
       button.icon:SetParent(button.border)
     end
@@ -323,7 +323,7 @@ local function LFDFrameStyle()
         z:SetSize(118, 39)
         x:SetAlpha(0)
         t.border = CreateFrame("Frame", nil, t)
-        t.border:SetStylePanel("Fixed")
+        t.border:SetStylePanel("!_Frame")
         t.border:SetAllPointsOut(icon)
         icon:SetParent(t.border)
         y:SetParent(t.border)
@@ -359,7 +359,7 @@ local function LFDFrameStyle()
     end
   end

-  RaidBrowserFrame:SetStylePanel("Default", 'Pattern')
+  RaidBrowserFrame:SetStylePanel("Frame", 'Pattern')
   PLUGIN:ApplyCloseButtonStyle(RaidBrowserFrameCloseButton)
   LFRQueueFrameFindGroupButton:SetStylePanel("Button")
   LFRQueueFrameAcceptCommentButton:SetStylePanel("Button")
@@ -376,9 +376,9 @@ local function LFDFrameStyle()
         C:GetNormalTexture():SetTexCoord(0.1, 0.9, 0.1, 0.9)
         C:GetNormalTexture():SetAllPointsIn()
         C.pushed = true;
-        C:SetStylePanel("Default", "Default")
+        C:SetStylePanel("Frame", "Default")
         C.Panel:SetAllPoints()
-        C:SetStylePanel("Default")
+        C:SetStylePanel("Frame")
         hooksecurefunc(C:GetHighlightTexture(), "SetTexture", function(o, D)
           if D ~= nil then
              o:SetTexture(0,0,0,0)
@@ -398,7 +398,7 @@ local function LFDFrameStyle()
   end)

   LFGInvitePopup:RemoveTextures()
-  LFGInvitePopup:SetStylePanel("Default", "Pattern", true, 2, 4, 4)
+  LFGInvitePopup:SetStylePanel("Frame", "Pattern", true, 2, 4, 4)
   LFGInvitePopupAcceptButton:SetStylePanel("Button")
   LFGInvitePopupDeclineButton:SetStylePanel("Button")

@@ -411,9 +411,9 @@ local function LFDFrameStyle()

   PLUGIN:ApplyScrollFrameStyle(LFDQueueFrameRandomScrollFrameScrollBar)
   PLUGIN:ApplyScrollFrameStyle(ScenarioQueueFrameSpecificScrollFrameScrollBar)
-  LFDQueueFrameRandomScrollFrame:SetStylePanel("Default", 'Transparent')
-  ScenarioQueueFrameRandomScrollFrame:SetStylePanel("Default", 'Transparent')
-  RaidFinderQueueFrameScrollFrame:SetStylePanel("Default", 'Transparent')
+  LFDQueueFrameRandomScrollFrame:SetStylePanel("Frame", 'Transparent')
+  ScenarioQueueFrameRandomScrollFrame:SetStylePanel("Frame", 'Transparent')
+  RaidFinderQueueFrameScrollFrame:SetStylePanel("Frame", 'Transparent')

   -- for u = 1, NUM_LFD_CHOICE_BUTTONS do
   --   local box = _G["LFDQueueFrameSpecificListButton"..u.."EnableButton"]
diff --git a/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/loothistory.lua b/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/loothistory.lua
index 6ef01a7..0ac94e4 100644
--- a/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/loothistory.lua
+++ b/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/loothistory.lua
@@ -58,7 +58,7 @@ local LootHistoryFrame_OnUpdate = function(self)
       frame.Icon:SetTexture(Icon)
       frame.Icon:SetTexCoord(0.1, 0.9, 0.1, 0.9)

-      frame:SetStylePanel("Fixed", "Button")
+      frame:SetStylePanel("!_Frame", "Button")
       frame.Panel:SetAllPointsOut(frame.Icon)
       frame.Icon:SetParent(frame.Panel)

@@ -78,7 +78,7 @@ local _hook_MasterLootFrame_OnShow = function()
     item:RemoveTextures()
     icon:SetTexture(tex)
     icon:SetTexCoord(0.1, 0.9, 0.1, 0.9)
-    item:SetStylePanel("Default", "Pattern")
+    item:SetStylePanel("Frame", "Pattern")
     item.Panel:SetAllPointsOut(icon)
     item:SetBackdropBorderColor(colors.r, colors.g, colors.b)
   end
@@ -89,7 +89,7 @@ local _hook_MasterLootFrame_OnShow = function()
         if child:GetPushedTexture() then
           PLUGIN:ApplyCloseButtonStyle(child)
         else
-          child:SetStylePanel("Fixed")
+          child:SetStylePanel("!_Frame")
           child:SetStylePanel("Button")
         end
         child.isStyled = true
@@ -114,16 +114,16 @@ local function LootHistoryStyle()
   LootHistoryFrame:SetFrameStrata('HIGH')

   MissingLootFrame:RemoveTextures()
-  MissingLootFrame:SetStylePanel("Default", "Pattern")
+  MissingLootFrame:SetStylePanel("Frame", "Pattern")

   PLUGIN:ApplyCloseButtonStyle(MissingLootFramePassButton)
   hooksecurefunc("MissingLootFrame_Show", MissingLootFrame_OnShow)
   LootHistoryFrame:RemoveTextures()
   PLUGIN:ApplyCloseButtonStyle(LootHistoryFrame.CloseButton)
   LootHistoryFrame:RemoveTextures()
-  LootHistoryFrame:SetStylePanel("Fixed", 'Transparent')
+  LootHistoryFrame:SetStylePanel("!_Frame", 'Transparent')
   PLUGIN:ApplyCloseButtonStyle(LootHistoryFrame.ResizeButton)
-  LootHistoryFrame.ResizeButton:SetStylePanel("Fixed")
+  LootHistoryFrame.ResizeButton:SetStylePanel("!_Frame")
   LootHistoryFrame.ResizeButton:SetWidthToScale(LootHistoryFrame:GetWidth())
   LootHistoryFrame.ResizeButton:SetHeightToScale(19)
   LootHistoryFrame.ResizeButton:ClearAllPoints()
@@ -141,7 +141,7 @@ local function LootHistoryStyle()
   hooksecurefunc("LootHistoryFrame_FullUpdate", LootHistoryFrame_OnUpdate)

   MasterLooterFrame:RemoveTextures()
-  MasterLooterFrame:SetStylePanel("Fixed")
+  MasterLooterFrame:SetStylePanel("!_Frame")
   MasterLooterFrame:SetFrameStrata('FULLSCREEN_DIALOG')

   hooksecurefunc("MasterLooterFrame_Show", _hook_MasterLootFrame_OnShow)
diff --git a/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/lossofcontrol.lua b/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/lossofcontrol.lua
index b14f00a..66116ff 100644
--- a/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/lossofcontrol.lua
+++ b/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/lossofcontrol.lua
@@ -52,7 +52,7 @@ local function LossOfControlStyle()
   local IconBackdrop = CreateFrame("Frame", nil, LossOfControlFrame)
   IconBackdrop:SetAllPointsOut(LossOfControlFrame.Icon)
   IconBackdrop:SetFrameLevel(LossOfControlFrame:GetFrameLevel()-1)
-  IconBackdrop:SetStylePanel("Default", "Slot")
+  IconBackdrop:SetStylePanel("Frame", "Slot")
   LossOfControlFrame.Icon:SetTexCoord(.1, .9, .1, .9)
   LossOfControlFrame:RemoveTextures()
   LossOfControlFrame.AbilityName:ClearAllPoints()
diff --git a/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/macro.lua b/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/macro.lua
index 0acae62..e01c841 100644
--- a/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/macro.lua
+++ b/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/macro.lua
@@ -87,13 +87,13 @@ local function MacroUIStyle()

 	MacroFrameText:SetFont(SV.Media.font.default, 10, "OUTLINE")
 	MacroFrameTextBackground:RemoveTextures()
-	MacroFrameTextBackground:SetStylePanel("Default", 'Transparent')
+	MacroFrameTextBackground:SetStylePanel("Frame", 'Transparent')

 	MacroPopupFrame:RemoveTextures()
-	MacroPopupFrame:SetStylePanel("Default", 'Transparent')
+	MacroPopupFrame:SetStylePanel("Frame", 'Transparent')

 	MacroPopupScrollFrame:RemoveTextures()
-	MacroPopupScrollFrame:SetStylePanel("Default", "Pattern")
+	MacroPopupScrollFrame:SetStylePanel("Frame", "Pattern")
 	MacroPopupScrollFrame.Panel:SetPointToScale("TOPLEFT", 51, 2)
 	MacroPopupScrollFrame.Panel:SetPointToScale("BOTTOMRIGHT", -4, 4)
 	MacroPopupEditBox:SetStylePanel("Editbox")
@@ -105,7 +105,7 @@ local function MacroUIStyle()

 	MacroButtonContainer:RemoveTextures()
 	PLUGIN:ApplyScrollFrameStyle(MacroButtonScrollFrame)
-	MacroButtonScrollFrame:SetStylePanel("Fixed", "Inset")
+	MacroButtonScrollFrame:SetStylePanel("!_Frame", "Inset")

 	MacroPopupFrame:HookScript("OnShow", function(c)
 		c:ClearAllPoints()
@@ -115,7 +115,7 @@ local function MacroUIStyle()
 	MacroFrameSelectedMacroButton:SetFrameStrata(parentStrata)
 	MacroFrameSelectedMacroButton:SetFrameLevel(parentLevel + 1)
 	MacroFrameSelectedMacroButton:RemoveTextures()
-	MacroFrameSelectedMacroButton:SetStylePanel("Slot", true)
+	MacroFrameSelectedMacroButton:SetStylePanel("Slot")
 	MacroFrameSelectedMacroButtonIcon:SetTexCoord(0.1, 0.9, 0.1, 0.9)
 	MacroFrameSelectedMacroButtonIcon:SetAllPointsIn()

diff --git a/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/mailbox.lua b/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/mailbox.lua
index 80d2ac8..1c99610 100644
--- a/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/mailbox.lua
+++ b/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/mailbox.lua
@@ -31,7 +31,7 @@ local function MailFrame_OnUpdate()
 	for b = 1, ATTACHMENTS_MAX_SEND do
 		local d = _G["SendMailAttachment"..b]
 		if not d.styled then
-			d:RemoveTextures()d:SetStylePanel("Fixed", "Default")
+			d:RemoveTextures()d:SetStylePanel("!_Frame", "Default")
 			d:SetStylePanel("Button")
 			d.styled = true
 		end
@@ -55,7 +55,7 @@ local function MailBoxStyle()
 	for b = 1, INBOXITEMS_TO_DISPLAY do
 		local i = _G["MailItem"..b]
 		i:RemoveTextures()
-		i:SetStylePanel("Default", "Inset")
+		i:SetStylePanel("Frame", "Inset")
 		i.Panel:SetPointToScale("TOPLEFT", 2, 1)
 		i.Panel:SetPointToScale("BOTTOMRIGHT", -2, 2)
 		local d = _G["MailItem"..b.."Button"]
@@ -73,7 +73,7 @@ local function MailBoxStyle()
 	PLUGIN:ApplyTabStyle(MailFrameTab1)
 	PLUGIN:ApplyTabStyle(MailFrameTab2)
 	SendMailScrollFrame:RemoveTextures(true)
-	SendMailScrollFrame:SetStylePanel("Fixed", "Inset")
+	SendMailScrollFrame:SetStylePanel("!_Frame", "Inset")
 	PLUGIN:ApplyScrollFrameStyle(SendMailScrollFrameScrollBar)
 	SendMailNameEditBox:SetStylePanel("Editbox")
 	SendMailSubjectEditBox:SetStylePanel("Editbox")
@@ -101,7 +101,7 @@ local function MailBoxStyle()
 	SendMailMailButton:SetStylePanel("Button")
 	SendMailCancelButton:SetStylePanel("Button")
 	OpenMailFrame:RemoveTextures(true)
-	OpenMailFrame:SetStylePanel("Fixed", "Transparent", true)
+	OpenMailFrame:SetStylePanel("!_Frame", "Transparent", true)
 	OpenMailFrameInset:Die()
 	PLUGIN:ApplyCloseButtonStyle(OpenMailFrameCloseButton)
 	OpenMailReportSpamButton:SetStylePanel("Button")
@@ -111,19 +111,19 @@ local function MailBoxStyle()
 	InboxFrame:RemoveTextures()
 	MailFrameInset:Die()
 	OpenMailScrollFrame:RemoveTextures(true)
-	OpenMailScrollFrame:SetStylePanel("Fixed", "Default")
+	OpenMailScrollFrame:SetStylePanel("!_Frame", "Default")
 	PLUGIN:ApplyScrollFrameStyle(OpenMailScrollFrameScrollBar)
 	SendMailBodyEditBox:SetTextColor(1, 1, 1)
 	OpenMailBodyText:SetTextColor(1, 1, 1)
 	InvoiceTextFontNormal:SetTextColor(1, 1, 1)
 	OpenMailArithmeticLine:Die()
 	OpenMailLetterButton:RemoveTextures()
-	OpenMailLetterButton:SetStylePanel("Fixed", "Default")
+	OpenMailLetterButton:SetStylePanel("!_Frame", "Default")
 	OpenMailLetterButton:SetStylePanel("Button")
 	OpenMailLetterButtonIconTexture:SetTexCoord(0.1, 0.9, 0.1, 0.9)
 	OpenMailLetterButtonIconTexture:SetAllPointsIn()
 	OpenMailMoneyButton:RemoveTextures()
-	OpenMailMoneyButton:SetStylePanel("Fixed", "Default")
+	OpenMailMoneyButton:SetStylePanel("!_Frame", "Default")
 	OpenMailMoneyButton:SetStylePanel("Button")
 	OpenMailMoneyButtonIconTexture:SetTexCoord(0.1, 0.9, 0.1, 0.9)
 	OpenMailMoneyButtonIconTexture:SetAllPointsIn()
diff --git a/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/merchant.lua b/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/merchant.lua
index 6edfb2c..de75d5c 100644
--- a/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/merchant.lua
+++ b/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/merchant.lua
@@ -30,7 +30,7 @@ FRAME PLUGINR
 local function MerchantStyle()
 	if PLUGIN.db.blizzard.enable ~= true or PLUGIN.db.blizzard.merchant ~= true then return end
 	MerchantFrame:RemoveTextures(true)
-	MerchantFrame:SetStylePanel("Default", "Halftone", false, nil, 2, 4)
+	MerchantFrame:SetStylePanel("Frame", "Composite1", false, nil, 2, 4)
 	local level = MerchantFrame:GetFrameLevel()
 	if(level > 0) then
 		MerchantFrame:SetFrameLevel(level - 1)
@@ -38,7 +38,7 @@ local function MerchantStyle()
 		MerchantFrame:SetFrameLevel(0)
 	end
 	MerchantBuyBackItem:RemoveTextures(true)
-	MerchantBuyBackItem:SetStylePanel("Default", "Inset", true, 2, 2, 3)
+	MerchantBuyBackItem:SetStylePanel("Frame", "Inset", true, 2, 2, 3)
 	MerchantBuyBackItem.Panel:SetFrameLevel(MerchantBuyBackItem.Panel:GetFrameLevel() + 1)
 	MerchantBuyBackItemItemButton:RemoveTextures()
 	MerchantBuyBackItemItemButton:SetStylePanel("Button")
@@ -47,7 +47,7 @@ local function MerchantStyle()
 	MerchantFrameInset:RemoveTextures()
 	MerchantMoneyBg:RemoveTextures()
 	MerchantMoneyInset:RemoveTextures()
-	MerchantFrameInset:SetStylePanel("Default", "Inset")
+	MerchantFrameInset:SetStylePanel("Frame", "Inset")
 	MerchantFrameInset.Panel:SetFrameLevel(MerchantFrameInset.Panel:GetFrameLevel() + 1)
 	PLUGIN:ApplyDropdownStyle(MerchantFrameLootFilter)
 	for b = 1, 2 do
@@ -57,7 +57,7 @@ local function MerchantStyle()
 		local d = _G["MerchantItem"..b.."ItemButton"]
 		local e = _G["MerchantItem"..b.."ItemButtonIconTexture"]
 		local o = _G["MerchantItem"..b]o:RemoveTextures(true)
-		o:SetStylePanel("Fixed", "Inset")
+		o:SetStylePanel("!_Frame", "Inset")
 		d:RemoveTextures()
 		d:SetStylePanel("Button")
 		d:SetPointToScale("TOPLEFT", o, "TOPLEFT", 4, -4)
diff --git a/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/petbattle.lua b/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/petbattle.lua
index 30d03ad..2fa01be 100644
--- a/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/petbattle.lua
+++ b/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/petbattle.lua
@@ -36,7 +36,7 @@ local PetBattleActionBar = CreateFrame("Frame", "SVUI_PetBattleActionBar", UIPar
 local ITEM_QUALITY_COLORS = _G.ITEM_QUALITY_COLORS;

 local function PetBattleButtonHelper(frame)
-	frame:SetStylePanel("Default", "Blackout")
+	frame:SetStylePanel("Frame", "Blackout")
 	frame:SetNormalTexture("")
 	frame.Icon:SetTexCoord(0.1, 0.9, 0.1, 0.9)
 	frame.Icon:SetDrawLayer('BORDER')
@@ -99,7 +99,7 @@ local _hook_AuraHolderUpdate = function(self)
 			local frame = self.frames[nextFrame]
 			frame.DebuffBorder:Hide()
 			if not frame.isStyled then
-				frame:SetStylePanel("Slot", true, 2, -8,-2)
+				frame:SetStylePanel("Slot", 2, -8,-2)
 				frame.Icon:SetAllPointsIn(frame.Panel, 2, 2)
 				frame.Icon:SetTexCoord(0.1, 0.9, 0.1, 0.9)
 				frame.isStyled = true
@@ -223,16 +223,16 @@ local function PetBattleStyle()
 			frame.IconBackdrop = CreateFrame("Frame", nil, frame)
 			frame.IconBackdrop:SetFrameLevel(0)
 			frame.IconBackdrop:SetAllPoints(frame.Icon)
-			frame.IconBackdrop:SetStylePanel("Slot", true, 1, 0, 0, 0.5);
+			frame.IconBackdrop:SetStylePanel("Slot", 1, 0, 0, 0.5);

-			frame.IconBackdrop.Panel:SetStylePanel("Fixed", "Blackout")
+			frame.IconBackdrop.Panel:SetStylePanel("!_Frame", "Blackout")

 			frame.BorderFlash:Die()
 			frame.HealthBarBG:Die()
 			frame.HealthBarFrame:Die()
 			frame.HealthBarBackdrop = CreateFrame("Frame", nil, frame)
 			frame.HealthBarBackdrop:SetFrameLevel(frame:GetFrameLevel()-1)
-			frame.HealthBarBackdrop:SetStylePanel("Fixed", "Blackout")
+			frame.HealthBarBackdrop:SetStylePanel("!_Frame", "Blackout")
 			frame.HealthBarBackdrop:SetWidthToScale(frame.healthBarWidth+(2))
 			frame.ActualHealthBar:SetTexture([[Interface\AddOns\SVUI\assets\artwork\Bars\DEFAULT]])
 			frame.PetTypeFrame = CreateFrame("Frame", nil, frame)
@@ -303,9 +303,9 @@ local function PetBattleStyle()
 			frame.IconBackdrop = CreateFrame("Frame", nil, frame)
 			frame.IconBackdrop:SetFrameLevel(0)
 			frame.IconBackdrop:SetAllPoints(frame)
-			frame.IconBackdrop:SetStylePanel("Slot", true, 1, 0, 0, 0.5);
+			frame.IconBackdrop:SetStylePanel("Slot", 1, 0, 0, 0.5);

-			frame.IconBackdrop.Panel:SetStylePanel("Fixed", "Blackout")
+			frame.IconBackdrop.Panel:SetStylePanel("!_Frame", "Blackout")

 			frame:ClearAllPoints()
 			frame.healthBarWidth = 40;
@@ -314,7 +314,7 @@ local function PetBattleStyle()
 			frame.ActualHealthBar:SetTexture([[Interface\AddOns\SVUI\assets\artwork\Bars\DEFAULT]])
 			frame.HealthBarBackdrop = CreateFrame("Frame", nil, frame)
 			frame.HealthBarBackdrop:SetFrameLevel(frame:GetFrameLevel()-1)
-			frame.HealthBarBackdrop:SetStylePanel("Fixed", "Blackout")
+			frame.HealthBarBackdrop:SetStylePanel("!_Frame", "Blackout")
 			frame.HealthBarBackdrop:SetWidthToScale(frame.healthBarWidth+2)
 			frame.HealthBarBackdrop:SetPointToScale('TOPLEFT', frame.ActualHealthBar, 'TOPLEFT', -1, 1)
 			frame.HealthBarBackdrop:SetPointToScale('BOTTOMLEFT', frame.ActualHealthBar, 'BOTTOMLEFT', -1, -1)
@@ -327,7 +327,7 @@ local function PetBattleStyle()
 	PetBattleActionBar:EnableMouse(true)
 	PetBattleActionBar:SetFrameLevel(0)
 	PetBattleActionBar:SetFrameStrata('BACKGROUND')
-	PetBattleActionBar:SetStylePanel("Fixed", "Blackout")
+	PetBattleActionBar:SetStylePanel("!_Frame", "Blackout")

 	local SVUI_DockBottomCenter = _G.SVUI_DockBottomCenter;
 	if(SVUI_DockBottomCenter) then
@@ -367,7 +367,7 @@ local function PetBattleStyle()
 	BottomFrame.xpBar:SetParent(PetBattleActionBar)
 	BottomFrame.xpBar:SetSizeToScale((PBAB_WIDTH * 0.8) - 4, 16)
 	BottomFrame.xpBar:SetStatusBarTexture([[Interface\AddOns\SVUI\assets\artwork\Bars\DEFAULT]])
-	BottomFrame.xpBar:SetStylePanel("Default", "Bar")
+	BottomFrame.xpBar:SetStylePanel("Frame", "Bar")
 	BottomFrame.xpBar:SetPoint("BOTTOMRIGHT", PetBattleActionBar.Panel, "TOPRIGHT", -3, 3)
 	BottomFrame.xpBar:SetScript("OnShow", function(self)
 		self:RemoveTextures()
@@ -392,7 +392,7 @@ local function PetBattleStyle()
 	local PetBattleQueueReadyFrame = _G.PetBattleQueueReadyFrame;

 	PetBattleQueueReadyFrame:RemoveTextures()
-	PetBattleQueueReadyFrame:SetStylePanel("Default", 'Transparent')
+	PetBattleQueueReadyFrame:SetStylePanel("Frame", 'Transparent')
 	PetBattleQueueReadyFrame.AcceptButton:SetStylePanel("Button")
 	PetBattleQueueReadyFrame.DeclineButton:SetStylePanel("Button")
 	PetBattleQueueReadyFrame.Art:SetTexture([[Interface\PetBattles\PetBattlesQueue]])
diff --git a/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/petjournal.lua b/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/petjournal.lua
index 6cc600a..2e124c4 100644
--- a/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/petjournal.lua
+++ b/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/petjournal.lua
@@ -115,7 +115,7 @@ local function PetJournalStyle()
 	MountJournalSearchBox:SetStylePanel("Editbox")

 	PLUGIN:ApplyScrollFrameStyle(MountJournalListScrollFrameScrollBar)
-	MountJournal.MountDisplay:SetStylePanel("Fixed", "Model")
+	MountJournal.MountDisplay:SetStylePanel("!_Frame", "Model")

 	local buttons = MountJournal.ListScrollFrame.buttons
 	for i = 1, #buttons do
@@ -195,10 +195,10 @@ local function PetJournalStyle()
 		PLUGIN:ApplyItemButtonStyle(pjPet, nil, nil, true)
 		pjPet.setButton:RemoveTextures()
 		_G['PetJournalLoadoutPet'..b..'HealthFrame'].healthBar:RemoveTextures()
-		_G['PetJournalLoadoutPet'..b..'HealthFrame'].healthBar:SetStylePanel("Default", 'Default')
+		_G['PetJournalLoadoutPet'..b..'HealthFrame'].healthBar:SetStylePanel("Frame", 'Default')
 		_G['PetJournalLoadoutPet'..b..'HealthFrame'].healthBar:SetStatusBarTexture(SV.Media.bar.default)
 		_G['PetJournalLoadoutPet'..b..'XPBar']:RemoveTextures()
-		_G['PetJournalLoadoutPet'..b..'XPBar']:SetStylePanel("Default", 'Default')
+		_G['PetJournalLoadoutPet'..b..'XPBar']:SetStylePanel("Frame", 'Default')
 		_G['PetJournalLoadoutPet'..b..'XPBar']:SetStatusBarTexture([[Interface\AddOns\SVUI\assets\artwork\Template\DEFAULT]])
 		_G['PetJournalLoadoutPet'..b..'XPBar']:SetFrameLevel(_G['PetJournalLoadoutPet'..b..'XPBar']:GetFrameLevel()+2)
 		for v = 1, 3 do
@@ -251,39 +251,39 @@ local function PetJournalStyle()
 	R.BorderBottom:SetTexture(0,0,0,0)
 	R.BorderBottomRight:SetTexture(0,0,0,0)
 	R.BorderBottomLeft:SetTexture(0,0,0,0)
-	R:SetStylePanel("Fixed", "Transparent", true)
+	R:SetStylePanel("!_Frame", "Transparent", true)

 	for b = 1, 6 do
 		local S = _G['PetJournalPetCardSpell'..b]
 		S:SetFrameLevel(S:GetFrameLevel() + 2)
 		S:DisableDrawLayer('BACKGROUND')
-		S:SetStylePanel("Default", 'Transparent')
+		S:SetStylePanel("Frame", 'Transparent')
 		S.Panel:SetAllPoints()
 		S.icon:SetTexCoord(0.1, 0.9, 0.1, 0.9)
 		S.icon:SetAllPointsIn(S.Panel)
 	end

 	PetJournalPetCardHealthFrame.healthBar:RemoveTextures()
-	PetJournalPetCardHealthFrame.healthBar:SetStylePanel("Default", 'Default')
+	PetJournalPetCardHealthFrame.healthBar:SetStylePanel("Frame", 'Default')
 	PetJournalPetCardHealthFrame.healthBar:SetStatusBarTexture([[Interface\AddOns\SVUI\assets\artwork\Template\DEFAULT]])
 	PetJournalPetCardXPBar:RemoveTextures()
-	PetJournalPetCardXPBar:SetStylePanel("Default", 'Default')
+	PetJournalPetCardXPBar:SetStylePanel("Frame", 'Default')
 	PetJournalPetCardXPBar:SetStatusBarTexture([[Interface\AddOns\SVUI\assets\artwork\Template\DEFAULT]])

 	PLUGIN:ApplyTabStyle(PetJournalParentTab3)
 	ToyBox:RemoveTextures()
-	ToyBoxProgressBar:SetStylePanel("Default", "Bar", true)
+	ToyBoxProgressBar:SetStylePanel("Frame", "Bar", true)
 	ToyBoxSearchBox:SetStylePanel("Editbox")
 	ToyBoxFilterButton:RemoveTextures()
 	ToyBoxFilterButton:SetStylePanel("Button")
 	ToyBoxIconsFrame:RemoveTextures()
-	ToyBoxIconsFrame:SetStylePanel("Fixed", 'Model')
+	ToyBoxIconsFrame:SetStylePanel("!_Frame", 'Model')

 	MountJournalFilterButton:RemoveTextures()
 	MountJournalFilterButton:SetStylePanel("Button")

 	MountJournal.SummonRandomFavoriteButton:RemoveTextures()
-	MountJournal.SummonRandomFavoriteButton:SetStylePanel("Slot", true, 2, 0, 0, 0.5)
+	MountJournal.SummonRandomFavoriteButton:SetStylePanel("Slot", 2, 0, 0, 0.5)
 	MountJournal.SummonRandomFavoriteButton.texture:SetTexture([[Interface\ICONS\ACHIEVEMENT_GUILDPERK_MOUNTUP]])
 	MountJournal.SummonRandomFavoriteButton.texture:SetTexCoord(0.1, 0.9, 0.1, 0.9)

diff --git a/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/petstable.lua b/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/petstable.lua
index 66c54d5..eaf6321 100644
--- a/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/petstable.lua
+++ b/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/petstable.lua
@@ -33,8 +33,8 @@ local function PetStableStyle()
 	PetStableFrameInset:RemoveTextures()
 	PetStableLeftInset:RemoveTextures()
 	PetStableBottomInset:RemoveTextures()
-	PetStableFrame:SetStylePanel("Default", "Halftone")
-	PetStableFrameInset:SetStylePanel("Fixed", 'Inset')
+	PetStableFrame:SetStylePanel("Frame", "Composite1")
+	PetStableFrameInset:SetStylePanel("!_Frame", 'Inset')
 	PLUGIN:ApplyCloseButtonStyle(PetStableFrameCloseButton)
 	PetStablePrevPageButton:SetStylePanel("Button")
 	PetStableNextPageButton:SetStylePanel("Button")
diff --git a/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/pvp.lua b/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/pvp.lua
index 7dcc7af..e636509 100644
--- a/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/pvp.lua
+++ b/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/pvp.lua
@@ -74,7 +74,7 @@ local function PVPFrameStyle()

 	PLUGIN:ApplyDropdownStyle(HonorFrameTypeDropDown)
 	HonorFrame.Inset:RemoveTextures()
-	HonorFrame.Inset:SetStylePanel("Fixed", "Inset")
+	HonorFrame.Inset:SetStylePanel("!_Frame", "Inset")
 	PLUGIN:ApplyScrollFrameStyle(HonorFrameSpecificFrameScrollBar)
 	HonorFrameSoloQueueButton:RemoveTextures()
 	HonorFrameGroupQueueButton:RemoveTextures()
@@ -83,7 +83,7 @@ local function PVPFrameStyle()
 	HonorFrame.BonusFrame:RemoveTextures()
 	HonorFrame.BonusFrame.ShadowOverlay:RemoveTextures()
 	HonorFrame.BonusFrame.RandomBGButton:RemoveTextures()
-	HonorFrame.BonusFrame.RandomBGButton:SetStylePanel("Fixed", "Button")
+	HonorFrame.BonusFrame.RandomBGButton:SetStylePanel("!_Frame", "Button")
 	HonorFrame.BonusFrame.RandomBGButton:SetStylePanel("Button")
 	HonorFrame.BonusFrame.RandomBGButton.SelectedTexture:SetAllPointsIn()
 	HonorFrame.BonusFrame.RandomBGButton.SelectedTexture:SetTexture(1, 1, 0, 0.1)
@@ -115,14 +115,14 @@ local function PVPFrameStyle()
 	ConquestPointsBarBG:Die()
 	ConquestPointsBarShadow:Die()
 	ConquestPointsBar.progress:SetTexture([[Interface\AddOns\SVUI\assets\artwork\Template\DEFAULT]])
-	ConquestPointsBar:SetStylePanel("Fixed", 'Inset')
+	ConquestPointsBar:SetStylePanel("!_Frame", 'Inset')
 	ConquestPointsBar.Panel:SetAllPointsOut(ConquestPointsBar, nil, -2)
 	ConquestFrame:RemoveTextures()
 	ConquestFrame.ShadowOverlay:RemoveTextures()
 	ConquestJoinButton:RemoveTextures()
 	ConquestJoinButton:SetStylePanel("Button")
 	ConquestFrame.RatedBG:RemoveTextures()
-	ConquestFrame.RatedBG:SetStylePanel("Fixed", "Inset")
+	ConquestFrame.RatedBG:SetStylePanel("!_Frame", "Inset")
 	ConquestFrame.RatedBG:SetStylePanel("Button")
 	ConquestFrame.RatedBG.SelectedTexture:SetAllPointsIn()
 	ConquestFrame.RatedBG.SelectedTexture:SetTexture(1, 1, 0, 0.1)
@@ -137,15 +137,15 @@ local function PVPFrameStyle()
 	WarGamesFrame.HorizontalBar:RemoveTextures()

 	PVPReadyDialog:RemoveTextures()
-	PVPReadyDialog:SetStylePanel("Default", "Pattern")
+	PVPReadyDialog:SetStylePanel("Frame", "Pattern")
 	PVPReadyDialogEnterBattleButton:SetStylePanel("Button")
 	PVPReadyDialogLeaveQueueButton:SetStylePanel("Button")
 	PLUGIN:ApplyCloseButtonStyle(PVPReadyDialogCloseButton)
 	PVPReadyDialogRoleIcon.texture:SetTexture("Interface\\LFGFrame\\UI-LFG-ICONS-ROLEBACKGROUNDS")
 	PVPReadyDialogRoleIcon.texture:SetAlpha(0.5)

-	ConquestFrame.Inset:SetStylePanel("Fixed", "Inset")
-	WarGamesFrameScrollFrame:SetStylePanel("Default", "Inset",false,2,2,6)
+	ConquestFrame.Inset:SetStylePanel("!_Frame", "Inset")
+	WarGamesFrameScrollFrame:SetStylePanel("Frame", "Inset",false,2,2,6)

 	hooksecurefunc("PVPReadyDialog_Display", _hook_PVPReadyDialogDisplay)
 end
diff --git a/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/quest.lua b/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/quest.lua
index 1d570a7..c504d71 100644
--- a/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/quest.lua
+++ b/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/quest.lua
@@ -43,7 +43,7 @@ local QuestFrameList = {
 };

 local function QuestScrollHelper(b, c, d, e)
-	b:SetStylePanel("Default", "Inset")
+	b:SetStylePanel("Frame", "Inset")
 	b.spellTex = b:CreateTexture(nil, 'ARTWORK')
 	b.spellTex:SetTexture([[Interface\QuestFrame\QuestBG]])
 	if e then
@@ -57,7 +57,7 @@ end

 local QuestRewardScrollFrame_OnShow = function(self)
 	if(not self.Panel) then
-		self:SetStylePanel("Default", "Default")
+		self:SetStylePanel("Frame", "Default")
 		QuestScrollHelper(self, 509, 630, false)
 		self:SetHeightToScale(self:GetHeight() - 2)
 	end
@@ -69,7 +69,7 @@ end
 local function StyleReward(item)
 	if(item and (not item.Panel)) then
 		item:RemoveTextures()
-		item:SetStylePanel("Slot", true, 2, 0, 0, 0.5)
+		item:SetStylePanel("Slot", 2, 0, 0, 0.5)

 		local name = item:GetName()
 		if(name) then
@@ -97,7 +97,7 @@ local function StyleDisplayReward(item)
 			oldIcon = item.Icon:GetTexture()
 		end
 		item:RemoveTextures()
-		item:SetStylePanel("Slot", true, 2, 0, 0, 0.5)
+		item:SetStylePanel("Slot", 2, 0, 0, 0.5)

 		if(oldIcon) then
 			item.Icon:SetTexture(oldIcon)
@@ -142,7 +142,7 @@ end

 local _hook_DetailScrollShow = function(self)
 	if not self.Panel then
-		self:SetStylePanel("Default", "Default")
+		self:SetStylePanel("Frame", "Default")
 		QuestScrollHelper(self, 509, 630, false)
 	end
 	self.spellTex:SetHeightToScale(self:GetHeight() + 217)
@@ -151,7 +151,7 @@ end
 local _hook_QuestLogPopupDetailFrameShow = function(self)
 	local QuestLogPopupDetailFrameScrollFrame = _G.QuestLogPopupDetailFrameScrollFrame;
 	if not QuestLogPopupDetailFrameScrollFrame.spellTex then
-		QuestLogPopupDetailFrameScrollFrame:SetStylePanel("Fixed", "Default")
+		QuestLogPopupDetailFrameScrollFrame:SetStylePanel("!_Frame", "Default")
 		QuestLogPopupDetailFrameScrollFrame.spellTex = QuestLogPopupDetailFrameScrollFrame:CreateTexture(nil, 'ARTWORK')
 		QuestLogPopupDetailFrameScrollFrame.spellTex:SetTexture([[Interface\QuestFrame\QuestBookBG]])
 		QuestLogPopupDetailFrameScrollFrame.spellTex:SetPoint("TOPLEFT", 2, -2)
@@ -222,7 +222,7 @@ local function QuestFrameStyle()

 	local curLvl = QuestInfoSkillPointFrame:GetFrameLevel() + 1
 	QuestInfoSkillPointFrame:SetFrameLevel(curLvl)
-	QuestInfoSkillPointFrame:SetStylePanel("Fixed", "Slot")
+	QuestInfoSkillPointFrame:SetStylePanel("!_Frame", "Slot")
 	QuestInfoSkillPointFrame:SetBackdropColor(1, 1, 0, 0.5)
 	QuestInfoSkillPointFrameIconTexture:SetTexCoord(0.1, 0.9, 0.1, 0.9)
 	QuestInfoSkillPointFrameIconTexture:SetDrawLayer("OVERLAY")
@@ -230,7 +230,7 @@ local function QuestFrameStyle()
 	QuestInfoSkillPointFrameIconTexture:SetSizeToScale(QuestInfoSkillPointFrameIconTexture:GetWidth()-2, QuestInfoSkillPointFrameIconTexture:GetHeight()-2)
 	QuestInfoSkillPointFrameCount:SetDrawLayer("OVERLAY")
 	QuestInfoItemHighlight:RemoveTextures()
-	QuestInfoItemHighlight:SetStylePanel("Fixed", "Slot")
+	QuestInfoItemHighlight:SetStylePanel("!_Frame", "Slot")
 	QuestInfoItemHighlight:SetBackdropBorderColor(1, 1, 0)
 	QuestInfoItemHighlight:SetBackdropColor(0, 0, 0, 0)
 	QuestInfoItemHighlight:SetSizeToScale(142, 40)
@@ -244,9 +244,9 @@ local function QuestFrameStyle()
 	QuestFrameDetailPanel:RemoveTextures(true)
 	QuestDetailScrollFrame:RemoveTextures(true)
 	QuestScrollHelper(QuestDetailScrollFrame, 506, 615, true)
-	QuestProgressScrollFrame:SetStylePanel("Fixed")
+	QuestProgressScrollFrame:SetStylePanel("!_Frame")
 	QuestScrollHelper(QuestProgressScrollFrame, 506, 615, true)
-	QuestGreetingScrollFrame:SetStylePanel("Fixed")
+	QuestGreetingScrollFrame:SetStylePanel("!_Frame")
 	QuestScrollHelper(QuestGreetingScrollFrame, 506, 615, true)
 	QuestDetailScrollChildFrame:RemoveTextures(true)
 	QuestRewardScrollFrame:RemoveTextures(true)
@@ -266,7 +266,7 @@ local function QuestFrameStyle()
 		local i = _G["QuestProgressItem"..j]
 		local texture = _G["QuestProgressItem"..j.."IconTexture"]
 		i:RemoveTextures()
-		i:SetStylePanel("Fixed", "Inset")
+		i:SetStylePanel("!_Frame", "Inset")
 		i:SetWidthToScale(_G["QuestProgressItem"..j]:GetWidth() - 4)
 		texture:SetTexCoord(0.1, 0.9, 0.1, 0.9)
 		texture:SetDrawLayer("OVERLAY")
@@ -276,10 +276,10 @@ local function QuestFrameStyle()
 	end

 	QuestNPCModel:RemoveTextures()
-	QuestNPCModel:SetStylePanel("Default", "Comic")
+	QuestNPCModel:SetStylePanel("Frame", "Premium")

 	QuestNPCModelTextFrame:RemoveTextures()
-	QuestNPCModelTextFrame:SetStylePanel("Default", "Default")
+	QuestNPCModelTextFrame:SetStylePanel("Frame", "Default")
 	QuestNPCModelTextFrame.Panel:SetPoint("TOPLEFT", QuestNPCModel.Panel, "BOTTOMLEFT", 0, -2)

 	hooksecurefunc("QuestFrame_ShowQuestPortrait", Hook_QuestNPCModel)
@@ -295,19 +295,19 @@ local function QuestChoiceFrameStyle()
 	bgFrameTop:SetPoint("TOPLEFT", QuestChoiceFrame, "TOPLEFT", 42, -44)
 	bgFrameTop:SetPoint("TOPRIGHT", QuestChoiceFrame, "TOPRIGHT", -42, -44)
 	bgFrameTop:SetHeight(85)
-	bgFrameTop:SetStylePanel("Default", "Paper")
+	bgFrameTop:SetStylePanel("Frame", "Paper")
 	bgFrameTop:SetPanelColor("dark")

 	local bgFrameBottom = CreateFrame("Frame", nil, QuestChoiceFrame)
 	bgFrameBottom:SetPoint("TOPLEFT", QuestChoiceFrame, "TOPLEFT", 42, -140)
 	bgFrameBottom:SetPoint("BOTTOMRIGHT", QuestChoiceFrame, "BOTTOMRIGHT", -42, 44)
-	bgFrameBottom:SetStylePanel("Default", "Paper")
+	bgFrameBottom:SetStylePanel("Frame", "Paper")


 	PLUGIN:ApplyCloseButtonStyle(QuestChoiceFrame.CloseButton)
-	--QuestChoiceFrame.Option1:SetStylePanel("Default", "Inset")
+	--QuestChoiceFrame.Option1:SetStylePanel("Frame", "Inset")
 	QuestChoiceFrame.Option1.OptionButton:SetStylePanel("Button")
-	--QuestChoiceFrame.Option2:SetStylePanel("Default", "Inset")
+	--QuestChoiceFrame.Option2:SetStylePanel("Frame", "Inset")
 	QuestChoiceFrame.Option2.OptionButton:SetStylePanel("Button")
 end
 --[[
diff --git a/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/raid.lua b/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/raid.lua
index 7e3c00c..049f87c 100644
--- a/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/raid.lua
+++ b/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/raid.lua
@@ -63,7 +63,7 @@ local function RaidUIStyle()
 				local slot = _G[name]
 				if(slot) then
 					slot:RemoveTextures()
-					slot:SetStylePanel("Default", "Inset", true)
+					slot:SetStylePanel("Frame", "Inset", true)
 				end
 			end
 		end
@@ -90,7 +90,7 @@ local function RaidInfoStyle()
 	end

 	RaidInfoScrollFrame:RemoveTextures()
-	RaidInfoFrame:SetStylePanel("Default", 'Transparent')
+	RaidInfoFrame:SetStylePanel("Frame", 'Transparent')
 	RaidInfoFrame.Panel:SetPointToScale("TOPLEFT", RaidInfoFrame, "TOPLEFT")
 	RaidInfoFrame.Panel:SetPointToScale("BOTTOMRIGHT", RaidInfoFrame, "BOTTOMRIGHT")

diff --git a/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/reforging.lua b/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/reforging.lua
index 35eab31..5d18f12 100644
--- a/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/reforging.lua
+++ b/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/reforging.lua
@@ -44,7 +44,7 @@ local function ReforgingStyle()
 	ReforgingFrameReforgeButton:SetStylePanel("Button")

 	ReforgingFrame.ItemButton:RemoveTextures()
-	ReforgingFrame.ItemButton:SetStylePanel("Slot", true)
+	ReforgingFrame.ItemButton:SetStylePanel("Slot")
 	ReforgingFrame.ItemButton.IconTexture:SetAllPointsIn()
 	hooksecurefunc("ReforgingFrame_Update", function(k)
 		local w, x, u, y, z, A = GetReforgeItemInfo()
diff --git a/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/spellbook.lua b/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/spellbook.lua
index 6ee8f61..4371c00 100644
--- a/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/spellbook.lua
+++ b/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/spellbook.lua
@@ -137,7 +137,7 @@ local function AbilityButtonHelper(index)
 		end

 		button:RemoveTextures()
-		button:SetStylePanel("Default", "Slot", true, 2, 0, 0)
+		button:SetStylePanel("Frame", "Slot", true, 2, 0, 0)

 		if(button.iconTexture) then
 			button.iconTexture:SetTexCoord(0.1, 0.9, 0.1, 0.9)
@@ -173,7 +173,7 @@ local ButtonUpdateHelper = function(self)
 		end

 		self:RemoveTextures()
-		self:SetStylePanel("Default", "Slot", true, 2, 0, 0)
+		self:SetStylePanel("Frame", "Slot", true, 2, 0, 0)

 		if(icon) then
 			icon:SetTexture(iconTex)
@@ -213,7 +213,7 @@ local function SpellBookStyle()

 	if(SpellBookFrameInset) then
 		SpellBookFrameInset:RemoveTextures()
-		SpellBookFrameInset:SetStylePanel("Fixed", "Inset", true, 6)
+		SpellBookFrameInset:SetStylePanel("!_Frame", "Inset", true, 6)
 	end
 	if(SpellBookSpellIconsFrame) then SpellBookSpellIconsFrame:RemoveTextures() end
 	if(SpellBookSideTabsFrame) then SpellBookSideTabsFrame:RemoveTextures() end
@@ -283,7 +283,7 @@ local function SpellBookStyle()
 				buttonTex:SetAllPointsIn()
 				button:SetFrameLevel(button:GetFrameLevel() + 2)
 				if not button.Panel then
-					button:SetStylePanel("Default", "Inset", false, 3, 3, 3)
+					button:SetStylePanel("Frame", "Inset", false, 3, 3, 3)
 					button.Panel:SetAllPoints()
 				end
 			end
@@ -304,7 +304,7 @@ local function SpellBookStyle()
 			bar:SetHeight(12)
 			bar:SetStatusBarTexture([[Interface\AddOns\SVUI\assets\artwork\Bars\DEFAULT]])
 			bar:SetStatusBarColor(0, 220/255, 0)
-			bar:SetStylePanel("Default", "Default")
+			bar:SetStylePanel("Frame", "Default")
 			bar.rankText:ClearAllPoints()
 			bar.rankText:SetPoint("CENTER")
 		end
diff --git a/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/system.lua b/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/system.lua
index 54c0ea8..1f9dbb4 100644
--- a/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/system.lua
+++ b/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/system.lua
@@ -434,7 +434,7 @@ local function SystemPanelQue()
 		local this = _G[SystemDropDownList[i]]
 		if(this) then
 			this:RemoveTextures()
-			this:SetStylePanel("Default", "FramedTop")
+			this:SetStylePanel("Frame", "Heavy")
 		end
 	end
 	for i = 1, #SystemFrameList1 do
@@ -445,7 +445,7 @@ local function SystemPanelQue()
 	end

 	LFDRoleCheckPopup:RemoveTextures()
-	LFDRoleCheckPopup:SetStylePanel("Fixed")
+	LFDRoleCheckPopup:SetStylePanel("!_Frame")
 	LFDRoleCheckPopupAcceptButton:SetStylePanel("Button")
 	LFDRoleCheckPopupDeclineButton:SetStylePanel("Button")
 	LFDRoleCheckPopupRoleButtonTank.checkButton:SetStylePanel("Checkbox", true)
@@ -465,7 +465,7 @@ local function SystemPanelQue()
 			_G["StaticPopup"..i.."EditBox"].Panel:SetPointToScale("BOTTOMRIGHT", 2, 4)
 			_G["StaticPopup"..i.."ItemFrameNameFrame"]:Die()
 			_G["StaticPopup"..i.."ItemFrame"]:GetNormalTexture():Die()
-			_G["StaticPopup"..i.."ItemFrame"]:SetStylePanel("Fixed", "Default")
+			_G["StaticPopup"..i.."ItemFrame"]:SetStylePanel("!_Frame", "Default")
 			_G["StaticPopup"..i.."ItemFrame"]:SetStylePanel("Button")
 			_G["StaticPopup"..i.."ItemFrameIconTexture"]:SetTexCoord(0.1,0.9,0.1,0.9 )
 			_G["StaticPopup"..i.."ItemFrameIconTexture"]:SetAllPointsIn()
@@ -495,7 +495,7 @@ local function SystemPanelQue()
 		GhostFrameContentsFrameIcon:SetTexture(0,0,0,0)
 		local x = CreateFrame("Frame", nil, GhostFrame)
 		x:SetFrameStrata("MEDIUM")
-		x:SetStylePanel("Fixed", "Default")
+		x:SetStylePanel("!_Frame", "Default")
 		x:SetAllPointsOut(GhostFrameContentsFrameIcon)
 		local tex = x:CreateTexture(nil, "OVERLAY")
 		tex:SetTexture("Interface\\Icons\\spell_holy_guardianspirit")
@@ -538,7 +538,7 @@ local function SystemPanelQue()
 	ReadyCheckListenerFrame:SetAlpha(0)
 	ReadyCheckFrame:HookScript("OnShow", function(self) if UnitIsUnit("player", self.initiator) then self:Hide() end end)
 	StackSplitFrame:GetRegions():Hide()
-	RolePollPopup:SetStylePanel("Fixed", "Transparent", true)
+	RolePollPopup:SetStylePanel("!_Frame", "Transparent", true)
 	InterfaceOptionsFrame:SetClampedToScreen(true)
 	InterfaceOptionsFrame:SetMovable(true)
 	InterfaceOptionsFrame:EnableMouse(true)
@@ -553,12 +553,12 @@ local function SystemPanelQue()
 		self:StopMovingOrSizing()
 	end)
 	if IsMacClient() then
-		MacOptionsFrame:SetStylePanel("Fixed", "Default")
+		MacOptionsFrame:SetStylePanel("!_Frame", "Default")
 		MacOptionsFrameHeader:SetTexture(0,0,0,0)
 		MacOptionsFrameHeader:ClearAllPoints()
 		MacOptionsFrameHeader:SetPoint("TOP", MacOptionsFrame, 0, 0)
-		MacOptionsFrameMovieRecording:SetStylePanel("Fixed", "Default")
-		MacOptionsITunesRemote:SetStylePanel("Fixed", "Default")
+		MacOptionsFrameMovieRecording:SetStylePanel("!_Frame", "Default")
+		MacOptionsITunesRemote:SetStylePanel("!_Frame", "Default")
 		MacOptionsFrameCancel:SetStylePanel("Button")
 		MacOptionsFrameOkay:SetStylePanel("Button")
 		MacOptionsButtonKeybindings:SetStylePanel("Button")
@@ -585,15 +585,15 @@ local function SystemPanelQue()
 		MacOptionsFrameDefaults:SetHeight(22)
 	end
 	OpacityFrame:RemoveTextures()
-	OpacityFrame:SetStylePanel("Fixed", "Transparent", true)
+	OpacityFrame:SetStylePanel("!_Frame", "Transparent", true)

 	hooksecurefunc("UIDropDownMenu_InitializeHelper", function(self)
 		for i = 1, UIDROPDOWNMENU_MAXLEVELS do
 			local name = ("DropDownList%d"):format(i)
 			local bg = _G[("%sBackdrop"):format(name)]
-			bg:SetStylePanel("Default", 'Transparent')
+			bg:SetStylePanel("Frame", 'Transparent')
 			local menu = _G[("%sMenuBackdrop"):format(name)]
-			menu:SetStylePanel("Default", 'Transparent')
+			menu:SetStylePanel("Frame", 'Transparent')
 		end
 	end)

@@ -608,7 +608,7 @@ local function SystemPanelQue()
 		local frame = _G[SystemFrameList13[i]]
 		if(frame) then
 			frame:RemoveTextures()
-			frame:SetStylePanel("Default", 'Transparent')
+			frame:SetStylePanel("Frame", 'Transparent')
 		end
 	end

@@ -682,7 +682,7 @@ local function SystemPanelQue()
 	Graphics_RightQuality:Die()

 	MacOptionsFrame:RemoveTextures()
-	MacOptionsFrame:SetStylePanel("Fixed")
+	MacOptionsFrame:SetStylePanel("!_Frame")
 	MacOptionsButtonCompress:SetStylePanel("Button")
 	MacOptionsButtonKeybindings:SetStylePanel("Button")
 	MacOptionsFrameDefaults:SetStylePanel("Button")
@@ -712,12 +712,12 @@ local function SystemPanelQue()
 	ReportCheatingDialogCommentFrame:RemoveTextures()
 	ReportCheatingDialogReportButton:SetStylePanel("Button")
 	ReportCheatingDialogCancelButton:SetStylePanel("Button")
-	ReportCheatingDialog:SetStylePanel("Fixed", "Transparent", true)
+	ReportCheatingDialog:SetStylePanel("!_Frame", "Transparent", true)
 	ReportCheatingDialogCommentFrameEditBox:SetStylePanel("Editbox")
 	ReportPlayerNameDialog:RemoveTextures()
 	ReportPlayerNameDialogCommentFrame:RemoveTextures()
 	ReportPlayerNameDialogCommentFrameEditBox:SetStylePanel("Editbox")
-	ReportPlayerNameDialog:SetStylePanel("Fixed", "Transparent", true)
+	ReportPlayerNameDialog:SetStylePanel("!_Frame", "Transparent", true)
 	ReportPlayerNameDialogReportButton:SetStylePanel("Button")
 	ReportPlayerNameDialogCancelButton:SetStylePanel("Button")

@@ -726,7 +726,7 @@ local function SystemPanelQue()
 	SideDressUpFrame:SetSizeToScale(300, 400)
 	SideDressUpModel:RemoveTextures(true)
 	SideDressUpModel:SetAllPoints(SideDressUpFrame)
-	SideDressUpModel:SetStylePanel("Fixed", "ModelBorder")
+	SideDressUpModel:SetStylePanel("!_Frame", "ModelBorder")
 	SideDressUpModelResetButton:SetStylePanel("Button")
 	SideDressUpModelResetButton:SetPoint("BOTTOM", SideDressUpModel, "BOTTOM", 0, 20)
 	PLUGIN:ApplyCloseButtonStyle(SideDressUpModelCloseButton)
diff --git a/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/tabard.lua b/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/tabard.lua
index 6930f14..0375402 100644
--- a/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/tabard.lua
+++ b/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/tabard.lua
@@ -58,8 +58,8 @@ local function TabardFrameStyle()
 		 return
 	end
 	cleanT(TabardFrame, true)
-	TabardFrame:SetStylePanel("Default", "Action", false)
-	TabardModel:SetStylePanel("Fixed", "Transparent")
+	TabardFrame:SetStylePanel("Frame", "Composite2", false)
+	TabardModel:SetStylePanel("!_Frame", "Transparent")
 	TabardFrameCancelButton:SetStylePanel("Button")
 	TabardFrameAcceptButton:SetStylePanel("Button")
 	PLUGIN:ApplyCloseButtonStyle(TabardFrameCloseButton)
diff --git a/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/talents.lua b/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/talents.lua
index 14101c4..d1c7a67 100644
--- a/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/talents.lua
+++ b/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/talents.lua
@@ -140,7 +140,7 @@ local function TalentFrameStyle()
 		end
 	end

-	PlayerTalentFrameTalents:SetStylePanel("Fixed", "Inset")
+	PlayerTalentFrameTalents:SetStylePanel("!_Frame", "Inset")
 	PlayerTalentFrameTalentsClearInfoFrame.icon:SetTexCoord(0.1, 0.9, 0.1, 0.9)
 	PlayerTalentFrameTalentsClearInfoFrame:SetWidthToScale(PlayerTalentFrameTalentsClearInfoFrame:GetWidth()-2)
 	PlayerTalentFrameTalentsClearInfoFrame:SetHeightToScale(PlayerTalentFrameTalentsClearInfoFrame:GetHeight()-2)
@@ -225,13 +225,13 @@ local function TalentFrameStyle()

 	local C = _G["PlayerTalentFrameSpecializationSpellScrollFrameScrollChild"]
 	C.ring:Hide()
-	C:SetStylePanel("Fixed", "Inset")
+	C:SetStylePanel("!_Frame", "Inset")
 	C.Panel:SetAllPointsOut(C.specIcon)
 	C.specIcon:SetTexCoord(0.1, 0.9, 0.1, 0.9)

 	local D = _G["PlayerTalentFramePetSpecializationSpellScrollFrameScrollChild"]
 	D.ring:Hide()
-	D:SetStylePanel("Fixed", "Inset")
+	D:SetStylePanel("!_Frame", "Inset")
 	D.Panel:SetAllPointsOut(D.specIcon)
 	D.specIcon:SetTexCoord(0.1, 0.9, 0.1, 0.9)

@@ -259,7 +259,7 @@ local function TalentFrameStyle()
 					button.restyled = true;
 					button:SetSizeToScale(30, 30)
 					button.ring:Hide()
-					button:SetStylePanel("Fixed", "Inset")
+					button:SetStylePanel("!_Frame", "Inset")
 					button.icon:SetTexCoord(0.1, 0.9, 0.1, 0.9)
 					button.icon:SetAllPointsIn()
 				end
@@ -309,7 +309,7 @@ local function TalentFrameStyle()
 				button.bg:SetAlpha(0)
 				button.learnedTex:SetAlpha(0)
 				button.selectedTex:SetAlpha(0)
-				button:SetStylePanel("Fixed", "Button")
+				button:SetStylePanel("!_Frame", "Button")
 				button:GetHighlightTexture():SetAllPointsIn(button.Panel)
 			end
 		end
@@ -364,7 +364,7 @@ local function GlyphStyle()
 	GlyphFrame:RemoveTextures()
 	--GlyphFrame.background:ClearAllPoints()
 	--GlyphFrame.background:SetAllPoints(PlayerTalentFrameInset)
-	GlyphFrame:SetStylePanel("Fixed", "Comic", false, 0, 3, 3)
+	GlyphFrame:SetStylePanel("!_Frame", "Premium", false, 0, 3, 3)
 	GlyphFrameSideInset:RemoveTextures()
 	GlyphFrameClearInfoFrame:RemoveTextures()
 	GlyphFrameClearInfoFrame.icon:SetTexCoord(0.1, 0.9, 0.1, 0.9 )
@@ -398,7 +398,7 @@ local function GlyphStyle()

 	GlyphFrameHeader1:RemoveTextures()
 	GlyphFrameHeader2:RemoveTextures()
-	GlyphFrameScrollFrame:SetStylePanel("Default", "Inset", false, 3, 2, 2)
+	GlyphFrameScrollFrame:SetStylePanel("Frame", "Inset", false, 3, 2, 2)
 end

 PLUGIN:SaveBlizzardStyle("Blizzard_GlyphUI", GlyphStyle)
\ No newline at end of file
diff --git a/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/taxi.lua b/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/taxi.lua
index 9e874ab..f93b7df 100644
--- a/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/taxi.lua
+++ b/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/taxi.lua
@@ -34,7 +34,7 @@ local function TaxiStyle()

 	PLUGIN:ApplyWindowStyle(TaxiFrame)

-	--TaxiRouteMap:SetStylePanel("Default", "Blackout")
+	--TaxiRouteMap:SetStylePanel("Frame", "Blackout")
 	--TaxiRouteMap.Panel:SetAllPointsOut(TaxiRouteMap, 4, 4)

 	PLUGIN:ApplyCloseButtonStyle(TaxiFrame.CloseButton)
diff --git a/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/timemanager.lua b/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/timemanager.lua
index 86b1446..3585131 100644
--- a/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/timemanager.lua
+++ b/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/timemanager.lua
@@ -44,7 +44,7 @@ local function TimeManagerStyle()
 	TimeManagerMilitaryTimeCheck:SetStylePanel("Checkbox", true)
 	TimeManagerLocalTimeCheck:SetStylePanel("Checkbox", true)
 	TimeManagerStopwatchFrame:RemoveTextures()
-	TimeManagerStopwatchCheck:SetStylePanel("Fixed", "Default")
+	TimeManagerStopwatchCheck:SetStylePanel("!_Frame", "Default")
 	TimeManagerStopwatchCheck:GetNormalTexture():SetTexCoord(0.1, 0.9, 0.1, 0.9)
 	TimeManagerStopwatchCheck:GetNormalTexture():SetAllPointsIn()
 	local sWatch = TimeManagerStopwatchCheck:CreateTexture(nil, "OVERLAY")
@@ -54,7 +54,7 @@ local function TimeManagerStyle()
 	TimeManagerStopwatchCheck:SetHighlightTexture(sWatch)

 	StopwatchFrame:RemoveTextures()
-	StopwatchFrame:SetStylePanel("Default", 'Transparent')
+	StopwatchFrame:SetStylePanel("Frame", 'Transparent')
 	StopwatchFrame.Panel:SetPointToScale("TOPLEFT", 0, -17)
 	StopwatchFrame.Panel:SetPointToScale("BOTTOMRIGHT", 0, 2)

diff --git a/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/trade.lua b/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/trade.lua
index cfc4c42..e450c0a 100644
--- a/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/trade.lua
+++ b/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/trade.lua
@@ -75,20 +75,20 @@ local function TradeFrameStyle()
 			Z:RemoveTextures()
 			b:SetAllPointsIn(Y)
 			b:SetTexCoord(0.1, 0.9, 0.1, 0.9)
-			Y:SetStylePanel("Fixed", "Button", true)
+			Y:SetStylePanel("!_Frame", "Button", true)
 			Y:SetStylePanel("Button")
 			Y.bg = CreateFrame("Frame", nil, Y)
-			Y.bg:SetStylePanel("Default", "Inset")
+			Y.bg:SetStylePanel("Frame", "Inset")
 			Y.bg:SetPoint("TOPLEFT", Y, "TOPRIGHT", 4, 0)
 			Y.bg:SetPoint("BOTTOMRIGHT", _G["TradePlayerItem"..i.."NameFrame"], "BOTTOMRIGHT", 0, 14)
 			Y.bg:SetFrameLevel(Y:GetFrameLevel()-3)
 			Y:SetFrameLevel(Y:GetFrameLevel()-1)
 			z:SetAllPointsIn(Z)
 			z:SetTexCoord(0.1, 0.9, 0.1, 0.9)
-			Z:SetStylePanel("Fixed", "Button", true)
+			Z:SetStylePanel("!_Frame", "Button", true)
 			Z:SetStylePanel("Button")
 			Z.bg = CreateFrame("Frame", nil, Z)
-			Z.bg:SetStylePanel("Default", "Inset")
+			Z.bg:SetStylePanel("Frame", "Inset")
 			Z.bg:SetPoint("TOPLEFT", Z, "TOPRIGHT", 4, 0)
 			Z.bg:SetPoint("BOTTOMRIGHT", _G["TradeRecipientItem"..i.."NameFrame"], "BOTTOMRIGHT", 0, 14)
 			Z.bg:SetFrameLevel(Z:GetFrameLevel()-3)
diff --git a/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/tradeskill (Failbox's conflicted copy 2014-12-26).lua b/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/tradeskill (Failbox's conflicted copy 2014-12-26).lua
deleted file mode 100644
index 5dc3908..0000000
--- a/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/tradeskill (Failbox's conflicted copy 2014-12-26).lua
+++ /dev/null
@@ -1,127 +0,0 @@
---[[
-##############################################################################
-_____/\\\\\\\\\\\____/\\\________/\\\__/\\\________/\\\__/\\\\\\\\\\\_       #
- ___/\\\/////////\\\_\/\\\_______\/\\\_\/\\\_______\/\\\_\/////\\\///__      #
-  __\//\\\______\///__\//\\\______/\\\__\/\\\_______\/\\\_____\/\\\_____     #
-   ___\////\\\__________\//\\\____/\\\___\/\\\_______\/\\\_____\/\\\_____    #
-    ______\////\\\________\//\\\__/\\\____\/\\\_______\/\\\_____\/\\\_____   #
-     _________\////\\\______\//\\\/\\\_____\/\\\_______\/\\\_____\/\\\_____  #
-      __/\\\______\//\\\______\//\\\\\______\//\\\______/\\\______\/\\\_____ #
-       _\///\\\\\\\\\\\/________\//\\\________\///\\\\\\\\\/____/\\\\\\\\\\\_#
-        ___\///////////___________\///___________\/////////_____\///////////_#
-##############################################################################
-S U P E R - V I L L A I N - U I   By: Munglunch                              #
-##############################################################################
---]]
---[[ GLOBALS ]]--
-local _G = _G;
-local unpack  = _G.unpack;
-local select  = _G.select;
---[[ ADDON ]]--
-local SV = _G.SVUI;
-local L = SV.L;
-local PLUGIN = select(2, ...);
-local Schema = PLUGIN.Schema;
---[[
-##########################################################
-TRADESKILL PLUGINR
-##########################################################
-]]--
-local function TradeSkillStyle()
-	if PLUGIN.db.blizzard.enable ~= true or PLUGIN.db.blizzard.tradeskill ~= true then
-		 return
-	end
-
-	TradeSkillListScrollFrame:RemoveTextures()
-	TradeSkillDetailScrollFrame:RemoveTextures()
-	TradeSkillFrameInset:RemoveTextures()
-	TradeSkillExpandButtonFrame:RemoveTextures()
-	TradeSkillDetailScrollChildFrame:RemoveTextures()
-	TradeSkillRankFrame:RemoveTextures()
-	TradeSkillCreateButton:RemoveTextures(true)
-	TradeSkillCancelButton:RemoveTextures(true)
-	TradeSkillFilterButton:RemoveTextures(true)
-	TradeSkillCreateAllButton:RemoveTextures(true)
-	TradeSkillViewGuildCraftersButton:RemoveTextures(true)
-
-	PLUGIN:ApplyWindowStyle(TradeSkillFrame, true, true)
-	PLUGIN:ApplyWindowStyle(TradeSkillGuildFrame)
-
-	TradeSkillGuildFrame:SetPointToScale("BOTTOMLEFT", TradeSkillFrame, "BOTTOMRIGHT", 3, 19)
-	TradeSkillGuildFrameContainer:RemoveTextures()
-	TradeSkillGuildFrameContainer:SetStylePanel("Default", "Inset")
-	PLUGIN:ApplyCloseButtonStyle(TradeSkillGuildFrameCloseButton)
-
-	TradeSkillRankFrame:SetStylePanel("Default", "Bar", true)
-	TradeSkillRankFrame:SetStatusBarTexture([[Interface\AddOns\SVUI\assets\artwork\Bars\DEFAULT]])
-	TradeSkillListScrollFrame:SetStylePanel("Default", "Inset")
-	TradeSkillDetailScrollFrame:SetStylePanel("Default", "Inset")
-
-	TradeSkillCreateButton:SetStylePanel("Button")
-	TradeSkillCancelButton:SetStylePanel("Button")
-	TradeSkillFilterButton:SetStylePanel("Button")
-	TradeSkillCreateAllButton:SetStylePanel("Button")
-	TradeSkillViewGuildCraftersButton:SetStylePanel("Button")
-
-	PLUGIN:ApplyScrollFrameStyle(TradeSkillListScrollFrameScrollBar)
-	PLUGIN:ApplyScrollFrameStyle(TradeSkillDetailScrollFrameScrollBar)
-
-	TradeSkillLinkButton:SetSizeToScale(17, 14)
-	TradeSkillLinkButton:SetPointToScale("LEFT", TradeSkillLinkFrame, "LEFT", 5, -1)
-	TradeSkillLinkButton:SetStylePanel("Button", nil, nil, nil, nil, true)
-	TradeSkillLinkButton:GetNormalTexture():SetTexCoord(0.25, 0.7, 0.45, 0.8)
-
-	TradeSkillFrameSearchBox:SetStylePanel("Editbox")
-	TradeSkillInputBox:SetStylePanel("Editbox")
-
-	PLUGIN:ApplyPaginationStyle(TradeSkillDecrementButton)
-	PLUGIN:ApplyPaginationStyle(TradeSkillIncrementButton)
-
-	TradeSkillIncrementButton:SetPointToScale("RIGHT", TradeSkillCreateButton, "LEFT", -13, 0)
-	PLUGIN:ApplyCloseButtonStyle(TradeSkillFrameCloseButton)
-
-	TradeSkillSkillIcon:SetStylePanel("Fixed", "Slot")
-
-	local internalTest = false;
-
-	hooksecurefunc("TradeSkillFrame_SetSelection", function(_)
-		TradeSkillSkillIcon:SetStylePanel("Fixed", "Slot")
-		if TradeSkillSkillIcon:GetNormalTexture() then
-			TradeSkillSkillIcon:GetNormalTexture():SetTexCoord(0.1, 0.9, 0.1, 0.9)
-		end
-		for i=1, MAX_TRADE_SKILL_REAGENTS do
-			local u = _G["TradeSkillReagent"..i]
-			local icon = _G["TradeSkillReagent"..i.."IconTexture"]
-			local a1 = _G["TradeSkillReagent"..i.."Count"]
-			icon:SetTexCoord(0.1, 0.9, 0.1, 0.9)
-			icon:SetDrawLayer("OVERLAY")
-			if not icon.backdrop then
-				local a2 = CreateFrame("Frame", nil, u)
-				if u:GetFrameLevel()-1 >= 0 then
-					 a2:SetFrameLevel(u:GetFrameLevel()-1)
-				else
-					 a2:SetFrameLevel(0)
-				end
-				a2:SetAllPointsOut(icon)
-				a2:SetStylePanel("Fixed", "Slot")
-				icon:SetParent(a2)
-				icon.backdrop = a2
-			end
-			a1:SetParent(icon.backdrop)
-			a1:SetDrawLayer("OVERLAY")
-			if i > 2 and internalTest == false then
-				local d, a3, f, g, h = u:GetPoint()
-				u:ClearAllPoints()
-				u:SetPointToScale(d, a3, f, g, h-3)
-				internalTest = true
-			end
-			_G["TradeSkillReagent"..i.."NameFrame"]:Die()
-		end
-	end)
-end
---[[
-##########################################################
-PLUGIN LOADING
-##########################################################
-]]--
-PLUGIN:SaveBlizzardStyle("Blizzard_TradeSkillUI",TradeSkillStyle)
\ No newline at end of file
diff --git a/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/tradeskill.lua b/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/tradeskill.lua
index 25a34ff..236657c 100644
--- a/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/tradeskill.lua
+++ b/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/tradeskill.lua
@@ -59,16 +59,16 @@ local function TradeSkillStyle()

 	TradeSkillGuildFrame:SetPointToScale("BOTTOMLEFT", TradeSkillFrame, "BOTTOMRIGHT", 3, 19)
 	TradeSkillGuildFrameContainer:RemoveTextures()
-	TradeSkillGuildFrameContainer:SetStylePanel("Default", "Inset")
+	TradeSkillGuildFrameContainer:SetStylePanel("Frame", "Inset")
 	PLUGIN:ApplyCloseButtonStyle(TradeSkillGuildFrameCloseButton)

-	TradeSkillRankFrame:SetStylePanel("Default", "Bar", true)
+	TradeSkillRankFrame:SetStylePanel("Frame", "Bar", true)
 	TradeSkillRankFrame:SetStatusBarTexture([[Interface\AddOns\SVUI\assets\artwork\Bars\DEFAULT]])

 	TradeSkillListScrollFrame:SetSizeToScale(327, 290)
-	TradeSkillListScrollFrame:SetStylePanel("Default", "Inset")
+	TradeSkillListScrollFrame:SetStylePanel("Frame", "Inset")
 	TradeSkillDetailScrollFrame:SetSizeToScale(327, 180)
-	TradeSkillDetailScrollFrame:SetStylePanel("Default", "Inset")
+	TradeSkillDetailScrollFrame:SetStylePanel("Frame", "Inset")

 	TradeSkillCreateButton:SetStylePanel("Button")
 	TradeSkillCancelButton:SetStylePanel("Button")
@@ -93,12 +93,12 @@ local function TradeSkillStyle()
 	TradeSkillIncrementButton:SetPointToScale("RIGHT", TradeSkillCreateButton, "LEFT", -13, 0)
 	PLUGIN:ApplyCloseButtonStyle(TradeSkillFrameCloseButton)

-	TradeSkillSkillIcon:SetStylePanel("Fixed", "Slot")
+	TradeSkillSkillIcon:SetStylePanel("!_Frame", "Slot")

 	local internalTest = false;

 	hooksecurefunc("TradeSkillFrame_SetSelection", function(_)
-		TradeSkillSkillIcon:SetStylePanel("Fixed", "Slot")
+		TradeSkillSkillIcon:SetStylePanel("!_Frame", "Slot")
 		if TradeSkillSkillIcon:GetNormalTexture() then
 			TradeSkillSkillIcon:GetNormalTexture():SetTexCoord(0.1, 0.9, 0.1, 0.9)
 		end
@@ -116,7 +116,7 @@ local function TradeSkillStyle()
 					 a2:SetFrameLevel(0)
 				end
 				a2:SetAllPointsOut(icon)
-				a2:SetStylePanel("Fixed", "Slot")
+				a2:SetStylePanel("!_Frame", "Slot")
 				icon:SetParent(a2)
 				icon.backdrop = a2
 			end
diff --git a/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/trainer.lua b/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/trainer.lua
index 3e1bad6..cebcacb 100644
--- a/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/trainer.lua
+++ b/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/trainer.lua
@@ -57,7 +57,7 @@ local function TrainerStyle()

 	for i=1, 8 do
 		_G["ClassTrainerScrollFrameButton"..i]:RemoveTextures()
-		_G["ClassTrainerScrollFrameButton"..i]:SetStylePanel("Fixed")
+		_G["ClassTrainerScrollFrameButton"..i]:SetStylePanel("!_Frame")
 		_G["ClassTrainerScrollFrameButton"..i]:SetStylePanel("Button")
 		_G["ClassTrainerScrollFrameButton"..i.."Icon"]:SetTexCoord(0.1, 0.9, 0.1, 0.9)
 		_G["ClassTrainerScrollFrameButton"..i].Panel:SetAllPointsOut(_G["ClassTrainerScrollFrameButton"..i.."Icon"])
@@ -79,17 +79,17 @@ local function TrainerStyle()
 	_G["ClassTrainerTrainButton"]:RemoveTextures()
 	_G["ClassTrainerTrainButton"]:SetStylePanel("Button")
 	PLUGIN:ApplyDropdownStyle(ClassTrainerFrameFilterDropDown, 155)
-	ClassTrainerScrollFrame:SetStylePanel("Fixed", "Inset")
+	ClassTrainerScrollFrame:SetStylePanel("!_Frame", "Inset")
 	PLUGIN:ApplyCloseButtonStyle(ClassTrainerFrameCloseButton, ClassTrainerFrame)
 	ClassTrainerFrameSkillStepButton.icon:SetTexCoord(0.1, 0.9, 0.1, 0.9)
-	ClassTrainerFrameSkillStepButton:SetStylePanel("Fixed", "Button", true)
+	ClassTrainerFrameSkillStepButton:SetStylePanel("!_Frame", "Button", true)
 	--ClassTrainerFrameSkillStepButton.Panel:SetAllPointsOut(ClassTrainerFrameSkillStepButton.icon)
 	--ClassTrainerFrameSkillStepButton.icon:SetParent(ClassTrainerFrameSkillStepButton.Panel)
 	ClassTrainerFrameSkillStepButtonHighlight:SetTexture(1, 1, 1, 0.3)
 	ClassTrainerFrameSkillStepButton.selectedTex:SetTexture(1, 1, 1, 0.3)
 	ClassTrainerStatusBar:RemoveTextures()
 	ClassTrainerStatusBar:SetStatusBarTexture(SV.Media.bar.default)
-	ClassTrainerStatusBar:SetStylePanel("Default", "Slot", true, 1, 2, 2)
+	ClassTrainerStatusBar:SetStylePanel("Frame", "Slot", true, 1, 2, 2)
 	ClassTrainerStatusBar.rankText:ClearAllPoints()
 	ClassTrainerStatusBar.rankText:SetPoint("CENTER", ClassTrainerStatusBar, "CENTER")
 end
diff --git a/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/transmog.lua b/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/transmog.lua
index 03d11f6..86a5000 100644
--- a/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/transmog.lua
+++ b/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/transmog.lua
@@ -72,7 +72,7 @@ local function TransmogStyle()
 	TransmogrifyModelFrame:ClearAllPoints()
 	TransmogrifyModelFrame:SetPointToScale("TOPLEFT", TransmogrifyFrame, "TOPLEFT", 12, -22)
 	TransmogrifyModelFrame:SetPointToScale("BOTTOMRIGHT", TransmogrifyFrame, "BOTTOMRIGHT", -12, 36)
-	TransmogrifyModelFrame:SetStylePanel("Fixed", "Model")
+	TransmogrifyModelFrame:SetStylePanel("!_Frame", "Model")

 	TransmogrifyFrameButtonFrame:GetRegions():Die()
 	TransmogrifyApplyButton:RemoveTextures()
@@ -86,7 +86,7 @@ local function TransmogStyle()
 		local a9 = _G["TransmogrifyFrame"..a9 .."Slot"]
 		if a9 then
 			a9:RemoveTextures()
-			a9:SetStylePanel("Slot", true)
+			a9:SetStylePanel("Slot")
 			a9:SetFrameLevel(a9:GetFrameLevel()+2)

 			a9.Panel:SetAllPoints()
@@ -98,7 +98,7 @@ local function TransmogStyle()

 	TransmogrifyConfirmationPopup:SetParent(UIParent)
 	TransmogrifyConfirmationPopup:RemoveTextures()
-	TransmogrifyConfirmationPopup:SetStylePanel("Default", "Pattern")
+	TransmogrifyConfirmationPopup:SetStylePanel("Frame", "Pattern")
 	TransmogrifyConfirmationPopup.Button1:SetStylePanel("Button")
 	TransmogrifyConfirmationPopup.Button2:SetStylePanel("Button")
 	PLUGIN:ApplyItemButtonStyle(TransmogrifyConfirmationPopupItemFrame1, true)
diff --git a/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/voidstorage.lua b/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/voidstorage.lua
index 329f532..75f8e14 100644
--- a/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/voidstorage.lua
+++ b/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/voidstorage.lua
@@ -112,7 +112,7 @@ local function VoidSlotStyler(name, index)
   if(button) then
     local border = button.IconBorder
     if(bg) then bg:Hide() end
-    button:SetStylePanel("Slot", true, 2, 0, 0)
+    button:SetStylePanel("Slot", 2, 0, 0)
     if(icon) then
       icon:SetTexCoord(0.1, 0.9, 0.1, 0.9)
       icon:SetAllPointsIn(button)
@@ -145,7 +145,7 @@ local function VoidStorageStyle()
   end

   VoidStoragePurchaseFrame:SetFrameStrata('DIALOG')
-  VoidStoragePurchaseFrame:SetStylePanel("Fixed", "Button", true)
+  VoidStoragePurchaseFrame:SetStylePanel("!_Frame", "Button", true)
   VoidStorageFrameMarbleBg:Die()
   VoidStorageFrameLines:Die()

@@ -157,7 +157,7 @@ local function VoidStorageStyle()

   PLUGIN:ApplyCloseButtonStyle(VoidStorageBorderFrame.CloseButton)

-  VoidItemSearchBox:SetStylePanel("Default", "Inset")
+  VoidItemSearchBox:SetStylePanel("Frame", "Inset")
   VoidItemSearchBox.Panel:SetPointToScale("TOPLEFT", 10, -1)
   VoidItemSearchBox.Panel:SetPointToScale("BOTTOMRIGHT", 4, 1)

diff --git a/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/worldmap.lua b/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/worldmap.lua
index 8404034..ed05d08 100644
--- a/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/worldmap.lua
+++ b/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/worldmap.lua
@@ -86,16 +86,16 @@ local function StripQuestMapFrame()
   QuestMapFrame.DetailsFrame.TrackButton:RemoveTextures(true)
   QuestMapFrame.DetailsFrame.RewardsFrame:RemoveTextures(true)

-  QuestMapFrame.DetailsFrame:SetStylePanel("Default", "Paper")
+  QuestMapFrame.DetailsFrame:SetStylePanel("Frame", "Paper")
   QuestMapFrame.DetailsFrame.CompleteQuestFrame.CompleteButton:SetStylePanel("Button")
   QuestMapFrame.DetailsFrame.BackButton:SetStylePanel("Button")
   QuestMapFrame.DetailsFrame.AbandonButton:SetStylePanel("Button")
   QuestMapFrame.DetailsFrame.ShareButton:SetStylePanel("Button")
   QuestMapFrame.DetailsFrame.TrackButton:SetStylePanel("Button")
-  QuestMapFrame.DetailsFrame.RewardsFrame:SetStylePanel("Default", "Paper")
+  QuestMapFrame.DetailsFrame.RewardsFrame:SetStylePanel("Frame", "Paper")
   QuestMapFrame.DetailsFrame.RewardsFrame:SetPanelColor("dark")

-  QuestScrollFrame:SetStylePanel("Fixed", "Paper")
+  QuestScrollFrame:SetStylePanel("!_Frame", "Paper")
   QuestScrollFrame:SetPanelColor("special")

   QuestScrollFrame.ViewAll:SetStylePanel("Button")
@@ -143,13 +143,13 @@ local function WorldMapStyle()
   if PLUGIN.db.blizzard.enable ~= true or PLUGIN.db.blizzard.worldmap ~= true then return end

   PLUGIN:ApplyWindowStyle(WorldMapFrame, true, true)
-  WorldMapFrame.Panel:SetStylePanel("Default", "Blackout")
+  WorldMapFrame.Panel:SetStylePanel("Frame", "Blackout")

   PLUGIN:ApplyScrollFrameStyle(WorldMapQuestScrollFrameScrollBar)
   PLUGIN:ApplyScrollFrameStyle(WorldMapQuestDetailScrollFrameScrollBar, 4)
   PLUGIN:ApplyScrollFrameStyle(WorldMapQuestRewardScrollFrameScrollBar, 4)

-  WorldMapDetailFrame:SetStylePanel("Default", "Blackout")
+  WorldMapDetailFrame:SetStylePanel("Frame", "Blackout")

   WorldMapFrameSizeDownButton:SetFrameLevel(999)
   WorldMapFrameSizeUpButton:SetFrameLevel(999)
@@ -167,7 +167,7 @@ local function WorldMapStyle()

   StripQuestMapFrame()

-  --WorldMapFrame.UIElementsFrame:SetStylePanel("Default", "Blackout")
+  --WorldMapFrame.UIElementsFrame:SetStylePanel("Frame", "Blackout")

   WorldMapFrame:HookScript("OnShow", WorldMap_OnShow)
   hooksecurefunc("WorldMap_ToggleSizeUp", WorldMap_OnShow)
@@ -175,7 +175,7 @@ local function WorldMapStyle()

   WorldMapFrameNavBar:ClearAllPoints()
   WorldMapFrameNavBar:SetPointToScale("TOPLEFT", WorldMapFrame.Panel, "TOPLEFT", 12, -26)
-  WorldMapFrameNavBar:SetStylePanel("Default", "Blackout")
+  WorldMapFrameNavBar:SetStylePanel("Frame", "Blackout")
   WorldMapFrameTutorialButton:ClearAllPoints()
   WorldMapFrameTutorialButton:SetPointToScale("LEFT", WorldMapFrameNavBar.Panel, "RIGHT", -50, 0)

diff --git a/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/worldstate.lua b/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/worldstate.lua
index 1f0a05b..7d1b0e6 100644
--- a/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/worldstate.lua
+++ b/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/worldstate.lua
@@ -31,7 +31,7 @@ local function WorldStateStyle()
 	if PLUGIN.db.blizzard.enable ~= true or PLUGIN.db.blizzard.bgscore ~= true then return end
 	WorldStateScoreScrollFrame:RemoveTextures()
 	WorldStateScoreFrame:RemoveTextures()
-	WorldStateScoreFrame:SetStylePanel("Default", "Halftone")
+	WorldStateScoreFrame:SetStylePanel("Frame", "Composite1")
 	PLUGIN:ApplyCloseButtonStyle(WorldStateScoreFrameCloseButton)
 	PLUGIN:ApplyScrollFrameStyle(WorldStateScoreScrollFrameScrollBar)
 	WorldStateScoreFrameInset:SetAlpha(0)
diff --git a/Interface/AddOns/SVUI_StyleOMatic/components/style_methods.lua b/Interface/AddOns/SVUI_StyleOMatic/components/style_methods.lua
index fd96f7e..80c9c83 100644
--- a/Interface/AddOns/SVUI_StyleOMatic/components/style_methods.lua
+++ b/Interface/AddOns/SVUI_StyleOMatic/components/style_methods.lua
@@ -65,13 +65,13 @@ function PLUGIN:ApplyFrameStyle(this, template, noStripping, fullStripping)
 	if(not this or (this and this.Panel)) then return end
 	if not noStripping then this:RemoveTextures(fullStripping) end
 	template = template or "Transparent"
-	this:SetStylePanel("Default", template)
+	this:SetStylePanel("Frame", template)
 end

 function PLUGIN:ApplyAdjustedFrameStyle(this, template, xTopleft, yTopleft, xBottomright, yBottomright)
 	if(not this or (this and this.Panel)) then return end
 	template = template or "Transparent"
-	this:SetStylePanel("Default", template)
+	this:SetStylePanel("Frame", template)
 	this.Panel:SetPoint("TOPLEFT", this, "TOPLEFT", xTopleft, yTopleft)
 	this.Panel:SetPoint("BOTTOMRIGHT", this, "BOTTOMRIGHT", xBottomright, yBottomright)
 end
@@ -80,31 +80,31 @@ function PLUGIN:ApplyFixedFrameStyle(this, template, noStripping, fullStripping)
 	if(not this or (this and this.Panel)) then return end
 	if not noStripping then this:RemoveTextures(fullStripping) end
 	template = template or "Transparent"
-    this:SetStylePanel("Fixed", template)
+    this:SetStylePanel("!_Frame", template)
 end

 function PLUGIN:ApplyWindowStyle(this, action, fullStrip)
 	if(not this or (this and this.Panel)) then return end
-	local template = action and "Action" or "Halftone"
+	local template = action and "Composite2" or "Composite1"
 	local baselevel = this:GetFrameLevel()
 	if(baselevel < 1) then
 		this:SetFrameLevel(1)
 	end

 	this:RemoveTextures(fullStrip)
-	this:SetStylePanel("Default", template)
+	this:SetStylePanel("Frame", template)
 end

 function PLUGIN:ApplyAdjustedWindowStyle(this, action, fullStrip, padding, xOffset, yOffset)
 	if(not this or (this and this.Panel)) then return end
-	local template = action and "Action" or "Halftone"
+	local template = action and "Composite2" or "Composite1"
 	local baselevel = this:GetFrameLevel()
 	if(baselevel < 1) then
 		this:SetFrameLevel(1)
 	end

 	this:RemoveTextures(fullStrip)
-	this:SetStylePanel("Default", template, false, padding, xOffset, yOffset)
+	this:SetStylePanel("Frame", template, false, padding, xOffset, yOffset)
 end

 function PLUGIN:ApplyWindowHolder(this, fullStrip)
@@ -115,7 +115,7 @@ function PLUGIN:ApplyWindowHolder(this, fullStrip)
 	end

 	this:RemoveTextures(fullStrip)
-	this:SetStylePanel("Default", "Blackout")
+	this:SetStylePanel("Frame", "Blackout")
 end
 --[[
 ##########################################################
@@ -202,9 +202,9 @@ function PLUGIN:ApplyItemButtonStyle(frame, adjust, shrink, noScript)

 	if(not frame.Panel) then
 		if shrink then
-			frame:SetStylePanel("Default", "Button", true, 1, -1, -1)
+			frame:SetStylePanel("Frame", "Button", true, 1, -1, -1)
 		else
-			frame:SetStylePanel("Fixed", "Button")
+			frame:SetStylePanel("!_Frame", "Button")
 		end
 	end

@@ -225,7 +225,7 @@ function PLUGIN:ApplyItemButtonStyle(frame, adjust, shrink, noScript)

 			frame.IconShadow = CreateFrame("Frame", nil, frame)
 			frame.IconShadow:SetAllPointsOut(iconObject)
-			frame.IconShadow:SetStylePanel("Icon", true, 2, 0, 0)
+			frame.IconShadow:SetStylePanel("Icon", 2, 0, 0)

 			--iconObject:SetParent(frame.IconShadow)
 		end
@@ -334,7 +334,7 @@ function PLUGIN:ApplyScrollFrameStyle(this, scale, yOffset)
 			this.ScrollBG = CreateFrame("Frame", nil, this)
 			this.ScrollBG:SetPoint("TOPLEFT", upButton, "BOTTOMLEFT", 0, -1)
 			this.ScrollBG:SetPoint("BOTTOMRIGHT", downButton, "TOPRIGHT", 0, 1)
-			this.ScrollBG:SetStylePanel("Fixed", "Transparent")
+			this.ScrollBG:SetStylePanel("!_Frame", "Transparent")
 		end

 		if(this:GetThumbTexture()) then
@@ -365,7 +365,7 @@ function PLUGIN:ApplyScrollBarStyle(this)

 	this:RemoveTextures()
 	this:SetBackdrop(nil)
-	this:SetStylePanel("Fixed", "Component")
+	this:SetStylePanel("!_Frame", "Heavy")
     this:SetBackdropBorderColor(0.2,0.2,0.2)
 	this:SetThumbTexture("Interface\\Buttons\\UI-ScrollBar-Knob")

@@ -449,7 +449,7 @@ function PLUGIN:ApplyTabStyle(this, addBackground, xOffset, yOffset)
 		yOffset = yOffset or 3
 		this.backdrop = CreateFrame("Frame", nil, this)
 		this.backdrop:SetAllPointsIn(this, xOffset, yOffset)
-		this.backdrop:SetStylePanel("Fixed", "Component", true)
+		this.backdrop:SetStylePanel("!_Frame", "Heavy", true)
 		this.backdrop:SetPanelColor("dark")

 		if(this:GetFrameLevel() > 0) then
@@ -487,8 +487,7 @@ function PLUGIN:ApplyPaginationStyle(button, isVertical)
 	button:SetHighlightTexture(0,0,0,0)
 	button:SetDisabledTexture("")

-	button:SetStylePanel("Button")
-	button:SetSizeToScale((button:GetWidth() - 7), (button:GetHeight() - 7))
+	button:SetStylePanel("!_Button", nil, 1, -7, -7)

 	if not button.icon then
 		button.icon = button:CreateTexture(nil,'ARTWORK')
@@ -589,7 +588,7 @@ function PLUGIN:ApplyDropdownStyle(this, width)
 		local bg = CreateFrame("Frame", nil, this)
 		bg:SetPointToScale("TOPLEFT", this, "TOPLEFT", 18, -2)
 		bg:SetPointToScale("BOTTOMRIGHT", ddButton, "BOTTOMRIGHT", 2, -2)
-		bg:SetStylePanel("Default", "Blackout")
+		bg:SetStylePanel("Frame", "Blackout")
 		bg:SetBackdropBorderColor(0,0,0)
 		this.Panel = bg
 	end
diff --git a/Interface/AddOns/SVUI_TrackOMatic/SVUI_TrackOMatic.lua b/Interface/AddOns/SVUI_TrackOMatic/SVUI_TrackOMatic.lua
index df76873..5c95a02 100644
--- a/Interface/AddOns/SVUI_TrackOMatic/SVUI_TrackOMatic.lua
+++ b/Interface/AddOns/SVUI_TrackOMatic/SVUI_TrackOMatic.lua
@@ -227,7 +227,6 @@ local StartTrackingQuest = function(self, questID)
         end
         self.Compass.questID = questID
         self.Compass:Show()
-
     else
         self.Compass.questID = nil
         self.Compass:Hide()