diff --git a/src/art/vector/Hair_Back.tw b/src/art/vector/Hair_Back.tw
index 0f3971a75895458bd271ad6c99883ca350a29180..e82ed8eaa185f60f6083ae3a81be4074e476eae1 100644
--- a/src/art/vector/Hair_Back.tw
+++ b/src/art/vector/Hair_Back.tw
@@ -1,6 +1,6 @@
 :: Art_Vector_Hair_Back_ [nobr]
 
-<<if $args[0].fuckdoll == 0 && _artSlave.hStyle != "shaved" && _artSlave.hStyle != "permed" && _artSlave.hStyle != "up" && _artSlave.hStyle != "neat" && _artSlave.hStyle != "ponytail" && _artSlave.hStyle != "bun" && _artSlave.hStyle != "curled" && _artSlave.hStyle != "eary" && _artSlave.hStyle != "luxurious" && _artSlave.hStyle != "afro" && _artSlave.hStyle != "messy" && _artSlave.hStyle != "dreadlocks" && _artSlave.hStyle != "cornrows" && _artSlave.hStyle != "braided" && _artSlave.hStyle != "tails" && _artSlave.hStyle != "strip" && _artSlave.clothes != "restrictive latex" && _artSlave.clothes != "a hijab and abaya" && _artSlave.clothes != "a chattel habit" && _artSlave.clothes != "a fallen nuns habit" && _artSlave.clothes != "a penitent nuns habit" && _artSlave.clothes != "Western clothing">>
+<<if $args[0].fuckdoll == 0 && _artSlave.hStyle != "shaved" && _artSlave.hStyle != "permed" && _artSlave.hStyle != "up" && _artSlave.hStyle != "neat" && _artSlave.hStyle != "ponytail" && _artSlave.hStyle != "bun" && _artSlave.hStyle != "curled" && _artSlave.hStyle != "eary" && _artSlave.hStyle != "luxurious" && _artSlave.hStyle != "afro" && _artSlave.hStyle != "messy" && _artSlave.hStyle != "dreadlocks" && _artSlave.hStyle != "cornrows" && _artSlave.hStyle != "braided" && _artSlave.hStyle != "tails" && _artSlave.hStyle != "strip" && _artSlave.clothes != "restrictive latex" && _artSlave.clothes != "a hijab and abaya" && _artSlave.clothes != "a chattel habit" && _artSlave.clothes != "a fallen nuns habit" && _artSlave.clothes != "a penitent nuns habit" && _artSlave.clothes != "Western clothing" && _artSlave.hStyle != "messy bun">>
 	<<include Art_Vector_Hair_Back_Messy_Medium>>
 <</if>>
 
@@ -120,6 +120,14 @@
 		<<elseif _artSlave.hLength >= 10>>
 			<<include Art_Vector_Hair_Back_Tails_Short>>
 		<</if>>
+	<<elseif _artSlave.hStyle == "messy bun" && _artSlave.clothes != "restrictive latex" && _artSlave.clothes != "a hijab and abaya" && _artSlave.clothes != "a chattel habit" && _artSlave.clothes != "a fallen nuns habit" && _artSlave.clothes != "a penitent nuns habit" && _artSlave.clothes != "faceless cybersuit" && _artSlave.clothes != "half-face cybersuit" && _artSlave.clothes != "Western clothing">>
+		<<if _artSlave.hLength >= 60>>
+			<<include Art_Vector_Hair_Back_Ninja_Long>>
+		<<elseif _artSlave.hLength >= 30>>
+			<<include Art_Vector_Hair_Back_Ninja_Medium>>     
+		<<elseif _artSlave.hLength >= 10>>
+			<<include Art_Vector_Hair_Back_Ninja_Short>>
+		<</if>>
 <</if>>
 
 /* note: latex clothing actually shows some hair, but there is no appropriate art for it */
\ No newline at end of file
diff --git a/src/art/vector/Hair_Fore.tw b/src/art/vector/Hair_Fore.tw
index 41c810fdb4d4a7453f49749169e0a251cc794c52..e2ee784d849774f2ff03886995f889733dc421a8 100644
--- a/src/art/vector/Hair_Fore.tw
+++ b/src/art/vector/Hair_Fore.tw
@@ -1,6 +1,6 @@
 :: Art_Vector_Hair_Fore_ [nobr]
 
-<<if $args[0].fuckdoll == 0 && _artSlave.hStyle != "shaved" && _artSlave.hStyle != "permed" && _artSlave.hStyle != "up" && _artSlave.hStyle != "neat" && _artSlave.hStyle != "ponytail" && _artSlave.hStyle != "bun" && _artSlave.hStyle != "curled" && _artSlave.hStyle != "eary" && _artSlave.hStyle != "luxurious" && _artSlave.hStyle != "afro" && _artSlave.hStyle != "messy" && _artSlave.hStyle != "dreadlocks" && _artSlave.hStyle != "cornrows" && _artSlave.hStyle != "braided" && _artSlave.hStyle != "tails" && _artSlave.hStyle != "strip" && _artSlave.clothes != "restrictive latex" && _artSlave.clothes != "a hijab and abaya" && _artSlave.clothes != "a chattel habit" && _artSlave.clothes != "a fallen nuns habit" && _artSlave.clothes != "a penitent nuns habit" && _artSlave.clothes != "Western clothing">>
+<<if $args[0].fuckdoll == 0 && _artSlave.hStyle != "shaved" && _artSlave.hStyle != "permed" && _artSlave.hStyle != "up" && _artSlave.hStyle != "neat" && _artSlave.hStyle != "ponytail" && _artSlave.hStyle != "bun" && _artSlave.hStyle != "curled" && _artSlave.hStyle != "eary" && _artSlave.hStyle != "luxurious" && _artSlave.hStyle != "afro" && _artSlave.hStyle != "messy" && _artSlave.hStyle != "dreadlocks" && _artSlave.hStyle != "cornrows" && _artSlave.hStyle != "braided" && _artSlave.hStyle != "tails" && _artSlave.hStyle != "strip" && _artSlave.clothes != "restrictive latex" && _artSlave.clothes != "a hijab and abaya" && _artSlave.clothes != "a chattel habit" && _artSlave.clothes != "a fallen nuns habit" && _artSlave.clothes != "a penitent nuns habit" && _artSlave.clothes != "Western clothing" && _artSlave.hStyle != "messy bun">>
 	<<include Art_Vector_Hair_Fore_Messy_Medium>>
 <</if>>
 
@@ -110,6 +110,14 @@
 		<<elseif _artSlave.hLength >= 10>>
 			<<include Art_Vector_Hair_Fore_Strip_Short>>
 		<</if>>
+	<<elseif _artSlave.hStyle == "messy bun" && _artSlave.clothes != "restrictive latex" && _artSlave.clothes != "a hijab and abaya" && _artSlave.clothes != "a chattel habit" && _artSlave.clothes != "a fallen nuns habit" && _artSlave.clothes != "a penitent nuns habit" && _artSlave.clothes != "faceless cybersuit" && _artSlave.clothes != "half-face cybersuit" && _artSlave.clothes != "Western clothing">>
+		<<if _artSlave.hLength >= 60>>
+			<<include Art_Vector_Hair_Fore_Ninja_Long>>
+		<<elseif _artSlave.hLength >= 30>>
+			<<include Art_Vector_Hair_Fore_Ninja_Medium>>       
+		<<elseif _artSlave.hLength >= 10>>
+			<<include Art_Vector_Hair_Fore_Ninja_Short>>
+		<</if>>
 <</if>>
 
 /* note: latex clothing actually shows some hair, but there is no appropriate art for it */
\ No newline at end of file
diff --git a/src/uncategorized/cosmeticRulesAssistantSettings.tw b/src/uncategorized/cosmeticRulesAssistantSettings.tw
index 7b73ef44c701e468a211095034344beea820bc93..af0c3f5846f24e1b14740b84fc5f2ec98e98324e 100644
--- a/src/uncategorized/cosmeticRulesAssistantSettings.tw
+++ b/src/uncategorized/cosmeticRulesAssistantSettings.tw
@@ -392,6 +392,10 @@ Hair style: ''$currentRule.hStyle.''
 <<set $currentRule.hStyle = "bun">>
 <<RAChangeHStyle>>
 <</link>>
+| <<link "In a messy bun">>
+<<set $currentRule.hStyle = "messy bun">>
+<<RAChangeHStyle>>
+<</link>>
 | <<link "Curled">>
 <<set $currentRule.hStyle = "curled">>
 <<RAChangeHStyle>>
diff --git a/src/uncategorized/salon.tw b/src/uncategorized/salon.tw
index aceaa98471deb6e0043b593b5fb27ce49b14b7d5..9ab44781f47a10ca243eb20d2ef0ea32da7917d9 100644
--- a/src/uncategorized/salon.tw
+++ b/src/uncategorized/salon.tw
@@ -201,6 +201,7 @@
 		 | [[Up|Salon][$activeSlave.hStyle = "up",$cash -= $modCost]]
 		 | [[In a ponytail|Salon][$activeSlave.hStyle = "ponytail",$cash -= $modCost]]
 		 | [[In a bun|Salon][$activeSlave.hStyle = "bun",$cash -= $modCost]]
+		 | [[In a messy bun|Salon][$activeSlave.hStyle = "messy bun",$cash -= $modCost]]
 		 | [[Curled|Salon][$activeSlave.hStyle = "curled",$cash -= $modCost]]
 		 | [[Permed|Salon][$activeSlave.hStyle = "permed",$cash -= $modCost]]
 		 | [[Luxurious|Salon][$activeSlave.hStyle = "luxurious",$cash -= $modCost]]
@@ -342,6 +343,7 @@
 	<</if>>
 	 [[Ponytail|Salon][$activeSlave.hStyle = "ponytail",$cash -= $modCost]]
 	 | [[Bun|Salon][$activeSlave.hStyle = "bun",$cash -= $modCost]]
+	 | [[Messy Bun|Salon][$activeSlave.hStyle = "messy bun",$cash -= $modCost]]
 	 | [[Curled|Salon][$activeSlave.hStyle = "curled",$cash -= $modCost]]
 	 | [[Permed|Salon][$activeSlave.hStyle = "permed",$cash -= $modCost]]
 	 | [[Luxurious|Salon][$activeSlave.hStyle = "luxurious",$cash -= $modCost]]
diff --git a/src/utility/descriptionWidgetsStyle.tw b/src/utility/descriptionWidgetsStyle.tw
index 020190699e313a3b23f4e0bd0b186bcbce26c333..03561615fa7941a5f07c7e6e480d3d4026915976 100644
--- a/src/utility/descriptionWidgetsStyle.tw
+++ b/src/utility/descriptionWidgetsStyle.tw
@@ -609,6 +609,19 @@ $possessiveCap
 		tied into a
 	<</if>>
 	bun.
+	
+<<case "messy bun">>
+	$activeSlave.hColor hair is
+	<<if $activeSlave.hLength >= 100>>
+		packed tightly into a huge messy
+	<<elseif $activeSlave.hLength >= 30>>
+		packed into a large messy
+	<<elseif $activeSlave.hLength >= 10>>
+		tied into a small messy
+	<<else>>
+		tied into a messy
+	<</if>>
+	bun.
 
 <<case "neat" "strip" "tails" "up" "ponytail" "braided" "dreadlocks" "permed" "curled" "luxurious">>
 	<<set $seed = $activeSlave.hLength/$activeSlave.height>>