<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://hedgedocs.com/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=PTKay</id>
	<title>HedgeDocs - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="https://hedgedocs.com/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=PTKay"/>
	<link rel="alternate" type="text/html" href="https://hedgedocs.com/index.php/Special:Contributions/PTKay"/>
	<updated>2026-05-23T21:34:08Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.43.0</generator>
	<entry>
		<id>https://hedgedocs.com/index.php?title=Player_State_IDs&amp;diff=1383</id>
		<title>Player State IDs</title>
		<link rel="alternate" type="text/html" href="https://hedgedocs.com/index.php?title=Player_State_IDs&amp;diff=1383"/>
		<updated>2026-01-10T23:12:17Z</updated>

		<summary type="html">&lt;p&gt;PTKay: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&#039;&#039;&#039;&#039;&#039;Player State IDs&#039;&#039;&#039;&#039;&#039; in [[Sonic the Hedgehog (2006)]] define a character&#039;s current state. Each is mapped to a specific implementation which may itself transition to other states in the state machine. Many states are shared between player implementations, and all states, regardless of if they only used by a specific player are given a unique ID.&lt;br /&gt;
&lt;br /&gt;
The maps used by each player context is outlined in [[Player State Maps]].&lt;br /&gt;
&lt;br /&gt;
== Player State IDs ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Category&lt;br /&gt;
!Name&lt;br /&gt;
!ID&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;29&amp;quot; |Common&lt;br /&gt;
|Wait&lt;br /&gt;
|0x00&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Walk&lt;br /&gt;
|0x01&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Run&lt;br /&gt;
|0x02&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Fall&lt;br /&gt;
|0x03&lt;br /&gt;
|Only used by Amy and Blaze.&lt;br /&gt;
|-&lt;br /&gt;
|Jump&lt;br /&gt;
|0x04&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Water Jump&lt;br /&gt;
|0x05&lt;br /&gt;
|Occurs when jumping upon contact with water surfaces.&lt;br /&gt;
|-&lt;br /&gt;
|Brake&lt;br /&gt;
|0x06&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Quick Turn&lt;br /&gt;
|0x07&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Dead&lt;br /&gt;
|0x08&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Damage Light&lt;br /&gt;
|0x09&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Push&lt;br /&gt;
|0x0A&lt;br /&gt;
|Push states are unfinished.&lt;br /&gt;
|-&lt;br /&gt;
|Damage&lt;br /&gt;
|0x0B&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Grind&lt;br /&gt;
|0x0C&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Edge Grab&lt;br /&gt;
|0x0D&lt;br /&gt;
|Hanging. Edge states are unfinished.&lt;br /&gt;
|-&lt;br /&gt;
|Edge Falling&lt;br /&gt;
|0x0E&lt;br /&gt;
|Falling from edge hang.&lt;br /&gt;
|-&lt;br /&gt;
|Edge Jumping&lt;br /&gt;
|0x0F&lt;br /&gt;
|Jumping from edge hang.&lt;br /&gt;
|-&lt;br /&gt;
|Ottotto&lt;br /&gt;
|0x10&lt;br /&gt;
|Tripping on a ledge, stopping the player in place.&lt;br /&gt;
|-&lt;br /&gt;
|Spring&lt;br /&gt;
|0x11&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Wide Spring&lt;br /&gt;
|0x12&lt;br /&gt;
|Unlike a regular spring, it is possible to perform air actions out of this spring type (for example, homing attack). &lt;br /&gt;
|-&lt;br /&gt;
|Spring Type B&lt;br /&gt;
|0x13&lt;br /&gt;
|Unknown.&lt;br /&gt;
|-&lt;br /&gt;
|Dash Panel&lt;br /&gt;
|0x14&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Jump Panel&lt;br /&gt;
|0x15&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Goal&lt;br /&gt;
|0x16&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Invincible&lt;br /&gt;
|0x17&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Wind&lt;br /&gt;
|0x18&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Landing&lt;br /&gt;
|0x19&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Don&#039;t Move&lt;br /&gt;
|0x1A&lt;br /&gt;
|Unused.&lt;br /&gt;
|-&lt;br /&gt;
|Up-Down Reel&lt;br /&gt;
|0x1B&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Tarzan&lt;br /&gt;
|0x1C&lt;br /&gt;
|Used for swinging ropes in Tropical Jungle.&lt;br /&gt;
|-&lt;br /&gt;
|Princess&lt;br /&gt;
|Bungee&lt;br /&gt;
|0x1D&lt;br /&gt;
|Used for the bungee setpiece in Tropical Jungle.&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;9&amp;quot; |Common&lt;br /&gt;
|Pole&lt;br /&gt;
|0x1E&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Chain Jump Land&lt;br /&gt;
|0x1F&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Rainbow Ring&lt;br /&gt;
|0x20&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Wall Wait&lt;br /&gt;
|0x21&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Rope Land&lt;br /&gt;
|0x22&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Climb&lt;br /&gt;
|0x23&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Blast Jump&lt;br /&gt;
|0x24&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Talk&lt;br /&gt;
|0x25&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Psi-Grabbed&lt;br /&gt;
|0x26&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Sonic&lt;br /&gt;
|Silver Spring&lt;br /&gt;
|0x27&lt;br /&gt;
|Unused spring type for Boss Silver&#039;s Homing Catch.&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;3&amp;quot; |Common&lt;br /&gt;
|Stun&lt;br /&gt;
|0x28&lt;br /&gt;
|Called &amp;quot;piyori&amp;quot; in animations.&lt;br /&gt;
|-&lt;br /&gt;
|Rodeo&lt;br /&gt;
|0x29&lt;br /&gt;
|Used for whale in Wave Ocean.&lt;br /&gt;
|-&lt;br /&gt;
|Balancer&lt;br /&gt;
|0x2A&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Sonic&lt;br /&gt;
|Water Slider&lt;br /&gt;
|0x2B&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;6&amp;quot; |Common&lt;br /&gt;
|Glide&lt;br /&gt;
|0x2C&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Glide End&lt;br /&gt;
|0x2D&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Throw&lt;br /&gt;
|0x2E&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Snipe&lt;br /&gt;
|0x2F&lt;br /&gt;
|Used for all first person attacks; dummy rings bombs, rouge&#039;s bombs, and the sky gem.&lt;br /&gt;
|-&lt;br /&gt;
|Amigo Swap&lt;br /&gt;
|0x30&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Amigo Chase&lt;br /&gt;
|0x31&lt;br /&gt;
|Used for when an Amigo character is following the player around.&lt;br /&gt;
|-&lt;br /&gt;
|Super&lt;br /&gt;
|Amigo Change&lt;br /&gt;
|0x32&lt;br /&gt;
|Used for swapping characters in the final boss fight.&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;2&amp;quot; |Silver&lt;br /&gt;
|Teleport Dash&lt;br /&gt;
|0x33&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Float&lt;br /&gt;
|0x34&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Princess&lt;br /&gt;
|Water Walk&lt;br /&gt;
|0x35&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;9&amp;quot; |Silver&lt;br /&gt;
|Lift&lt;br /&gt;
|0x38&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Esp Mark&lt;br /&gt;
|0x39&lt;br /&gt;
|Activates the ESP triggers in Silver&#039;s stages.&lt;br /&gt;
|-&lt;br /&gt;
|Ground Throw&lt;br /&gt;
|0x3A&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Air Throw&lt;br /&gt;
|0x3B&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Grab All&lt;br /&gt;
|0x3C&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Psychoshock&lt;br /&gt;
|0x3D&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Stun Slap Ground&lt;br /&gt;
|0x3E&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Stun Slap Air&lt;br /&gt;
|0x3F&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Reflect&lt;br /&gt;
|0x40&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Sonic&lt;br /&gt;
|Homing Smash&lt;br /&gt;
|0x41&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;2&amp;quot; |Common&lt;br /&gt;
|Homing Attack&lt;br /&gt;
|0x42&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Homing After&lt;br /&gt;
|0x43&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;4&amp;quot; |Sonic&lt;br /&gt;
|Sliding&lt;br /&gt;
|0x44&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Spin Attack&lt;br /&gt;
|0x45&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Spin Dash&lt;br /&gt;
|0x46&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Bounce&lt;br /&gt;
|0x47&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Common&lt;br /&gt;
|Light Dash&lt;br /&gt;
|0x48&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;4&amp;quot; |Sonic&lt;br /&gt;
|Blue Gem&lt;br /&gt;
|0x49&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Green Gem&lt;br /&gt;
|0x4A&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Green Gem Air&lt;br /&gt;
|0x4B&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Rainbow Gem&lt;br /&gt;
|0x4D&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;3&amp;quot; |Omega&lt;br /&gt;
|Hover&lt;br /&gt;
|0x4E&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Omega Launcher&lt;br /&gt;
|0x4F&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Lock on Laser&lt;br /&gt;
|0x50&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;10&amp;quot; |Shadow&lt;br /&gt;
|Overdrive&lt;br /&gt;
|0x51&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Chaos Spear&lt;br /&gt;
|0x52&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Chaos Spear After&lt;br /&gt;
|0x53&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Chaos Blast&lt;br /&gt;
|0x54&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Chaos Charge&lt;br /&gt;
|0x55&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Chaos Smash&lt;br /&gt;
|0x56&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Chaos Attack&lt;br /&gt;
|0x57&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Chaos Snap&lt;br /&gt;
|0x58&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Spin Kick&lt;br /&gt;
|0x59&lt;br /&gt;
|Used for spin kicking while stationary.&lt;br /&gt;
|-&lt;br /&gt;
|Edge Attack&lt;br /&gt;
|0x5A&lt;br /&gt;
|Used for spin kicking while moving.&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;5&amp;quot; |Amy&lt;br /&gt;
|Stealth Start&lt;br /&gt;
|0x5C&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Stealth End&lt;br /&gt;
|0x5D&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Double Jump Pre&lt;br /&gt;
|0x5E&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Double Jump&lt;br /&gt;
|0x5F&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Hammer Attack&lt;br /&gt;
|0x60&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;3&amp;quot; |Blaze&lt;br /&gt;
|Accel Tornado&lt;br /&gt;
|0x61&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Spinning Claw&lt;br /&gt;
|0x62&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Fire Claw&lt;br /&gt;
|0x63&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;4&amp;quot; |Knuckles&lt;br /&gt;
|Heat Knuckle&lt;br /&gt;
|0x64&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Screwdriver&lt;br /&gt;
|0x65&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Screwdriver After&lt;br /&gt;
|0x66&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Screw Dive&lt;br /&gt;
|0x67&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;3&amp;quot; |Rouge&lt;br /&gt;
|Bomb Air&lt;br /&gt;
|0x68&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Multi Air Bomb&lt;br /&gt;
|0x69&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Heart Mine&lt;br /&gt;
|0x6A&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;3&amp;quot; |Super&lt;br /&gt;
|Sonic Attack&lt;br /&gt;
| rowspan=&amp;quot;2&amp;quot; |0x6B&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Shadow Attack&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Silver Attack&lt;br /&gt;
|0x6C&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;7&amp;quot; |Shadow&lt;br /&gt;
|Vehicle Enter&lt;br /&gt;
|0x6D&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Autotake&lt;br /&gt;
|0x6E&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Bike Ride&lt;br /&gt;
|0x6F&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Jeep Ride&lt;br /&gt;
|0x70&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Hover Ride&lt;br /&gt;
|0x71&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Glider Ride&lt;br /&gt;
|0x72&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Vehicle Exit&lt;br /&gt;
|0x73&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Boss State IDs ==&lt;br /&gt;
Reactive player-based bosses (v.s. Sonic, Shadow, and Silver) also use a similar state system.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Category&lt;br /&gt;
!Name&lt;br /&gt;
!ID&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;5&amp;quot; |Common&lt;br /&gt;
|Player Search&lt;br /&gt;
|0x01&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Approach&lt;br /&gt;
|0x02&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Damage&lt;br /&gt;
|0x03&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Dead&lt;br /&gt;
|0x04&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Winner&lt;br /&gt;
|0x05&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;2&amp;quot; |Sonic &amp;amp; Shadow&lt;br /&gt;
|Stun&lt;br /&gt;
|0x06&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Psi-Grabbed&lt;br /&gt;
|0x07&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;6&amp;quot; |Silver&lt;br /&gt;
|Teleport&lt;br /&gt;
|0x08&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Object Throw&lt;br /&gt;
|0x09&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Upheave&lt;br /&gt;
|0x0A&lt;br /&gt;
|Unused.&lt;br /&gt;
|-&lt;br /&gt;
|Homing Catch&lt;br /&gt;
|0x0B&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Jump on Psi&lt;br /&gt;
|0x0C&lt;br /&gt;
|Unused.&lt;br /&gt;
|-&lt;br /&gt;
|Ride Smash&lt;br /&gt;
|0x0D&lt;br /&gt;
|Unused.&lt;br /&gt;
|-&lt;br /&gt;
|Sonic &amp;amp; Shadow&lt;br /&gt;
|Homing&lt;br /&gt;
|0x0E&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Sonic&lt;br /&gt;
|Chain Jump&lt;br /&gt;
|0x10&lt;br /&gt;
|Unused.&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;3&amp;quot; |Shadow&lt;br /&gt;
|Spin Kick&lt;br /&gt;
|0x12&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Chaos Spear&lt;br /&gt;
|0x13&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Chaos Boost&lt;br /&gt;
|0x14&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Special State IDs ==&lt;br /&gt;
&lt;br /&gt;
=== Snowboard States ===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+&lt;br /&gt;
!Name&lt;br /&gt;
!ID&lt;br /&gt;
|-&lt;br /&gt;
|Run&lt;br /&gt;
|0x0&lt;br /&gt;
|-&lt;br /&gt;
|Brake&lt;br /&gt;
|0x1&lt;br /&gt;
|-&lt;br /&gt;
|Prepare Jump&lt;br /&gt;
|0x2&lt;br /&gt;
|-&lt;br /&gt;
|Fall&lt;br /&gt;
|0x3&lt;br /&gt;
|-&lt;br /&gt;
|Jump&lt;br /&gt;
|0x4&lt;br /&gt;
|-&lt;br /&gt;
|Spring&lt;br /&gt;
|0x5&lt;br /&gt;
|-&lt;br /&gt;
|Damage&lt;br /&gt;
|0x6&lt;br /&gt;
|-&lt;br /&gt;
|Dead&lt;br /&gt;
|0x7&lt;br /&gt;
|-&lt;br /&gt;
|Grind&lt;br /&gt;
|0x8&lt;br /&gt;
|-&lt;br /&gt;
|Grind Brake&lt;br /&gt;
|0x9&lt;br /&gt;
|-&lt;br /&gt;
|Grind Prepare Jump&lt;br /&gt;
|0xA&lt;br /&gt;
|-&lt;br /&gt;
|Run Against&lt;br /&gt;
|0xB&lt;br /&gt;
|-&lt;br /&gt;
|Landing&lt;br /&gt;
|0xC&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Mach Speed States ===&lt;br /&gt;
State ID 0x7 is skipped.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+&lt;br /&gt;
!Name&lt;br /&gt;
!ID&lt;br /&gt;
|-&lt;br /&gt;
|Start&lt;br /&gt;
|0x0&lt;br /&gt;
|-&lt;br /&gt;
|Run&lt;br /&gt;
|0x1&lt;br /&gt;
|-&lt;br /&gt;
|Fall&lt;br /&gt;
|0x2&lt;br /&gt;
|-&lt;br /&gt;
|Jump&lt;br /&gt;
|0x3&lt;br /&gt;
|-&lt;br /&gt;
|Damage&lt;br /&gt;
|0x4&lt;br /&gt;
|-&lt;br /&gt;
|Dead&lt;br /&gt;
|0x5&lt;br /&gt;
|-&lt;br /&gt;
|Dramatic Jump&lt;br /&gt;
|0x6&lt;br /&gt;
|-&lt;br /&gt;
|Dash Panel&lt;br /&gt;
|0x8&lt;br /&gt;
|-&lt;br /&gt;
|Spring Type B&lt;br /&gt;
|0x9&lt;br /&gt;
|-&lt;br /&gt;
|Jump Panel&lt;br /&gt;
|0xA&lt;br /&gt;
|-&lt;br /&gt;
|Light Dash&lt;br /&gt;
|0xB&lt;br /&gt;
|-&lt;br /&gt;
|Chain Jump&lt;br /&gt;
|0xC&lt;br /&gt;
|-&lt;br /&gt;
|Chain Fall&lt;br /&gt;
|0xD&lt;br /&gt;
|-&lt;br /&gt;
|Goal&lt;br /&gt;
|0xE&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Common Context State IDs ==&lt;br /&gt;
&lt;br /&gt;
=== Common State ===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+&lt;br /&gt;
!Name&lt;br /&gt;
!ID&lt;br /&gt;
|-&lt;br /&gt;
|Debug Wait&lt;br /&gt;
|0x0&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Easy State ===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+&lt;br /&gt;
!Name&lt;br /&gt;
!ID&lt;br /&gt;
|-&lt;br /&gt;
|Easy Damaged &amp;amp; Wind&lt;br /&gt;
|0x0&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Title States ===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+&lt;br /&gt;
!Name&lt;br /&gt;
!ID&lt;br /&gt;
|-&lt;br /&gt;
|Title Wait&lt;br /&gt;
|0x0&lt;br /&gt;
|-&lt;br /&gt;
|Title Selected&lt;br /&gt;
|0x1&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>PTKay</name></author>
	</entry>
	<entry>
		<id>https://hedgedocs.com/index.php?title=U8_Archive&amp;diff=1227</id>
		<title>U8 Archive</title>
		<link rel="alternate" type="text/html" href="https://hedgedocs.com/index.php?title=U8_Archive&amp;diff=1227"/>
		<updated>2025-12-02T10:29:12Z</updated>

		<summary type="html">&lt;p&gt;PTKay: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&#039;&#039;&#039;&#039;&#039;Arc File&#039;&#039;&#039;&#039;&#039; is the &amp;lt;code&amp;gt;*.arc&amp;lt;/code&amp;gt; file format used for this game&#039;s packed file system. It&#039;s derived from Nintendo&#039;s archive format, commonly known as &#039;&#039;&#039;U8 Archive&#039;&#039;&#039;. These files are located in the &amp;lt;code&amp;gt;xenon&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;ps3&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;win32&amp;lt;/code&amp;gt; directories on the game disc in a subdirectory called &amp;lt;code&amp;gt;archives&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
== File System ==&lt;br /&gt;
The internal file system follows an organisational pattern where the directories starting from root are platform identifiers for the file formats contained within them.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+&lt;br /&gt;
!Identifier&lt;br /&gt;
!Endianness&lt;br /&gt;
!Purpose&lt;br /&gt;
|-&lt;br /&gt;
|common&lt;br /&gt;
|N/A&lt;br /&gt;
|Used for files where endianness is non-applicable (e.g. files that are read manually in a specific byte order irrespective of the current platform).&lt;br /&gt;
|-&lt;br /&gt;
|xenon&lt;br /&gt;
|Big&lt;br /&gt;
|Used for files that are read directly into memory and mapped to structures where big-endian byte order is expected for the Xbox 360 platform.&lt;br /&gt;
|-&lt;br /&gt;
|ps3&lt;br /&gt;
|Big&lt;br /&gt;
|Same as above, but for the PlayStation 3 platform.&lt;br /&gt;
|-&lt;br /&gt;
|win32&lt;br /&gt;
|Little&lt;br /&gt;
|Used for files that are read directly into memory and mapped to structures where little-endian byte order is expected for the Windows (x86) platform.&lt;br /&gt;
These files would be read manually for endian swapping on big-endian platforms.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Specification ==&lt;br /&gt;
&#039;&#039;&#039;Arc File&#039;&#039;&#039; is a derivative of Nintendo&#039;s archive format, commonly known as &#039;&#039;&#039;U8 Archive&#039;&#039;&#039;. It&#039;s the same format, but with an extra field added to each file system node for uncompressed length, as Sonic Team added support for [[wikipedia:Zlib|zlib]] compression to the format.&lt;br /&gt;
&lt;br /&gt;
=== Header ===&lt;br /&gt;
The header consists of the following data structure:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Length: 0x20&lt;br /&gt;
!Offset&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|0x00&lt;br /&gt;
|UInt32&lt;br /&gt;
|Signature&lt;br /&gt;
|Always 0x55AA382D (big-endian).&lt;br /&gt;
|-&lt;br /&gt;
|0x04&lt;br /&gt;
|UInt32&lt;br /&gt;
|FSTableOffset&lt;br /&gt;
|The offset of the file system table.&lt;br /&gt;
|-&lt;br /&gt;
|0x08&lt;br /&gt;
|UInt32&lt;br /&gt;
|FSTableLength&lt;br /&gt;
|The length of the file system table (including the string pool).&lt;br /&gt;
|-&lt;br /&gt;
|0x0C&lt;br /&gt;
|UInt32&lt;br /&gt;
|DataOffset&lt;br /&gt;
|The offset of the file data.&lt;br /&gt;
|-&lt;br /&gt;
|0x10&lt;br /&gt;
|UInt32[4]&lt;br /&gt;
|Reserved&lt;br /&gt;
|These fields appear to be populated in archives for this game, but this is bogus data from uninitialised memory and should be ignored.&lt;br /&gt;
For the sake of tooling heuristics, writing &amp;lt;code&amp;gt;0xE4F91300&amp;lt;/code&amp;gt; (big-endian) to index 0 and &amp;lt;code&amp;gt;0x78013800&amp;lt;/code&amp;gt; (big-endian) to index 3 would be ideal for detecting whether this archive is from this game specifically.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== File System ===&lt;br /&gt;
The file system consists of an array of the following data structure:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Length: 0x10&lt;br /&gt;
!Offset&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|0x00&lt;br /&gt;
|Boolean (UInt8)&lt;br /&gt;
|IsDirectory&lt;br /&gt;
|Determines whether this node is a directory.&lt;br /&gt;
|-&lt;br /&gt;
|0x01&lt;br /&gt;
|UInt24&lt;br /&gt;
|NameOffset&lt;br /&gt;
|The offset of this node&#039;s name in the string pool.&lt;br /&gt;
If root, always zero.&lt;br /&gt;
|-&lt;br /&gt;
|0x04&lt;br /&gt;
|Union (UInt32, UInt32)&lt;br /&gt;
|DataOffset, ParentIndex&lt;br /&gt;
|&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+&lt;br /&gt;
|File&lt;br /&gt;
|The offset of this file&#039;s data.&lt;br /&gt;
|-&lt;br /&gt;
|Directory&lt;br /&gt;
|The index of the parent node for this directory.&lt;br /&gt;
If root, always zero.&lt;br /&gt;
|}&lt;br /&gt;
|-&lt;br /&gt;
|0x08&lt;br /&gt;
|Union (UInt32, UInt32)&lt;br /&gt;
|Length, NodeCount&lt;br /&gt;
|&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+&lt;br /&gt;
|File&lt;br /&gt;
|The length of this file&#039;s data.&lt;br /&gt;
|-&lt;br /&gt;
|Directory&lt;br /&gt;
|The total number of nodes in this directory.&lt;br /&gt;
If root, the total number of nodes in this archive.&lt;br /&gt;
|}&lt;br /&gt;
|-&lt;br /&gt;
|0x0C&lt;br /&gt;
|UInt32&lt;br /&gt;
|UncompressedLength&lt;br /&gt;
|&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+&lt;br /&gt;
|File&lt;br /&gt;
|The uncompressed length of this file&#039;s data.&lt;br /&gt;
This field can be set to zero to disable compression for this file, allowing its data to be stored uncompressed.&lt;br /&gt;
|-&lt;br /&gt;
|Directory&lt;br /&gt;
|Undefined.&lt;br /&gt;
Much like the reserved bytes in the header, this field will appear to be populated, but again, this is bogus data from uninitialised memory.&lt;br /&gt;
|}&lt;br /&gt;
|}&lt;br /&gt;
The total number of nodes to read is determined by the root node&#039;s &amp;lt;code&amp;gt;NodeCount&amp;lt;/code&amp;gt; field. As this is a hierarchical file system, nodes should be read recursively to build the file system correctly.&lt;br /&gt;
&lt;br /&gt;
The first node &#039;&#039;&#039;must&#039;&#039;&#039; be a root node defined as a directory, with the &amp;lt;code&amp;gt;NodeCount&amp;lt;/code&amp;gt; field set to the total number of nodes in the archive. This is necessary for determining the length of the file system table.&lt;br /&gt;
&lt;br /&gt;
=== String Pool ===&lt;br /&gt;
The string pool offset can be calculated after reading the root node and using the following expression:&amp;lt;syntaxhighlight lang=&amp;quot;text&amp;quot;&amp;gt;&lt;br /&gt;
FSTableOffset + (Root.NodeCount * 16)&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;Each string in the pool is ASCII encoded and null-terminated, the offsets to which are relative to the start of the pool.&lt;br /&gt;
&lt;br /&gt;
The string pool &#039;&#039;&#039;must&#039;&#039;&#039; have a single null terminator at the beginning for the root node, as it does not have a name.&lt;br /&gt;
&lt;br /&gt;
=== File Data ===&lt;br /&gt;
Files are compressed using [[wikipedia:Zlib|zlib]] compression and are aligned by 32 bytes per file after the string pool. This compression is optional, and files can be stored uncompressed so long as the uncompressed length field is set to zero.&lt;br /&gt;
&lt;br /&gt;
== List of Arc Files ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|cache.arc&lt;br /&gt;
|Core render scripts, event playbook, and optical camouflage noise texture &lt;br /&gt;
|-&lt;br /&gt;
|download.arc&lt;br /&gt;
|DLC episode mission and SET data&lt;br /&gt;
|-&lt;br /&gt;
|enemy_data.arc&lt;br /&gt;
|Boss textures and objects&lt;br /&gt;
|-&lt;br /&gt;
|enemy.arc&lt;br /&gt;
|Regular enemy textures and objects&lt;br /&gt;
|-&lt;br /&gt;
|event_data.arc&lt;br /&gt;
|Event-specific textures and objects&lt;br /&gt;
|-&lt;br /&gt;
|event.arc&lt;br /&gt;
|Event-specific sounds, particles, and scripts&lt;br /&gt;
|-&lt;br /&gt;
|game.arc&lt;br /&gt;
|Actor properties, light and camera parameters&lt;br /&gt;
|-&lt;br /&gt;
|human.arc&lt;br /&gt;
|NPC textures, objects, and scripts&lt;br /&gt;
|-&lt;br /&gt;
|object.arc&lt;br /&gt;
|Interactive object textures, objects, and scripts&lt;br /&gt;
|-&lt;br /&gt;
|particle_data.arc&lt;br /&gt;
|Particle textures and objects&lt;br /&gt;
|-&lt;br /&gt;
|particle.arc&lt;br /&gt;
|Particle definitions&lt;br /&gt;
|-&lt;br /&gt;
|player_*.arc&lt;br /&gt;
|Player-specific textures, objects, and animations&lt;br /&gt;
|-&lt;br /&gt;
|player.arc&lt;br /&gt;
|Player scripting and packages&lt;br /&gt;
|-&lt;br /&gt;
|radarmap.arc&lt;br /&gt;
|Mini-map objects, colour textures, and icons&lt;br /&gt;
|-&lt;br /&gt;
|scripts.arc&lt;br /&gt;
|Most Lua scripting, SETs and paths&lt;br /&gt;
|-&lt;br /&gt;
|shader_lt.arc&lt;br /&gt;
|Multiplayer shaders&lt;br /&gt;
|-&lt;br /&gt;
|shader.arc&lt;br /&gt;
|Singleplayer shaders&lt;br /&gt;
|-&lt;br /&gt;
|sound.arc&lt;br /&gt;
|Common sound banks&lt;br /&gt;
|-&lt;br /&gt;
|sprite.arc&lt;br /&gt;
|UI textures, layouts, and animations&lt;br /&gt;
|-&lt;br /&gt;
|stage_*.arc&lt;br /&gt;
|Stage-specific textures and objects&lt;br /&gt;
|-&lt;br /&gt;
|stage.arc&lt;br /&gt;
|Reflection areas and stage collision&lt;br /&gt;
|-&lt;br /&gt;
|system.arc&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|text.arc&lt;br /&gt;
|Font textures, maps, and string tables&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>PTKay</name></author>
	</entry>
	<entry>
		<id>https://hedgedocs.com/index.php?title=U8_Archive&amp;diff=1226</id>
		<title>U8 Archive</title>
		<link rel="alternate" type="text/html" href="https://hedgedocs.com/index.php?title=U8_Archive&amp;diff=1226"/>
		<updated>2025-12-02T10:26:33Z</updated>

		<summary type="html">&lt;p&gt;PTKay: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{DISPLAYTITLE:Arc File}}&lt;br /&gt;
{{DISPLAYTITLE:Arc File}}&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&#039;&#039;Arc File&#039;&#039;&#039;&#039;&#039; is the &amp;lt;code&amp;gt;*.arc&amp;lt;/code&amp;gt; file format used for this game&#039;s packed file system. It&#039;s derived from Nintendo&#039;s archive format, commonly known as &#039;&#039;&#039;U8 Archive&#039;&#039;&#039;. These files are located in the &amp;lt;code&amp;gt;xenon&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;ps3&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;win32&amp;lt;/code&amp;gt; directories on the game disc in a subdirectory called &amp;lt;code&amp;gt;archives&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
== File System ==&lt;br /&gt;
The internal file system follows an organisational pattern where the directories starting from root are platform identifiers for the file formats contained within them.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+&lt;br /&gt;
!Identifier&lt;br /&gt;
!Endianness&lt;br /&gt;
!Purpose&lt;br /&gt;
|-&lt;br /&gt;
|common&lt;br /&gt;
|N/A&lt;br /&gt;
|Used for files where endianness is non-applicable (e.g. files that are read manually in a specific byte order irrespective of the current platform).&lt;br /&gt;
|-&lt;br /&gt;
|xenon&lt;br /&gt;
|Big&lt;br /&gt;
|Used for files that are read directly into memory and mapped to structures where big-endian byte order is expected for the Xbox 360 platform.&lt;br /&gt;
|-&lt;br /&gt;
|ps3&lt;br /&gt;
|Big&lt;br /&gt;
|Same as above, but for the PlayStation 3 platform.&lt;br /&gt;
|-&lt;br /&gt;
|win32&lt;br /&gt;
|Little&lt;br /&gt;
|Used for files that are read directly into memory and mapped to structures where little-endian byte order is expected for the Windows (x86) platform.&lt;br /&gt;
These files would be read manually for endian swapping on big-endian platforms.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Specification ==&lt;br /&gt;
&#039;&#039;&#039;Arc File&#039;&#039;&#039; is a derivative of Nintendo&#039;s archive format, commonly known as &#039;&#039;&#039;U8 Archive&#039;&#039;&#039;. It&#039;s the same format, but with an extra field added to each file system node for uncompressed length, as Sonic Team added support for [[wikipedia:Zlib|zlib]] compression to the format.&lt;br /&gt;
&lt;br /&gt;
=== Header ===&lt;br /&gt;
The header consists of the following data structure:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Length: 0x20&lt;br /&gt;
!Offset&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|0x00&lt;br /&gt;
|UInt32&lt;br /&gt;
|Signature&lt;br /&gt;
|Always 0x55AA382D (big-endian).&lt;br /&gt;
|-&lt;br /&gt;
|0x04&lt;br /&gt;
|UInt32&lt;br /&gt;
|FSTableOffset&lt;br /&gt;
|The offset of the file system table.&lt;br /&gt;
|-&lt;br /&gt;
|0x08&lt;br /&gt;
|UInt32&lt;br /&gt;
|FSTableLength&lt;br /&gt;
|The length of the file system table (including the string pool).&lt;br /&gt;
|-&lt;br /&gt;
|0x0C&lt;br /&gt;
|UInt32&lt;br /&gt;
|DataOffset&lt;br /&gt;
|The offset of the file data.&lt;br /&gt;
|-&lt;br /&gt;
|0x10&lt;br /&gt;
|UInt32[4]&lt;br /&gt;
|Reserved&lt;br /&gt;
|These fields appear to be populated in archives for this game, but this is bogus data from uninitialised memory and should be ignored.&lt;br /&gt;
For the sake of tooling heuristics, writing &amp;lt;code&amp;gt;0xE4F91300&amp;lt;/code&amp;gt; (big-endian) to index 0 and &amp;lt;code&amp;gt;0x78013800&amp;lt;/code&amp;gt; (big-endian) to index 3 would be ideal for detecting whether this archive is from this game specifically.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== File System ===&lt;br /&gt;
The file system consists of an array of the following data structure:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Length: 0x10&lt;br /&gt;
!Offset&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|0x00&lt;br /&gt;
|Boolean (UInt8)&lt;br /&gt;
|IsDirectory&lt;br /&gt;
|Determines whether this node is a directory.&lt;br /&gt;
|-&lt;br /&gt;
|0x01&lt;br /&gt;
|UInt24&lt;br /&gt;
|NameOffset&lt;br /&gt;
|The offset of this node&#039;s name in the string pool.&lt;br /&gt;
If root, always zero.&lt;br /&gt;
|-&lt;br /&gt;
|0x04&lt;br /&gt;
|Union (UInt32, UInt32)&lt;br /&gt;
|DataOffset, ParentIndex&lt;br /&gt;
|&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+&lt;br /&gt;
|File&lt;br /&gt;
|The offset of this file&#039;s data.&lt;br /&gt;
|-&lt;br /&gt;
|Directory&lt;br /&gt;
|The index of the parent node for this directory.&lt;br /&gt;
If root, always zero.&lt;br /&gt;
|}&lt;br /&gt;
|-&lt;br /&gt;
|0x08&lt;br /&gt;
|Union (UInt32, UInt32)&lt;br /&gt;
|Length, NodeCount&lt;br /&gt;
|&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+&lt;br /&gt;
|File&lt;br /&gt;
|The length of this file&#039;s data.&lt;br /&gt;
|-&lt;br /&gt;
|Directory&lt;br /&gt;
|The total number of nodes in this directory.&lt;br /&gt;
If root, the total number of nodes in this archive.&lt;br /&gt;
|}&lt;br /&gt;
|-&lt;br /&gt;
|0x0C&lt;br /&gt;
|UInt32&lt;br /&gt;
|UncompressedLength&lt;br /&gt;
|&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+&lt;br /&gt;
|File&lt;br /&gt;
|The uncompressed length of this file&#039;s data.&lt;br /&gt;
This field can be set to zero to disable compression for this file, allowing its data to be stored uncompressed.&lt;br /&gt;
|-&lt;br /&gt;
|Directory&lt;br /&gt;
|Undefined.&lt;br /&gt;
Much like the reserved bytes in the header, this field will appear to be populated, but again, this is bogus data from uninitialised memory.&lt;br /&gt;
|}&lt;br /&gt;
|}&lt;br /&gt;
The total number of nodes to read is determined by the root node&#039;s &amp;lt;code&amp;gt;NodeCount&amp;lt;/code&amp;gt; field. As this is a hierarchical file system, nodes should be read recursively to build the file system correctly.&lt;br /&gt;
&lt;br /&gt;
The first node &#039;&#039;&#039;must&#039;&#039;&#039; be a root node defined as a directory, with the &amp;lt;code&amp;gt;NodeCount&amp;lt;/code&amp;gt; field set to the total number of nodes in the archive. This is necessary for determining the length of the file system table.&lt;br /&gt;
&lt;br /&gt;
=== String Pool ===&lt;br /&gt;
The string pool offset can be calculated after reading the root node and using the following expression:&amp;lt;syntaxhighlight lang=&amp;quot;text&amp;quot;&amp;gt;&lt;br /&gt;
FSTableOffset + (Root.NodeCount * 16)&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;Each string in the pool is ASCII encoded and null-terminated, the offsets to which are relative to the start of the pool.&lt;br /&gt;
&lt;br /&gt;
The string pool &#039;&#039;&#039;must&#039;&#039;&#039; have a single null terminator at the beginning for the root node, as it does not have a name.&lt;br /&gt;
&lt;br /&gt;
=== File Data ===&lt;br /&gt;
Files are compressed using [[wikipedia:Zlib|zlib]] compression and are aligned by 32 bytes per file after the string pool. This compression is optional, and files can be stored uncompressed so long as the uncompressed length field is set to zero.&lt;br /&gt;
&lt;br /&gt;
== List of Arc Files ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|cache.arc&lt;br /&gt;
|Core render scripts, event playbook, and optical camouflage noise texture &lt;br /&gt;
|-&lt;br /&gt;
|download.arc&lt;br /&gt;
|DLC episode mission and SET data&lt;br /&gt;
|-&lt;br /&gt;
|enemy_data.arc&lt;br /&gt;
|Boss textures and objects&lt;br /&gt;
|-&lt;br /&gt;
|enemy.arc&lt;br /&gt;
|Regular enemy textures and objects&lt;br /&gt;
|-&lt;br /&gt;
|event_data.arc&lt;br /&gt;
|Event-specific textures and objects&lt;br /&gt;
|-&lt;br /&gt;
|event.arc&lt;br /&gt;
|Event-specific sounds, particles, and scripts&lt;br /&gt;
|-&lt;br /&gt;
|game.arc&lt;br /&gt;
|Actor properties, light and camera parameters&lt;br /&gt;
|-&lt;br /&gt;
|human.arc&lt;br /&gt;
|NPC textures, objects, and scripts&lt;br /&gt;
|-&lt;br /&gt;
|object.arc&lt;br /&gt;
|Interactive object textures, objects, and scripts&lt;br /&gt;
|-&lt;br /&gt;
|particle_data.arc&lt;br /&gt;
|Particle textures and objects&lt;br /&gt;
|-&lt;br /&gt;
|particle.arc&lt;br /&gt;
|Particle definitions&lt;br /&gt;
|-&lt;br /&gt;
|player_*.arc&lt;br /&gt;
|Player-specific textures, objects, and animations&lt;br /&gt;
|-&lt;br /&gt;
|player.arc&lt;br /&gt;
|Player scripting and packages&lt;br /&gt;
|-&lt;br /&gt;
|radarmap.arc&lt;br /&gt;
|Mini-map objects, colour textures, and icons&lt;br /&gt;
|-&lt;br /&gt;
|scripts.arc&lt;br /&gt;
|Most Lua scripting, SETs and paths&lt;br /&gt;
|-&lt;br /&gt;
|shader_lt.arc&lt;br /&gt;
|Multiplayer shaders&lt;br /&gt;
|-&lt;br /&gt;
|shader.arc&lt;br /&gt;
|Singleplayer shaders&lt;br /&gt;
|-&lt;br /&gt;
|sound.arc&lt;br /&gt;
|Common sound banks&lt;br /&gt;
|-&lt;br /&gt;
|sprite.arc&lt;br /&gt;
|UI textures, layouts, and animations&lt;br /&gt;
|-&lt;br /&gt;
|stage_*.arc&lt;br /&gt;
|Stage-specific textures and objects&lt;br /&gt;
|-&lt;br /&gt;
|stage.arc&lt;br /&gt;
|Reflection areas and stage collision&lt;br /&gt;
|-&lt;br /&gt;
|system.arc&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|text.arc&lt;br /&gt;
|Font textures, maps, and string tables&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>PTKay</name></author>
	</entry>
	<entry>
		<id>https://hedgedocs.com/index.php?title=MediaWiki:Vector-2022.css&amp;diff=1112</id>
		<title>MediaWiki:Vector-2022.css</title>
		<link rel="alternate" type="text/html" href="https://hedgedocs.com/index.php?title=MediaWiki:Vector-2022.css&amp;diff=1112"/>
		<updated>2025-08-25T10:52:01Z</updated>

		<summary type="html">&lt;p&gt;PTKay: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;/* HEDDGEDOCS COLOR PALETTES */&lt;br /&gt;
&lt;br /&gt;
:root {&lt;br /&gt;
    --hedgedocs-accent-color: #3e7e9e;&lt;br /&gt;
    --hedgedocs-accent-color-secondary: #4d9ec7;&lt;br /&gt;
    &lt;br /&gt;
    --hedgedocs-base-border-color: #adb5c2;&lt;br /&gt;
&lt;br /&gt;
    --hedgedocs-frame-bg-color: #e9ebec;&lt;br /&gt;
&lt;br /&gt;
    --hedgedocs-scrollbar-color: #888888;&lt;br /&gt;
&lt;br /&gt;
    --hedgedocs-bg-color: #f0f3f4;&lt;br /&gt;
    --hedgedocs-bg-color-secondary: #dddddd;&lt;br /&gt;
&lt;br /&gt;
    --hedgedocs-header-color: var(--hedgedocs-accent-color);&lt;br /&gt;
    --hedgedocs-header-fg-color: #f2f8f8;&lt;br /&gt;
&lt;br /&gt;
    --hedgedocs-fg-color-light: #333333;&lt;br /&gt;
    --hedgedocs-fg-color: #202122;&lt;br /&gt;
&lt;br /&gt;
    --hedgedocs-link-color: #36c;&lt;br /&gt;
    --hedgedocs-link-hover: #757575;&lt;br /&gt;
    --hedgedocs-link-active-color: #00aedf;&lt;br /&gt;
    --hedgedocs-new-link-color: #d73333;&lt;br /&gt;
&lt;br /&gt;
    --hedgedocs-input-bg-color: #ffffff;&lt;br /&gt;
    --hedgedocs-input-fg-color: #202122;&lt;br /&gt;
    --hedgedocs-input-border-color: var(--hedgedocs-input-bg-color);&lt;br /&gt;
&lt;br /&gt;
    --hedgedocs-button-bg-color: #bbbbbb;&lt;br /&gt;
    --hedgedocs-button-bg-color-hover: #999999;&lt;br /&gt;
    --hedgedocs-button-check-fg-color: #ffffff;&lt;br /&gt;
    --hedgedocs-button-check-bg-color: var(--hedgedocs-accent-color);&lt;br /&gt;
    --hedgedocs-button-accent-bg-color: var(--hedgedocs-accent-color);&lt;br /&gt;
    --hedgedocs-button-accent-fg-color: #ffffff;&lt;br /&gt;
    --hedgedocs-button-accent-bg-color-hover: var(--hedgedocs-accent-color-secondary);&lt;br /&gt;
&lt;br /&gt;
    --hedgedocs-table-header-bg-color: var(--hedgedocs-bg-color-secondary);&lt;br /&gt;
    --hedgedocs-table-data-bg-color: var(--hedgedocs-frame-bg-color);&lt;br /&gt;
    --hedgedocs-table-header-fg-color: var(--hedgedocs-fg-color);&lt;br /&gt;
    --hedgedocs-table-border-color: #B2B2B2;&lt;br /&gt;
&lt;br /&gt;
    --hedgedocs-notice-note-header-color: rgba(68, 138, 255, 0.15);&lt;br /&gt;
    --hedgedocs-notice-note-border-color: rgba(68, 138, 255, 0.75);&lt;br /&gt;
    --hedgedocs-notice-info-header-color: rgba(0, 184, 212, 0.15);&lt;br /&gt;
    --hedgedocs-notice-info-border-color: rgba(0, 184, 212, 0.75);&lt;br /&gt;
    --hedgedocs-notice-warn-header-color: rgba(255, 145, 0, 0.15);&lt;br /&gt;
    --hedgedocs-notice-warn-border-color: rgba(255, 145, 0, 0.75);&lt;br /&gt;
    --hedgedocs-notice-example-header-color: rgba(118, 84, 250, 0.15);&lt;br /&gt;
    --hedgedocs-notice-example-border-color: rgba(118, 84, 250, 0.75);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.skin-theme-clientpref-night {&lt;br /&gt;
    --hedgedocs-accent-color: #0f3885;&lt;br /&gt;
    --hedgedocs-accent-color-secondary: #0d2a5f;&lt;br /&gt;
&lt;br /&gt;
    --hedgedocs-base-border-color: #414658;&lt;br /&gt;
&lt;br /&gt;
    --hedgedocs-frame-bg-color: #1a1c24;&lt;br /&gt;
    &lt;br /&gt;
    --hedgedocs-scrollbar-color: #888888;&lt;br /&gt;
&lt;br /&gt;
    --hedgedocs-bg-color: #151515;&lt;br /&gt;
    --hedgedocs-bg-color-secondary: #272a35;&lt;br /&gt;
&lt;br /&gt;
    --hedgedocs-header-fg-color: #f2f8f8;&lt;br /&gt;
&lt;br /&gt;
    --hedgedocs-fg-color-light: #e0e6e6;&lt;br /&gt;
    --hedgedocs-fg-color: #d2d2d2;&lt;br /&gt;
&lt;br /&gt;
    --hedgedocs-link-color: #88a3e8;&lt;br /&gt;
    --hedgedocs-link-hover: #4e67f0;&lt;br /&gt;
    --hedgedocs-link-active-color: #5082dc;&lt;br /&gt;
    --hedgedocs-new-link-color: #fd7865;&lt;br /&gt;
&lt;br /&gt;
    --hedgedocs-input-bg-color: #222222;&lt;br /&gt;
    --hedgedocs-input-fg-color: #d2d2d2;&lt;br /&gt;
    --hedgedocs-input-border-color: var(--hedgedocs-input-bg-color);&lt;br /&gt;
&lt;br /&gt;
    --hedgedocs-button-bg-color: #333333;&lt;br /&gt;
    --hedgedocs-button-bg-color-hover: #555555;&lt;br /&gt;
    --hedgedocs-button-check-fg-color: #ffffff;&lt;br /&gt;
    --hedgedocs-button-check-bg-color: var(--hedgedocs-accent-color);&lt;br /&gt;
&lt;br /&gt;
    --hedgedocs-table-header-bg-color: #252833;&lt;br /&gt;
    --hedgedocs-table-data-bg-color: var(--hedgedocs-frame-bg-color);&lt;br /&gt;
    --hedgedocs-table-header-fg-color: var(--hedgedocs-fg-color);&lt;br /&gt;
    --hedgedocs-table-border-color: #3A3A3A;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
:root, .skin-theme-clientpref-night, html.skin-theme-clientpref-night {&lt;br /&gt;
    --background-color-base: var(--hedgedocs-bg-color);&lt;br /&gt;
    --background-color-interactive: var(--hedgedocs-bg-color-secondary);&lt;br /&gt;
    --background-color-interactive-subtle: var(--hedgedocs-bg-color-secondary);&lt;br /&gt;
    --background-color-neutral-subtle: var(--hedgedocs-bg-color);&lt;br /&gt;
    --border-color-base: var(--hedgedocs-base-border-color);&lt;br /&gt;
}&lt;br /&gt;
body {&lt;br /&gt;
    background-color: var(--hedgedocs-bg-color) !important;&lt;br /&gt;
    color: var(--hedgedocs-fg-color) !important;&lt;br /&gt;
}&lt;br /&gt;
.mw-page-container {&lt;br /&gt;
    background-color: transparent !important;&lt;br /&gt;
}&lt;br /&gt;
.mw-heading, h1, h2:not(.vector-pinnable-header-label), h3, h4, h5, h6 {&lt;br /&gt;
    color: var(--hedgedocs-fg-color) !important;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* HEDDGEDOCS DARK THEME TWEAKS */&lt;br /&gt;
&lt;br /&gt;
html.skin-theme-clientpref-night, .skin-theme-clientpref-night * {&lt;br /&gt;
    filter: none !important;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.skin-theme-clientpref-night {&lt;br /&gt;
    .mw-page-container .vector-icon {&lt;br /&gt;
        filter: invert() !important;&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    .vector-icon.mw-ui-icon-listBullet {&lt;br /&gt;
        filter: none !important;&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    .vector-icon.mw-ui-icon-wikimedia-unStar, .vector-icon.mw-ui-icon-wikimedia-star, .vector-icon.mw-ui-icon-wikimedia-expand {&lt;br /&gt;
        filter: none !important;&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    #vector-page-tools-dropdown-label {&lt;br /&gt;
        color: var(--hedgedocs-fg-color);&lt;br /&gt;
        transition: color 0s;&lt;br /&gt;
    }&lt;br /&gt;
    &lt;br /&gt;
    .vector-header-container .vector-icon:not(.vector-dropdown-content .vector-icon) {&lt;br /&gt;
        filter: brightness(2) !important;&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    .ext-darkmode-link::after {&lt;br /&gt;
        content: &#039;\263C&#039;;&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    .mw-list-item span#skin-theme-beta-notice {&lt;br /&gt;
        display: none !important;&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    #searchInput, .cdx-text-input__input:enabled, .cdx-text-input__input {&lt;br /&gt;
        background-color: var(--hedgedocs-input-bg-color) !important;&lt;br /&gt;
        border-color: var(--hedgedocs-input-border-color) !important;&lt;br /&gt;
        color: var(--hedgedocs-input-fg-color) !important;&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    .oo-ui-iconElement-icon:not(.oo-ui-checkboxInputWidget-checkIcon, .oo-ui-image-progressive, .oo-ui-icon-error), .oo-ui-indicatorElement-indicator {&lt;br /&gt;
        filter: invert() !important;&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.ext-darkmode-link::after {&lt;br /&gt;
    content: &#039;\263E&#039;;&lt;br /&gt;
    display: inline-block;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
span#skin-theme-beta-notice {&lt;br /&gt;
    display: none !important;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
#skin-client-prefs-skin-theme .cdx-radio:first-child {&lt;br /&gt;
    display: none;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* HEDDGEDOCS FONTS */&lt;br /&gt;
@import url(&#039;https://fonts.googleapis.com/css2?family=Roboto:ital,wdth,wght@0,75..100,100..900;1,75..100,100..900&amp;amp;display=swap&#039;);&lt;br /&gt;
@import url(&#039;https://fonts.googleapis.com/css2?family=Roboto+Mono:ital,wght@0,100..700;1,100..700&amp;amp;display=swap&#039;);&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
:root {&lt;br /&gt;
    --font-size-medium: var(--hedgedocs-font-size);&lt;br /&gt;
&lt;br /&gt;
    --hedgedocs-font-size: 16px;&lt;br /&gt;
    --hedgedocs-font-size-sidebars: 16px;&lt;br /&gt;
    --hedgedocs-font-size-sidebars-pin-button: 13px; &lt;br /&gt;
&lt;br /&gt;
    --hedgedocs-font: &#039;Roboto&#039;, -apple-system, BlinkMacSystemFont, Helvetica, Arial, sans-serif;&lt;br /&gt;
    --hedgedocs-code-font: &#039;Roboto Mono&#039;, SFMono-Regular, Consolas, Menlo, monospace;&lt;br /&gt;
}&lt;br /&gt;
body {&lt;br /&gt;
    -webkit-font-smoothing: antialiased;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
body, .mw-body, h1, h2, .mw-createacct-benefits-heading, .oo-ui-menuToolGroup-tools .oo-ui-tool-title, .vector-sticky-header-context-bar-primary, .mw-body-content .mw-number-text span {&lt;br /&gt;
    font-family: var(--hedgedocs-font) !important;&lt;br /&gt;
}&lt;br /&gt;
body .oo-ui-tool-name-preformatted .oo-ui-tool-link .oo-ui-tool-title, pre, code, tt, kbd, samp, .mw-code {&lt;br /&gt;
    font-family: var(--hedgedocs-code-font) !important;&lt;br /&gt;
}&lt;br /&gt;
h1 {&lt;br /&gt;
    font-weight: bold;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* HEDGEDOCS PAGE STYLING CSS */&lt;br /&gt;
&lt;br /&gt;
.mw-logo-wordmark {&lt;br /&gt;
    font-size: 17pt;&lt;br /&gt;
}&lt;br /&gt;
.mw-logo-icon {&lt;br /&gt;
    font-size: 7pt;&lt;br /&gt;
    padding-left: 1.5em;&lt;br /&gt;
}&lt;br /&gt;
.mw-logo {&lt;br /&gt;
    transition: opacity .25s;&lt;br /&gt;
}&lt;br /&gt;
.mw-logo:hover {&lt;br /&gt;
    opacity: 0.7;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
div.vector-pinnable-header-label, h2.vector-pinnable-header-label {&lt;br /&gt;
    background: var(--hedgedocs-header-color);&lt;br /&gt;
    color: var(--hedgedocs-header-fg-color);&lt;br /&gt;
    padding: 2px 10px 2px 10px;&lt;br /&gt;
    cursor: default;&lt;br /&gt;
    margin: 0em !important;&lt;br /&gt;
}&lt;br /&gt;
button.vector-pinnable-header-toggle-button {&lt;br /&gt;
    width: 100%;&lt;br /&gt;
    text-align: center;&lt;br /&gt;
    font-size: var(--hedgedocs-font-size-sidebars-pin-button);&lt;br /&gt;
    background-color: var(--hedgedocs-button-bg-color);&lt;br /&gt;
    padding: 2px 10px 2px 10px;&lt;br /&gt;
    transition: background-color 0.1s;&lt;br /&gt;
    margin-bottom: 0.5rem;&lt;br /&gt;
}&lt;br /&gt;
button.vector-pinnable-header-toggle-button:hover {&lt;br /&gt;
    background-color: var(--hedgedocs-button-bg-color-hover);&lt;br /&gt;
}&lt;br /&gt;
div.vector-pinnable-header {&lt;br /&gt;
    padding-bottom: 0;&lt;br /&gt;
    margin-bottom: 0;&lt;br /&gt;
    border-bottom: none;&lt;br /&gt;
    display: flex;&lt;br /&gt;
    flex-direction: column;&lt;br /&gt;
    justify-content: center;&lt;br /&gt;
}&lt;br /&gt;
div.vector-pinnable-element div.vector-menu-heading {&lt;br /&gt;
    color: var(--hedgedocs-fg-color-light);&lt;br /&gt;
    font-weight: bold;&lt;br /&gt;
    cursor: default;&lt;br /&gt;
    padding: 6px 0;&lt;br /&gt;
    border-bottom: none;&lt;br /&gt;
}&lt;br /&gt;
#vector-main-menu .vector-menu-content .mw-list-item:hover {&lt;br /&gt;
}&lt;br /&gt;
#vector-main-menu .vector-menu-content .mw-list-item a {&lt;br /&gt;
    font-weight: bold;&lt;br /&gt;
    text-decoration: none !important;&lt;br /&gt;
}&lt;br /&gt;
#vector-main-menu .vector-menu-content .mw-list-item a:hover {&lt;br /&gt;
    text-decoration: none !important;&lt;br /&gt;
}&lt;br /&gt;
#vector-main-menu .vector-menu-content .mw-list-item {&lt;br /&gt;
    margin-bottom: 0;&lt;br /&gt;
}&lt;br /&gt;
.mw-list-item a, .vector-toc-link {&lt;br /&gt;
    color: var(--hedgedocs-fg-color) !important;&lt;br /&gt;
    transition: color 125ms;&lt;br /&gt;
}&lt;br /&gt;
.mw-list-item a:hover, .vector-toc-link:hover {&lt;br /&gt;
    color: var(--hedgedocs-link-hover) !important;&lt;br /&gt;
    text-decoration: none;&lt;br /&gt;
}&lt;br /&gt;
.vector-toc .vector-toc-list-item-active &amp;gt; a.vector-toc-link, .vector-toc .vector-toc-level-1-active:not(.vector-toc-list-item-expanded) &amp;gt; a.vector-toc-link, .vector-toc .vector-toc-list-item-active.vector-toc-level-1-active &amp;gt; a.vector-toc-link {&lt;br /&gt;
    color: var(--hedgedocs-link-active-color) !important;&lt;br /&gt;
    font-weight: inherit;&lt;br /&gt;
}&lt;br /&gt;
.vector-pinnable-element, .vector-pinnable-header-label {&lt;br /&gt;
    font-size: var(--hedgedocs-font-size-sidebars) !important;&lt;br /&gt;
}&lt;br /&gt;
.vector-pinned-container {&lt;br /&gt;
    background-color: var(--hedgedocs-bg-color) !important;&lt;br /&gt;
}&lt;br /&gt;
.vector-sticky-pinned-container::after {&lt;br /&gt;
    background: linear-gradient(rgba(255, 255, 255, 0), var(--hedgedocs-bg-color)) !important;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
#toc-mw-content-text {&lt;br /&gt;
    display: none;&lt;br /&gt;
}&lt;br /&gt;
div.vector-toc-pinnable-header {&lt;br /&gt;
    margin-bottom: .25rem;&lt;br /&gt;
}&lt;br /&gt;
.vector-toc .vector-toc-toggle {&lt;br /&gt;
    top: 4px !important;&lt;br /&gt;
}&lt;br /&gt;
.vector-toc button.vector-pinnable-header-toggle-button {&lt;br /&gt;
    display: none !important;&lt;br /&gt;
}&lt;br /&gt;
.vector-toc .vector-toc-list-item-active &amp;gt; a.vector-toc-link span, .vector-toc .vector-toc-level-1-active:not(.vector-toc-list-item-expanded) &amp;gt; a.vector-toc-link span, .vector-toc .vector-toc-list-item-active.vector-toc-level-1-active &amp;gt; a.vector-toc-link span {&lt;br /&gt;
    border-left: .25em solid;&lt;br /&gt;
    padding-left: .5em;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.vector-page-titlebar .firstHeading {&lt;br /&gt;
    padding-bottom: 6px !important;&lt;br /&gt;
}&lt;br /&gt;
.firstHeading.mw-first-heading {&lt;br /&gt;
    font-size: 2.2rem;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.vector-menu-tabs .mw-list-item.vector-tab-noicon &amp;gt; a, #vector-page-tools-dropdown-label {&lt;br /&gt;
    padding: 9px 0 7px 0 !important;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.vector-header-container header.mw-header, .vector-header-container div.vector-sticky-header {&lt;br /&gt;
    background-color: transparent;&lt;br /&gt;
    max-width: 99.75rem;&lt;br /&gt;
}&lt;br /&gt;
.vector-sticky-header-context-bar .mw-page-title-main {&lt;br /&gt;
    font-weight: bold;&lt;br /&gt;
}&lt;br /&gt;
.vector-header-container {&lt;br /&gt;
    background-color: var(--hedgedocs-header-color);&lt;br /&gt;
    box-shadow: 0 0 2rem rgba(0, 0, 0, 0.3), 0 0.4rem 4rem rgba(0, 0, 0, 0.15);&lt;br /&gt;
    align-items: center;&lt;br /&gt;
    justify-content: center;&lt;br /&gt;
    min-height: 5rem;&lt;br /&gt;
    margin-bottom: 1rem;&lt;br /&gt;
}&lt;br /&gt;
.vector-header-container div.vector-sticky-header {&lt;br /&gt;
    color: var(--hedgedocs-header-fg-color);&lt;br /&gt;
    border: none;&lt;br /&gt;
}&lt;br /&gt;
.vector-header-container .vector-button-flush-left {&lt;br /&gt;
    margin-right: -24px;&lt;br /&gt;
}&lt;br /&gt;
.vector-header-container .vector-header-start .vector-button-flush-right {&lt;br /&gt;
    margin-right: -24px;&lt;br /&gt;
}&lt;br /&gt;
.vector-header-container .vector-header-end .vector-button-flush-right {&lt;br /&gt;
    margin-right: -6px;&lt;br /&gt;
}&lt;br /&gt;
.mw-header a:not(.vector-menu-content a, a.cdx-typeahead-search__search-footer), .mw-header a:visited:not(.vector-menu-content a), .user-links-collapsible-item a:not(.vector-dropdown-content .user-links-collapsible-item a) {&lt;br /&gt;
    color: var(--hedgedocs-header-fg-color) !important;&lt;br /&gt;
}&lt;br /&gt;
.mw-header a:not(.vector-menu-content a, a.cdx-typeahead-search__search-footer):hover, .mw-header a:visited:not(.vector-menu-content a):hover, .user-links-collapsible-item a:not(.vector-dropdown-content .user-links-collapsible-item a):hover {&lt;br /&gt;
    color: var(--hedgedocs-header-fg-color) !important;&lt;br /&gt;
}&lt;br /&gt;
.vector-dropdown div.vector-dropdown-content {&lt;br /&gt;
    background-color: var(--hedgedocs-bg-color);&lt;br /&gt;
}&lt;br /&gt;
.mw-header .vector-icon:not(.vector-dropdown-content .vector-icon ) {&lt;br /&gt;
    filter: invert();&lt;br /&gt;
}&lt;br /&gt;
.vector-user-menu-logged-in .vector-dropdown-label::after {&lt;br /&gt;
    background-color: var(--hedgedocs-header-fg-color) !important;&lt;br /&gt;
}&lt;br /&gt;
.vector-header-container .vector-icon:not(.vector-dropdown-content .vector-icon) {&lt;br /&gt;
    filter: invert() brightness(2);&lt;br /&gt;
}&lt;br /&gt;
.vector-header .cdx-button.cdx-button--icon-only {&lt;br /&gt;
    min-width: 32px !important;&lt;br /&gt;
}&lt;br /&gt;
@media screen and (max-width: calc(639px)) {&lt;br /&gt;
    .vector-header {&lt;br /&gt;
        flex-flow: row !important;&lt;br /&gt;
    }&lt;br /&gt;
    .mw-logo {&lt;br /&gt;
        min-width: 11em !important;&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
.cdx-menu-item__text .cdx-search-result-title {&lt;br /&gt;
    color: var(--hedgedocs-fg-color);&lt;br /&gt;
}&lt;br /&gt;
.cdx-menu {&lt;br /&gt;
    color: var(--hedgedocs-fg-color);&lt;br /&gt;
}&lt;br /&gt;
.vector-header-container.vector-sticky-header-container {&lt;br /&gt;
    min-height: 3.5rem;&lt;br /&gt;
    font-size: 11pt;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.mw-footer li {&lt;br /&gt;
    color: var(--hedgedocs-fg-color) !important;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
#searchInput, .cdx-text-input__input:enabled, .cdx-text-input__input {&lt;br /&gt;
    background-color: var(--hedgedocs-input-bg-color) !important;&lt;br /&gt;
    border-color: var(--hedgedocs-input-border-color) !important;&lt;br /&gt;
    color: var(--hedgedocs-input-fg-color) !important;&lt;br /&gt;
}&lt;br /&gt;
.oo-ui-checkboxInputWidget [type=&#039;checkbox&#039;] + span {&lt;br /&gt;
    background-color: var(--hedgedocs-input-bg-color);&lt;br /&gt;
    color: var(--hedgedocs-fg-color);&lt;br /&gt;
}&lt;br /&gt;
.oo-ui-textInputWidget input.oo-ui-inputWidget-input{&lt;br /&gt;
    background-color: var(--hedgedocs-input-bg-color);&lt;br /&gt;
}&lt;br /&gt;
.oo-ui-textInputWidget .oo-ui-inputWidget-input, .oo-ui-textInputWidget .oo-ui-inputWidget-input, .oo-ui-tagMultiselectWidget.oo-ui-widget-enabled {&lt;br /&gt;
    background-color: var(--hedgedocs-input-bg-color) !important;&lt;br /&gt;
    color: var(--hedgedocs-input-fg-color) !important;&lt;br /&gt;
}&lt;br /&gt;
.cdx-text-input__input:enabled~.cdx-text-input__icon-vue {&lt;br /&gt;
    color: var(--hedgedocs-input-fg-color) !important;&lt;br /&gt;
    opacity: 0.5 !important;&lt;br /&gt;
}&lt;br /&gt;
span.cdx-text-input__icon.cdx-text-input__start-icon {&lt;br /&gt;
    background-color: var(--hedgedocs-input-fg-color) !important;&lt;br /&gt;
    opacity: 0.5 !important;&lt;br /&gt;
}&lt;br /&gt;
textarea {&lt;br /&gt;
    background-color: var(--hedgedocs-bg-color);&lt;br /&gt;
}&lt;br /&gt;
button.cdx-button, button.cdx-button:enabled, .oo-ui-buttonElement-framed.oo-ui-widget-enabled &amp;gt; .oo-ui-buttonElement-button {&lt;br /&gt;
    background-color: var(--hedgedocs-button-bg-color);&lt;br /&gt;
    border: none;&lt;br /&gt;
    transition: background-color 0.1s;&lt;br /&gt;
}&lt;br /&gt;
button.cdx-button:hover, .oo-ui-buttonElement-framed.oo-ui-widget-enabled &amp;gt; .oo-ui-buttonElement-button:hover {&lt;br /&gt;
    background-color: var(--hedgedocs-button-bg-color-hover) !important;&lt;br /&gt;
}&lt;br /&gt;
.cdx-button.cdx-button--weight-primary.cdx-button--action-progressive, .oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive &amp;gt; .oo-ui-buttonElement-button, .oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive &amp;gt; .oo-ui-tool-link {&lt;br /&gt;
    background-color: var(--hedgedocs-button-accent-bg-color) !important;&lt;br /&gt;
    transition: background-color 0.1s;&lt;br /&gt;
}&lt;br /&gt;
.cdx-button.cdx-button--weight-primary.cdx-button--action-progressive:hover, .oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive &amp;gt; .oo-ui-buttonElement-button:hover, .oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive &amp;gt; .oo-ui-tool-link:hover {&lt;br /&gt;
    background-color: var(--hedgedocs-button-accent-bg-color-hover) !important;&lt;br /&gt;
}&lt;br /&gt;
.cdx-radio__icon {&lt;br /&gt;
    background-color: var(--hedgedocs-button-bg-color) !important;&lt;br /&gt;
}&lt;br /&gt;
.cdx-radio:hover .cdx-radio__icon {&lt;br /&gt;
    background-color: var(--hedgedocs-button-bg-color-hover) !important;&lt;br /&gt;
}&lt;br /&gt;
.cdx-radio__input:enabled:checked+.cdx-radio__icon {&lt;br /&gt;
    background-color: var(--hedgedocs-button-check-fg-color) !important;&lt;br /&gt;
    border-color: var(--hedgedocs-button-check-bg-color) !important;&lt;br /&gt;
}&lt;br /&gt;
.cdx-radio__input:enabled+.cdx-radio__icon {&lt;br /&gt;
    border-color: var(--hedgedocs-base-border-color) !important;&lt;br /&gt;
}&lt;br /&gt;
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type=&#039;checkbox&#039;]:checked + span, .oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type=&#039;checkbox&#039;]:indeterminate + span {&lt;br /&gt;
    background-color: var(--hedgedocs-button-check-bg-color) !important;&lt;br /&gt;
}&lt;br /&gt;
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-buttonElement-active &amp;gt; .oo-ui-buttonElement-button {&lt;br /&gt;
    background-color: var(--hedgedocs-button-accent-bg-color) !important;&lt;br /&gt;
    color: var(--hedgedocs-button-accent-fg-color) !important;&lt;br /&gt;
}&lt;br /&gt;
.tdg-templateDataParamWidget-param-alias:first-child {&lt;br /&gt;
    background-color: var(--hedgedocs-bg-color-secondary) !important;&lt;br /&gt;
    color: var(--hedgedocs-fg-color-light) !important;&lt;br /&gt;
    border-color: var(--hedgedocs-base-border-color);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
.oo-ui-toolbar-bar {&lt;br /&gt;
    background-color: var(--hedgedocs-bg-color-secondary) !important;&lt;br /&gt;
    color: var(--hedgedocs-fg-color) !important;&lt;br /&gt;
}&lt;br /&gt;
.oo-ui-menuToolGroup, .oo-ui-toolbar-position-top &amp;gt; .oo-ui-toolbar-bar {&lt;br /&gt;
    border-color: var(--hedgedocs-bg-color) !important;&lt;br /&gt;
}&lt;br /&gt;
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive &amp;gt; .oo-ui-tool-link {&lt;br /&gt;
    color: var(--hedgedocs-header-fg-color) !important;&lt;br /&gt;
    background-color: var(--hedgedocs-header-color) !important;&lt;br /&gt;
}&lt;br /&gt;
.editOptions {&lt;br /&gt;
    background-color: var(--hedgedocs-bg-color-secondary);&lt;br /&gt;
    color: var(--hedgedocs-fg-color);&lt;br /&gt;
}&lt;br /&gt;
.editCheckboxes {&lt;br /&gt;
    margin-bottom: .5rem;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.oo-ui-panelLayout-framed {&lt;br /&gt;
    border: none;&lt;br /&gt;
    background-color: var(--hedgedocs-frame-bg-color);&lt;br /&gt;
}&lt;br /&gt;
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-widget-enabled.oo-ui-optionWidget-selected {&lt;br /&gt;
    background-color: var(--hedgedocs-frame-bg-color) !important;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-widget-enabled.oo-ui-optionWidget-selected .oo-ui-labelElement-label, .oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget .oo-ui-labelElement-label {&lt;br /&gt;
    border: none !important;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.approved-revision {&lt;br /&gt;
    background-color: transparent !important;&lt;br /&gt;
    border: 3px solid;&lt;br /&gt;
    color: var(--hedgedocs-fg-color) !important;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
#mw-content-text {&lt;br /&gt;
    margin-top: 0 !important;&lt;br /&gt;
}&lt;br /&gt;
figure[typeof~=&#039;mw:File/Thumb&#039;] {&lt;br /&gt;
    background-color: transparent !important;&lt;br /&gt;
    border: none !important;&lt;br /&gt;
    margin-bottom: 0.5em !important;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
figure[typeof~=&#039;mw:File/Thumb&#039;].mw-halign-left {&lt;br /&gt;
    margin-bottom: 0.5em !important;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
figure[typeof~=&#039;mw:File/Thumb&#039;] &amp;gt; .mw-file-description &amp;gt; img {&lt;br /&gt;
    background-color: transparent !important;&lt;br /&gt;
    border: none !important;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
figure[typeof~=&#039;mw:File/Thumb&#039;] &amp;gt; .mw-file-description::after {&lt;br /&gt;
    display: none !important;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
figure[typeof~=&#039;mw:File/Thumb&#039;] &amp;gt; figcaption {&lt;br /&gt;
    background-color: transparent !important;&lt;br /&gt;
    border: none !important;&lt;br /&gt;
    padding: 5px !important;&lt;br /&gt;
}&lt;br /&gt;
.mw-body-content a {&lt;br /&gt;
    color: var(--hedgedocs-link-color);&lt;br /&gt;
}&lt;br /&gt;
.mw-body-content a:visited, .mw-body-content a:visited:hover{&lt;br /&gt;
    color: var(--hedgedocs-link-color);&lt;br /&gt;
}&lt;br /&gt;
.mw-body-content a.new {&lt;br /&gt;
    color: var(--hedgedocs-new-link-color);&lt;br /&gt;
}&lt;br /&gt;
.mw-body-content a.new:visited, .mw-body-content a.new:visited:hover{&lt;br /&gt;
    color: var(--hedgedocs-new-link-color);&lt;br /&gt;
}&lt;br /&gt;
.wikitable &amp;gt; tr &amp;gt; th, .wikitable &amp;gt; * &amp;gt; tr &amp;gt; th {&lt;br /&gt;
    background-color: var(--hedgedocs-table-header-bg-color) !important;&lt;br /&gt;
    color: var(--hedgedocs-table-header-fg-color) !important;&lt;br /&gt;
}&lt;br /&gt;
.wikitable &amp;gt; tr &amp;gt; th, .wikitable &amp;gt; tr &amp;gt; td, .wikitable &amp;gt; * &amp;gt; tr &amp;gt; th, .wikitable &amp;gt; * &amp;gt; tr &amp;gt; td {&lt;br /&gt;
    background-color: var(--hedgedocs-table-data-bg-color);&lt;br /&gt;
    color: var(--hedgedocs-fg-color);&lt;br /&gt;
}&lt;br /&gt;
.wikitable &amp;gt; tr &amp;gt; th, .wikitable &amp;gt; tr &amp;gt; td, .wikitable &amp;gt; * &amp;gt; tr &amp;gt; th, .wikitable &amp;gt; * &amp;gt; tr &amp;gt; td {&lt;br /&gt;
    border: 1px solid var(--hedgedocs-table-border-color) !important;&lt;br /&gt;
    padding: 5px 9px;&lt;br /&gt;
}&lt;br /&gt;
code, pre {&lt;br /&gt;
    background-color: var(--hedgedocs-frame-bg-color);&lt;br /&gt;
    border-color: var(--hedgedocs-base-border-color);&lt;br /&gt;
    color: var(--hedgedocs-fg-color-light);&lt;br /&gt;
    scrollbar-color: var(--hedgedocs-scrollbar-color) transparent;&lt;br /&gt;
}&lt;br /&gt;
pre {&lt;br /&gt;
    overflow: auto;&lt;br /&gt;
    white-space: pre;&lt;br /&gt;
}&lt;br /&gt;
figure.embedvideo, figure.embedvideo video {&lt;br /&gt;
    height: auto !important;&lt;br /&gt;
    width: 640px !important;&lt;br /&gt;
}&lt;br /&gt;
figure.embedvideo[data-service=&amp;quot;local-embed&amp;quot;] span.embedvideo-wrapper {&lt;br /&gt;
    height: auto !important;&lt;br /&gt;
    width: 640px !important;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* HEDGEDOCS CUSTOM ELEMENTS */&lt;br /&gt;
&lt;br /&gt;
.hedgedocs-card {&lt;br /&gt;
    display: grid;&lt;br /&gt;
    background-color: var(--hedgedocs-frame-bg-color);&lt;br /&gt;
    padding: 5px 20px 25px 20px;&lt;br /&gt;
    margin-bottom: 1rem;&lt;br /&gt;
    border-radius: 2px;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.hedgedocs-card-header p {&lt;br /&gt;
    margin: .5rem 0 0 0 !important;&lt;br /&gt;
    font-weight: bolder;&lt;br /&gt;
    font-size: 25px;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.hedgedocs-card-header {&lt;br /&gt;
    grid-column-start: 1;&lt;br /&gt;
    grid-column-end: 2;&lt;br /&gt;
    grid-row-start: 1;&lt;br /&gt;
    grid-row-end: 2;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.hedgedocs-card-description {&lt;br /&gt;
    grid-column-start: 1;&lt;br /&gt;
    grid-column-end: 2;&lt;br /&gt;
    grid-row-start: 2;&lt;br /&gt;
    grid-row-end: 3;&lt;br /&gt;
    text-align: justify;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.hedgedocs-card-button {&lt;br /&gt;
    grid-column-start: 2;&lt;br /&gt;
    grid-column-end: 3;&lt;br /&gt;
    grid-row-start: 3;&lt;br /&gt;
    grid-row-end: 4;&lt;br /&gt;
    text-align: right;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.hedgedocs-card-button a {&lt;br /&gt;
    background-color: var(--hedgedocs-button-accent-bg-color);&lt;br /&gt;
    color: var(--hedgedocs-button-accent-fg-color) !important;&lt;br /&gt;
    padding: 10px 30px !important;&lt;br /&gt;
    background-image: none !important;&lt;br /&gt;
    transition: background-color 0.1s;&lt;br /&gt;
    border-radius: 2px;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.hedgedocs-card-button a:hover {&lt;br /&gt;
    background-color: var(--hedgedocs-button-accent-bg-color-hover);&lt;br /&gt;
    text-decoration: none !important;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.hedgedocs-card-button p {&lt;br /&gt;
    margin: 0 !important;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.hedgedocs-home-links {&lt;br /&gt;
    display: flex;&lt;br /&gt;
    flex-direction: column;&lt;br /&gt;
    justify-content: center;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.hedgedocs-home-links a {&lt;br /&gt;
    display: inline-block;&lt;br /&gt;
    background-color: var(--hedgedocs-button-accent-bg-color);&lt;br /&gt;
    color: var(--hedgedocs-button-accent-fg-color) !important;&lt;br /&gt;
    padding: 10px 0px 10px 0px !important;&lt;br /&gt;
    text-align: center;&lt;br /&gt;
    margin-bottom: 10px;&lt;br /&gt;
    background-image: none !important;&lt;br /&gt;
    transition: background-color 0.1s;&lt;br /&gt;
    width: 100%;&lt;br /&gt;
    margin-left: 0;&lt;br /&gt;
    margin-right: 0;&lt;br /&gt;
    border-radius: 2px;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.hedgedocs-home-links a:hover {&lt;br /&gt;
    background-color: var(--hedgedocs-button-accent-bg-color-hover);&lt;br /&gt;
    text-decoration: none !important;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.hedgedocs-home-links p {&lt;br /&gt;
    margin: 0 0 1.5em 0 !important;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.hedgedocs-home-links a {&lt;br /&gt;
    margin-left: 0;&lt;br /&gt;
    margin-right: 0;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.hedgedocs-homepage-scripts {&lt;br /&gt;
    display: none;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
:root {&lt;br /&gt;
    --imagePreview-finalScale: 1.75;&lt;br /&gt;
    --imagePreview-finalScale-bounce: 1.765;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.imagePreview-background {&lt;br /&gt;
    background: #000000;&lt;br /&gt;
    visibility: visible;&lt;br /&gt;
    display: inherit;&lt;br /&gt;
    opacity: 85%;&lt;br /&gt;
    position: fixed;&lt;br /&gt;
    left: 0;&lt;br /&gt;
    top: 0;&lt;br /&gt;
    width: 100%;&lt;br /&gt;
    height: 100%;&lt;br /&gt;
    z-index: 9;&lt;br /&gt;
    transition: opacity 2s;&lt;br /&gt;
    animation: fadein 0.25s;&lt;br /&gt;
    cursor: default;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.imagePreview {&lt;br /&gt;
    text-align: center;&lt;br /&gt;
    opacity: 0;&lt;br /&gt;
    justify-content: center;&lt;br /&gt;
    display: none;&lt;br /&gt;
    z-index: 9;&lt;br /&gt;
    position: fixed;&lt;br /&gt;
    transition: opacity 0.25s;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.imagePreview-image {&lt;br /&gt;
    flex-direction: column;&lt;br /&gt;
    align-items: center;&lt;br /&gt;
    display: none;&lt;br /&gt;
    z-index: 9;&lt;br /&gt;
    position: fixed;&lt;br /&gt;
    margin: auto;&lt;br /&gt;
    top: 50%;&lt;br /&gt;
    left: 50%;&lt;br /&gt;
    transform: translate(-50%, -50%) scale(0);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.imagePreview-image-element {&lt;br /&gt;
    display: block;&lt;br /&gt;
    cursor: default !important;&lt;br /&gt;
    object-fit: contain;&lt;br /&gt;
    max-width: 50vw;&lt;br /&gt;
    max-height: 40vh;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
@media screen and (max-width: 76.25em) {&lt;br /&gt;
    .imagePreview-image-element {&lt;br /&gt;
        max-width: 50vw;&lt;br /&gt;
        max-height: 45vw;&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.imagePreview-image-caption {&lt;br /&gt;
    display: block;&lt;br /&gt;
    width: -moz-fit-content;&lt;br /&gt;
    width: 100%;&lt;br /&gt;
    color: #888888 !important;&lt;br /&gt;
    margin-top: .5rem;&lt;br /&gt;
    font-size: 10px;&lt;br /&gt;
    line-height: 12px;&lt;br /&gt;
    text-align: left;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.imagePreview-image-caption:hover {&lt;br /&gt;
    color: #CCCCCC !important;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.scaleup {&lt;br /&gt;
    animation: scaleup 0.25s forwards;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.scaledown {&lt;br /&gt;
    animation: scaledown 0.3s forwards;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
@keyframes scaleup {&lt;br /&gt;
    0% {&lt;br /&gt;
        opacity: 0%;&lt;br /&gt;
        transform: translate(-50%, -50%) scale(0);&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    100% {&lt;br /&gt;
        opacity: 100%;&lt;br /&gt;
        transform: translate(-50%, -50%) scale(var(--imagePreview-finalScale));&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
@keyframes scaledown {&lt;br /&gt;
    0% {&lt;br /&gt;
        opacity: 100%;&lt;br /&gt;
        transform: translate(-50%, -50%) scale(var(--imagePreview-finalScale));&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    80% {&lt;br /&gt;
        opacity: 0%;&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    100% {&lt;br /&gt;
        opacity: 0%;&lt;br /&gt;
        transform: translate(-50%, -50%) scale(0);&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.hedgedocs-infobox {&lt;br /&gt;
    display: flex;&lt;br /&gt;
    flex-direction: column;&lt;br /&gt;
    justify-content: center;&lt;br /&gt;
    border: 1px solid var(--hedgedocs-base-border-color);&lt;br /&gt;
    background-color: var(--hedgedocs-frame-bg-color);&lt;br /&gt;
    padding: 7px 13px 10px 13px;&lt;br /&gt;
    margin-bottom: 1em;&lt;br /&gt;
    font-size: 88%;&lt;br /&gt;
    float: right;&lt;br /&gt;
    clear: right;&lt;br /&gt;
    width: 17rem;&lt;br /&gt;
    margin-left: 1rem;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.hedgedocs-infobox tr {&lt;br /&gt;
    display: flex;&lt;br /&gt;
    align-items: center;&lt;br /&gt;
    justify-content: center;&lt;br /&gt;
    text-align: center;&lt;br /&gt;
    width: 100%;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.hedgedocs-infobox tbody {&lt;br /&gt;
    display: block;&lt;br /&gt;
    width: 100%;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
@media screen and (max-width: 76.25em) {&lt;br /&gt;
    .hedgedocs-infobox {&lt;br /&gt;
        float: none;&lt;br /&gt;
        clear: none;&lt;br /&gt;
        margin: auto;&lt;br /&gt;
        width: 20rem;&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.hedgedocs-infobox-title {&lt;br /&gt;
    font-size: 1.2em;&lt;br /&gt;
    font-weight: bold;&lt;br /&gt;
    text-align: center;&lt;br /&gt;
    padding-bottom: 0.2rem;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.hedgedocs-infobox-image {&lt;br /&gt;
    text-align: center;&lt;br /&gt;
    padding-bottom: 0.75rem;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.hedgedocs-infobox-image img {&lt;br /&gt;
    max-width: 100%;&lt;br /&gt;
    height: auto;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.hedgedocs-infobox-label {&lt;br /&gt;
    font-weight: bold;&lt;br /&gt;
    width: 50%;&lt;br /&gt;
    vertical-align: top;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.hedgedocs-infobox-data {&lt;br /&gt;
    width: 50%;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.hedgedocs-infobox-website,&lt;br /&gt;
.hedgedocs-infobox-download {&lt;br /&gt;
    padding-top: 0.25rem;&lt;br /&gt;
    width: 100%;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.hedgedocs-infobox .hedgedocs-infobox-links a {&lt;br /&gt;
    display: block;&lt;br /&gt;
    padding: .5em !important;&lt;br /&gt;
    background-color: var(--hedgedocs-button-accent-bg-color);&lt;br /&gt;
    color: var(--hedgedocs-button-accent-fg-color) !important;&lt;br /&gt;
    text-decoration: none;&lt;br /&gt;
    background-image: none !important;&lt;br /&gt;
    width: auto;&lt;br /&gt;
    transition: background-color 125ms;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.hedgedocs-infobox a:hover {&lt;br /&gt;
    background-color: var(--hedgedocs-button-accent-bg-color-hover);&lt;br /&gt;
    color: var(--hedgedocs-button-accent-fg-color);&lt;br /&gt;
    text-decoration: none;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.hedgedocs-notice {&lt;br /&gt;
    border: 1px solid;&lt;br /&gt;
    border-radius: 2px;&lt;br /&gt;
    color: var(--hedgedocs-fg-color);&lt;br /&gt;
    box-shadow: 0 0.2rem 0.5rem rgba(0, 0, 0, 0.051), 0 0 0.05rem rgba(0, 0, 0, 0.102);&lt;br /&gt;
    margin: 1.5rem 0;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.hedgedocs-notice-note {&lt;br /&gt;
    border-color: var(--hedgedocs-notice-note-border-color);&lt;br /&gt;
&lt;br /&gt;
    .hedgedocs-notice-header {&lt;br /&gt;
        background-color: var(--hedgedocs-notice-note-header-color);&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
.hedgedocs-notice-info {&lt;br /&gt;
    border-color: var(--hedgedocs-notice-info-border-color);&lt;br /&gt;
&lt;br /&gt;
    .hedgedocs-notice-header {&lt;br /&gt;
        background-color: var(--hedgedocs-notice-info-header-color);&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
.hedgedocs-notice-warn {&lt;br /&gt;
    border-color: var(--hedgedocs-notice-warn-border-color);&lt;br /&gt;
&lt;br /&gt;
    .hedgedocs-notice-header {&lt;br /&gt;
        background-color: var(--hedgedocs-notice-warn-header-color);&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
.hedgedocs-notice-example {&lt;br /&gt;
    border-color: var(--hedgedocs-notice-example-border-color);&lt;br /&gt;
&lt;br /&gt;
    .hedgedocs-notice-header {&lt;br /&gt;
        background-color: var(--hedgedocs-notice-example-header-color);&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.hedgedocs-notice .hedgedocs-notice-header {&lt;br /&gt;
    font-weight: bold;&lt;br /&gt;
    color: var(--hedgedocs-fg-color);&lt;br /&gt;
    padding: 7px 15px;&lt;br /&gt;
}&lt;br /&gt;
.hedgedocs-notice-content {&lt;br /&gt;
    padding: 15px;&lt;br /&gt;
    background-color: var(--hedgedocs-frame-bg-color);&lt;br /&gt;
    white-space: pre-wrap;&lt;br /&gt;
}&lt;br /&gt;
.hedgedocs-notice-content ul {&lt;br /&gt;
    margin-top: 0 !important;&lt;br /&gt;
    white-space: normal;&lt;br /&gt;
}&lt;br /&gt;
.hedgedocs-notice-content p {&lt;br /&gt;
    display: inline-block;&lt;br /&gt;
    padding: 0;&lt;br /&gt;
    margin: 0 !important;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.vector-main-menu-action-opt-out {&lt;br /&gt;
    display: none;&lt;br /&gt;
}&lt;br /&gt;
.vector-settings {&lt;br /&gt;
    display: none;&lt;br /&gt;
}&lt;br /&gt;
li#ca-talk, li#ca-nstab-main {&lt;br /&gt;
    display: none;&lt;br /&gt;
}&lt;br /&gt;
div.vector-page-toolbar-container {&lt;br /&gt;
    box-shadow: none;&lt;br /&gt;
    background-color: var(--hedgedocs-bg-color-secondary);&lt;br /&gt;
    padding: 0 10px;&lt;br /&gt;
}&lt;br /&gt;
.vector-page-titlebar::after {&lt;br /&gt;
    display: none !important;&lt;br /&gt;
}&lt;br /&gt;
.mw-portlet-skin-client-prefs-vector-feature-custom-font-size {&lt;br /&gt;
    display: none;&lt;br /&gt;
}&lt;br /&gt;
.mw-editsection { display:none; }&lt;br /&gt;
li#footer-places-disclaimers {&lt;br /&gt;
    display: none;&lt;br /&gt;
}&lt;/div&gt;</summary>
		<author><name>PTKay</name></author>
	</entry>
	<entry>
		<id>https://hedgedocs.com/index.php?title=MediaWiki:Vector-2022.css&amp;diff=762</id>
		<title>MediaWiki:Vector-2022.css</title>
		<link rel="alternate" type="text/html" href="https://hedgedocs.com/index.php?title=MediaWiki:Vector-2022.css&amp;diff=762"/>
		<updated>2025-07-12T17:58:31Z</updated>

		<summary type="html">&lt;p&gt;PTKay: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;/* HEDDGEDOCS COLOR PALETTES */&lt;br /&gt;
&lt;br /&gt;
:root {&lt;br /&gt;
    --hedgedocs-accent-color: #3e7e9e;&lt;br /&gt;
    --hedgedocs-accent-color-secondary: #4d9ec7;&lt;br /&gt;
    &lt;br /&gt;
    --hedgedocs-base-border-color: #adb5c2;&lt;br /&gt;
&lt;br /&gt;
    --hedgedocs-frame-bg-color: #e9ebec;&lt;br /&gt;
&lt;br /&gt;
    --hedgedocs-scrollbar-color: #888888;&lt;br /&gt;
&lt;br /&gt;
    --hedgedocs-bg-color: #f0f3f4;&lt;br /&gt;
    --hedgedocs-bg-color-secondary: #dddddd;&lt;br /&gt;
&lt;br /&gt;
    --hedgedocs-header-color: var(--hedgedocs-accent-color);&lt;br /&gt;
    --hedgedocs-header-fg-color: #f2f8f8;&lt;br /&gt;
&lt;br /&gt;
    --hedgedocs-fg-color-light: #333333;&lt;br /&gt;
    --hedgedocs-fg-color: #202122;&lt;br /&gt;
&lt;br /&gt;
    --hedgedocs-link-color: #36c;&lt;br /&gt;
    --hedgedocs-link-hover: #757575;&lt;br /&gt;
    --hedgedocs-link-active-color: #00aedf;&lt;br /&gt;
    --hedgedocs-new-link-color: #d73333;&lt;br /&gt;
&lt;br /&gt;
    --hedgedocs-input-bg-color: #ffffff;&lt;br /&gt;
    --hedgedocs-input-fg-color: #202122;&lt;br /&gt;
    --hedgedocs-input-border-color: var(--hedgedocs-input-bg-color);&lt;br /&gt;
&lt;br /&gt;
    --hedgedocs-button-bg-color: #bbbbbb;&lt;br /&gt;
    --hedgedocs-button-bg-color-hover: #999999;&lt;br /&gt;
    --hedgedocs-button-check-fg-color: #ffffff;&lt;br /&gt;
    --hedgedocs-button-check-bg-color: var(--hedgedocs-accent-color);&lt;br /&gt;
    --hedgedocs-button-accent-bg-color: var(--hedgedocs-accent-color);&lt;br /&gt;
    --hedgedocs-button-accent-fg-color: #ffffff;&lt;br /&gt;
    --hedgedocs-button-accent-bg-color-hover: var(--hedgedocs-accent-color-secondary);&lt;br /&gt;
&lt;br /&gt;
    --hedgedocs-table-header-bg-color: var(--hedgedocs-bg-color-secondary);&lt;br /&gt;
    --hedgedocs-table-data-bg-color: var(--hedgedocs-frame-bg-color);&lt;br /&gt;
    --hedgedocs-table-header-fg-color: var(--hedgedocs-fg-color);&lt;br /&gt;
    --hedgedocs-table-border-color: #B2B2B2;&lt;br /&gt;
&lt;br /&gt;
    --hedgedocs-notice-note-header-color: rgba(68, 138, 255, 0.15);&lt;br /&gt;
    --hedgedocs-notice-note-border-color: rgba(68, 138, 255, 0.75);&lt;br /&gt;
    --hedgedocs-notice-info-header-color: rgba(0, 184, 212, 0.15);&lt;br /&gt;
    --hedgedocs-notice-info-border-color: rgba(0, 184, 212, 0.75);&lt;br /&gt;
    --hedgedocs-notice-warn-header-color: rgba(255, 145, 0, 0.15);&lt;br /&gt;
    --hedgedocs-notice-warn-border-color: rgba(255, 145, 0, 0.75);&lt;br /&gt;
    --hedgedocs-notice-example-header-color: rgba(118, 84, 250, 0.15);&lt;br /&gt;
    --hedgedocs-notice-example-border-color: rgba(118, 84, 250, 0.75);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.skin-theme-clientpref-night {&lt;br /&gt;
    --hedgedocs-accent-color: #0f3885;&lt;br /&gt;
    --hedgedocs-accent-color-secondary: #0d2a5f;&lt;br /&gt;
&lt;br /&gt;
    --hedgedocs-base-border-color: #414658;&lt;br /&gt;
&lt;br /&gt;
    --hedgedocs-frame-bg-color: #1a1c24;&lt;br /&gt;
    &lt;br /&gt;
    --hedgedocs-scrollbar-color: #888888;&lt;br /&gt;
&lt;br /&gt;
    --hedgedocs-bg-color: #151515;&lt;br /&gt;
    --hedgedocs-bg-color-secondary: #272a35;&lt;br /&gt;
&lt;br /&gt;
    --hedgedocs-header-fg-color: #f2f8f8;&lt;br /&gt;
&lt;br /&gt;
    --hedgedocs-fg-color-light: #e0e6e6;&lt;br /&gt;
    --hedgedocs-fg-color: #d2d2d2;&lt;br /&gt;
&lt;br /&gt;
    --hedgedocs-link-color: #88a3e8;&lt;br /&gt;
    --hedgedocs-link-hover: #4e67f0;&lt;br /&gt;
    --hedgedocs-link-active-color: #5082dc;&lt;br /&gt;
    --hedgedocs-new-link-color: #fd7865;&lt;br /&gt;
&lt;br /&gt;
    --hedgedocs-input-bg-color: #222222;&lt;br /&gt;
    --hedgedocs-input-fg-color: #d2d2d2;&lt;br /&gt;
    --hedgedocs-input-border-color: var(--hedgedocs-input-bg-color);&lt;br /&gt;
&lt;br /&gt;
    --hedgedocs-button-bg-color: #333333;&lt;br /&gt;
    --hedgedocs-button-bg-color-hover: #555555;&lt;br /&gt;
    --hedgedocs-button-check-fg-color: #ffffff;&lt;br /&gt;
    --hedgedocs-button-check-bg-color: var(--hedgedocs-accent-color);&lt;br /&gt;
&lt;br /&gt;
    --hedgedocs-table-header-bg-color: #252833;&lt;br /&gt;
    --hedgedocs-table-data-bg-color: var(--hedgedocs-frame-bg-color);&lt;br /&gt;
    --hedgedocs-table-header-fg-color: var(--hedgedocs-fg-color);&lt;br /&gt;
    --hedgedocs-table-border-color: #3A3A3A;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
:root, .skin-theme-clientpref-night, html.skin-theme-clientpref-night {&lt;br /&gt;
    --background-color-base: var(--hedgedocs-bg-color);&lt;br /&gt;
    --background-color-interactive: var(--hedgedocs-bg-color-secondary);&lt;br /&gt;
    --background-color-interactive-subtle: var(--hedgedocs-bg-color-secondary);&lt;br /&gt;
    --background-color-neutral-subtle: var(--hedgedocs-bg-color);&lt;br /&gt;
    --border-color-base: var(--hedgedocs-base-border-color);&lt;br /&gt;
}&lt;br /&gt;
body {&lt;br /&gt;
    background-color: var(--hedgedocs-bg-color) !important;&lt;br /&gt;
    color: var(--hedgedocs-fg-color) !important;&lt;br /&gt;
}&lt;br /&gt;
.mw-page-container {&lt;br /&gt;
    background-color: transparent !important;&lt;br /&gt;
}&lt;br /&gt;
.mw-heading, h1, h2:not(.vector-pinnable-header-label), h3, h4, h5, h6 {&lt;br /&gt;
    color: var(--hedgedocs-fg-color) !important;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* HEDDGEDOCS DARK THEME TWEAKS */&lt;br /&gt;
&lt;br /&gt;
html.skin-theme-clientpref-night, .skin-theme-clientpref-night * {&lt;br /&gt;
    filter: none !important;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.skin-theme-clientpref-night {&lt;br /&gt;
    .mw-page-container .vector-icon {&lt;br /&gt;
        filter: invert() !important;&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    .vector-icon.mw-ui-icon-listBullet {&lt;br /&gt;
        filter: none !important;&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    .vector-icon.mw-ui-icon-wikimedia-unStar, .vector-icon.mw-ui-icon-wikimedia-star, .vector-icon.mw-ui-icon-wikimedia-expand {&lt;br /&gt;
        filter: none !important;&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    #vector-page-tools-dropdown-label {&lt;br /&gt;
        color: var(--hedgedocs-fg-color);&lt;br /&gt;
        transition: color 0s;&lt;br /&gt;
    }&lt;br /&gt;
    &lt;br /&gt;
    .vector-header-container .vector-icon:not(.vector-dropdown-content .vector-icon) {&lt;br /&gt;
        filter: brightness(2) !important;&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    .ext-darkmode-link::after {&lt;br /&gt;
        content: &#039;\263C&#039;;&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    .mw-list-item span#skin-theme-beta-notice {&lt;br /&gt;
        display: none !important;&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    #searchInput, .cdx-text-input__input:enabled, .cdx-text-input__input {&lt;br /&gt;
        background-color: var(--hedgedocs-input-bg-color) !important;&lt;br /&gt;
        border-color: var(--hedgedocs-input-border-color) !important;&lt;br /&gt;
        color: var(--hedgedocs-input-fg-color) !important;&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    .oo-ui-iconElement-icon:not(.oo-ui-checkboxInputWidget-checkIcon, .oo-ui-image-progressive, .oo-ui-icon-error), .oo-ui-indicatorElement-indicator {&lt;br /&gt;
        filter: invert() !important;&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.ext-darkmode-link::after {&lt;br /&gt;
    content: &#039;\263E&#039;;&lt;br /&gt;
    display: inline-block;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
span#skin-theme-beta-notice {&lt;br /&gt;
    display: none !important;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
#skin-client-prefs-skin-theme .cdx-radio:first-child {&lt;br /&gt;
    display: none;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* HEDDGEDOCS FONTS */&lt;br /&gt;
@import url(&#039;https://fonts.googleapis.com/css2?family=Roboto:ital,wdth,wght@0,75..100,100..900;1,75..100,100..900&amp;amp;display=swap&#039;);&lt;br /&gt;
@import url(&#039;https://fonts.googleapis.com/css2?family=Roboto+Mono:ital,wght@0,100..700;1,100..700&amp;amp;display=swap&#039;);&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
:root {&lt;br /&gt;
    --font-size-medium: var(--hedgedocs-font-size);&lt;br /&gt;
&lt;br /&gt;
    --hedgedocs-font-size: 16px;&lt;br /&gt;
    --hedgedocs-font-size-sidebars: 16px;&lt;br /&gt;
    --hedgedocs-font-size-sidebars-pin-button: 13px; &lt;br /&gt;
&lt;br /&gt;
    --hedgedocs-font: &#039;Roboto&#039;, -apple-system, BlinkMacSystemFont, Helvetica, Arial, sans-serif;&lt;br /&gt;
    --hedgedocs-code-font: &#039;Roboto Mono&#039;, SFMono-Regular, Consolas, Menlo, monospace;&lt;br /&gt;
}&lt;br /&gt;
body {&lt;br /&gt;
    -webkit-font-smoothing: antialiased;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
body, .mw-body, h1, h2, .mw-createacct-benefits-heading, .oo-ui-menuToolGroup-tools .oo-ui-tool-title, .vector-sticky-header-context-bar-primary, .mw-body-content .mw-number-text span {&lt;br /&gt;
    font-family: var(--hedgedocs-font) !important;&lt;br /&gt;
}&lt;br /&gt;
body .oo-ui-tool-name-preformatted .oo-ui-tool-link .oo-ui-tool-title, pre, code, tt, kbd, samp, .mw-code {&lt;br /&gt;
    font-family: var(--hedgedocs-code-font) !important;&lt;br /&gt;
}&lt;br /&gt;
h1 {&lt;br /&gt;
    font-weight: bold;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* HEDGEDOCS PAGE STYLING CSS */&lt;br /&gt;
&lt;br /&gt;
.mw-logo-wordmark {&lt;br /&gt;
    font-size: 17pt;&lt;br /&gt;
}&lt;br /&gt;
.mw-logo-icon {&lt;br /&gt;
    font-size: 7pt;&lt;br /&gt;
    padding-left: 1.5em;&lt;br /&gt;
}&lt;br /&gt;
.mw-logo {&lt;br /&gt;
    transition: opacity .25s;&lt;br /&gt;
}&lt;br /&gt;
.mw-logo:hover {&lt;br /&gt;
    opacity: 0.7;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
div.vector-pinnable-header-label, h2.vector-pinnable-header-label {&lt;br /&gt;
    background: var(--hedgedocs-header-color);&lt;br /&gt;
    color: var(--hedgedocs-header-fg-color);&lt;br /&gt;
    padding: 2px 10px 2px 10px;&lt;br /&gt;
    cursor: default;&lt;br /&gt;
    margin: 0em !important;&lt;br /&gt;
}&lt;br /&gt;
button.vector-pinnable-header-toggle-button {&lt;br /&gt;
    width: 100%;&lt;br /&gt;
    text-align: center;&lt;br /&gt;
    font-size: var(--hedgedocs-font-size-sidebars-pin-button);&lt;br /&gt;
    background-color: var(--hedgedocs-button-bg-color);&lt;br /&gt;
    padding: 2px 10px 2px 10px;&lt;br /&gt;
    transition: background-color 0.1s;&lt;br /&gt;
    margin-bottom: 0.5rem;&lt;br /&gt;
}&lt;br /&gt;
button.vector-pinnable-header-toggle-button:hover {&lt;br /&gt;
    background-color: var(--hedgedocs-button-bg-color-hover);&lt;br /&gt;
}&lt;br /&gt;
div.vector-pinnable-header {&lt;br /&gt;
    padding-bottom: 0;&lt;br /&gt;
    margin-bottom: 0;&lt;br /&gt;
    border-bottom: none;&lt;br /&gt;
    display: flex;&lt;br /&gt;
    flex-direction: column;&lt;br /&gt;
    justify-content: center;&lt;br /&gt;
}&lt;br /&gt;
div.vector-pinnable-element div.vector-menu-heading {&lt;br /&gt;
    color: var(--hedgedocs-fg-color-light);&lt;br /&gt;
    font-weight: bold;&lt;br /&gt;
    cursor: default;&lt;br /&gt;
    padding: 6px 0;&lt;br /&gt;
    border-bottom: none;&lt;br /&gt;
}&lt;br /&gt;
#vector-main-menu .vector-menu-content .mw-list-item:hover {&lt;br /&gt;
}&lt;br /&gt;
#vector-main-menu .vector-menu-content .mw-list-item a {&lt;br /&gt;
    font-weight: bold;&lt;br /&gt;
    text-decoration: none !important;&lt;br /&gt;
}&lt;br /&gt;
#vector-main-menu .vector-menu-content .mw-list-item a:hover {&lt;br /&gt;
    text-decoration: none !important;&lt;br /&gt;
}&lt;br /&gt;
#vector-main-menu .vector-menu-content .mw-list-item {&lt;br /&gt;
    margin-bottom: 0;&lt;br /&gt;
}&lt;br /&gt;
.mw-list-item a, .vector-toc-link {&lt;br /&gt;
    color: var(--hedgedocs-fg-color) !important;&lt;br /&gt;
    transition: color 125ms;&lt;br /&gt;
}&lt;br /&gt;
.mw-list-item a:hover, .vector-toc-link:hover {&lt;br /&gt;
    color: var(--hedgedocs-link-hover) !important;&lt;br /&gt;
    text-decoration: none;&lt;br /&gt;
}&lt;br /&gt;
.vector-toc .vector-toc-list-item-active &amp;gt; a.vector-toc-link, .vector-toc .vector-toc-level-1-active:not(.vector-toc-list-item-expanded) &amp;gt; a.vector-toc-link, .vector-toc .vector-toc-list-item-active.vector-toc-level-1-active &amp;gt; a.vector-toc-link {&lt;br /&gt;
    color: var(--hedgedocs-link-active-color) !important;&lt;br /&gt;
    font-weight: inherit;&lt;br /&gt;
}&lt;br /&gt;
.vector-pinnable-element, .vector-pinnable-header-label {&lt;br /&gt;
    font-size: var(--hedgedocs-font-size-sidebars) !important;&lt;br /&gt;
}&lt;br /&gt;
.vector-pinned-container {&lt;br /&gt;
    background-color: var(--hedgedocs-bg-color) !important;&lt;br /&gt;
}&lt;br /&gt;
.vector-sticky-pinned-container::after {&lt;br /&gt;
    background: linear-gradient(rgba(255, 255, 255, 0), var(--hedgedocs-bg-color)) !important;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
#toc-mw-content-text {&lt;br /&gt;
    display: none;&lt;br /&gt;
}&lt;br /&gt;
div.vector-toc-pinnable-header {&lt;br /&gt;
    margin-bottom: .25rem;&lt;br /&gt;
}&lt;br /&gt;
.vector-toc .vector-toc-toggle {&lt;br /&gt;
    top: 4px !important;&lt;br /&gt;
}&lt;br /&gt;
.vector-toc button.vector-pinnable-header-toggle-button {&lt;br /&gt;
    display: none !important;&lt;br /&gt;
}&lt;br /&gt;
.vector-toc .vector-toc-list-item-active &amp;gt; a.vector-toc-link span, .vector-toc .vector-toc-level-1-active:not(.vector-toc-list-item-expanded) &amp;gt; a.vector-toc-link span, .vector-toc .vector-toc-list-item-active.vector-toc-level-1-active &amp;gt; a.vector-toc-link span {&lt;br /&gt;
    border-left: .25em solid;&lt;br /&gt;
    padding-left: .5em;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.vector-page-titlebar .firstHeading {&lt;br /&gt;
    padding-bottom: 6px !important;&lt;br /&gt;
}&lt;br /&gt;
.firstHeading.mw-first-heading {&lt;br /&gt;
    font-size: 2.2rem;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.vector-menu-tabs .mw-list-item.vector-tab-noicon &amp;gt; a, #vector-page-tools-dropdown-label {&lt;br /&gt;
    padding: 9px 0 7px 0 !important;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.vector-header-container header.mw-header, .vector-header-container div.vector-sticky-header {&lt;br /&gt;
    background-color: transparent;&lt;br /&gt;
    max-width: 99.75rem;&lt;br /&gt;
}&lt;br /&gt;
.vector-sticky-header-context-bar .mw-page-title-main {&lt;br /&gt;
    font-weight: bold;&lt;br /&gt;
}&lt;br /&gt;
.vector-header-container {&lt;br /&gt;
    background-color: var(--hedgedocs-header-color);&lt;br /&gt;
    box-shadow: 0 0 2rem rgba(0, 0, 0, 0.3), 0 0.4rem 4rem rgba(0, 0, 0, 0.15);&lt;br /&gt;
    align-items: center;&lt;br /&gt;
    justify-content: center;&lt;br /&gt;
    min-height: 5rem;&lt;br /&gt;
    margin-bottom: 1rem;&lt;br /&gt;
}&lt;br /&gt;
.vector-header-container div.vector-sticky-header {&lt;br /&gt;
    color: var(--hedgedocs-header-fg-color);&lt;br /&gt;
    border: none;&lt;br /&gt;
}&lt;br /&gt;
.vector-header-container .vector-button-flush-left {&lt;br /&gt;
    margin-right: -24px;&lt;br /&gt;
}&lt;br /&gt;
.vector-header-container .vector-header-start .vector-button-flush-right {&lt;br /&gt;
    margin-right: -24px;&lt;br /&gt;
}&lt;br /&gt;
.vector-header-container .vector-header-end .vector-button-flush-right {&lt;br /&gt;
    margin-right: -6px;&lt;br /&gt;
}&lt;br /&gt;
.mw-header a:not(.vector-menu-content a, a.cdx-typeahead-search__search-footer), .mw-header a:visited:not(.vector-menu-content a), .user-links-collapsible-item a:not(.vector-dropdown-content .user-links-collapsible-item a) {&lt;br /&gt;
    color: var(--hedgedocs-header-fg-color) !important;&lt;br /&gt;
}&lt;br /&gt;
.mw-header a:not(.vector-menu-content a, a.cdx-typeahead-search__search-footer):hover, .mw-header a:visited:not(.vector-menu-content a):hover, .user-links-collapsible-item a:not(.vector-dropdown-content .user-links-collapsible-item a):hover {&lt;br /&gt;
    color: var(--hedgedocs-header-fg-color) !important;&lt;br /&gt;
}&lt;br /&gt;
.vector-dropdown div.vector-dropdown-content {&lt;br /&gt;
    background-color: var(--hedgedocs-bg-color);&lt;br /&gt;
}&lt;br /&gt;
.mw-header .vector-icon:not(.vector-dropdown-content .vector-icon ) {&lt;br /&gt;
    filter: invert();&lt;br /&gt;
}&lt;br /&gt;
.vector-user-menu-logged-in .vector-dropdown-label::after {&lt;br /&gt;
    background-color: var(--hedgedocs-header-fg-color) !important;&lt;br /&gt;
}&lt;br /&gt;
.vector-header-container .vector-icon:not(.vector-dropdown-content .vector-icon) {&lt;br /&gt;
    filter: invert() brightness(2);&lt;br /&gt;
}&lt;br /&gt;
.vector-header .cdx-button.cdx-button--icon-only {&lt;br /&gt;
    min-width: 32px !important;&lt;br /&gt;
}&lt;br /&gt;
@media screen and (max-width: calc(639px)) {&lt;br /&gt;
    .vector-header {&lt;br /&gt;
        flex-flow: row !important;&lt;br /&gt;
    }&lt;br /&gt;
    .mw-logo {&lt;br /&gt;
        min-width: 11em !important;&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
.cdx-menu-item__text .cdx-search-result-title {&lt;br /&gt;
    color: var(--hedgedocs-fg-color);&lt;br /&gt;
}&lt;br /&gt;
.cdx-menu {&lt;br /&gt;
    color: var(--hedgedocs-fg-color);&lt;br /&gt;
}&lt;br /&gt;
.vector-header-container.vector-sticky-header-container {&lt;br /&gt;
    min-height: 3.5rem;&lt;br /&gt;
    font-size: 11pt;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.mw-footer li {&lt;br /&gt;
    color: var(--hedgedocs-fg-color) !important;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
#searchInput, .cdx-text-input__input:enabled, .cdx-text-input__input {&lt;br /&gt;
    background-color: var(--hedgedocs-input-bg-color) !important;&lt;br /&gt;
    border-color: var(--hedgedocs-input-border-color) !important;&lt;br /&gt;
    color: var(--hedgedocs-input-fg-color) !important;&lt;br /&gt;
}&lt;br /&gt;
.oo-ui-checkboxInputWidget [type=&#039;checkbox&#039;] + span {&lt;br /&gt;
    background-color: var(--hedgedocs-input-bg-color);&lt;br /&gt;
    color: var(--hedgedocs-fg-color);&lt;br /&gt;
}&lt;br /&gt;
.oo-ui-textInputWidget input.oo-ui-inputWidget-input{&lt;br /&gt;
    background-color: var(--hedgedocs-input-bg-color);&lt;br /&gt;
}&lt;br /&gt;
.oo-ui-textInputWidget .oo-ui-inputWidget-input, .oo-ui-textInputWidget .oo-ui-inputWidget-input, .oo-ui-tagMultiselectWidget.oo-ui-widget-enabled {&lt;br /&gt;
    background-color: var(--hedgedocs-input-bg-color) !important;&lt;br /&gt;
    color: var(--hedgedocs-input-fg-color) !important;&lt;br /&gt;
}&lt;br /&gt;
.cdx-text-input__input:enabled~.cdx-text-input__icon-vue {&lt;br /&gt;
    color: var(--hedgedocs-input-fg-color) !important;&lt;br /&gt;
    opacity: 0.5 !important;&lt;br /&gt;
}&lt;br /&gt;
span.cdx-text-input__icon.cdx-text-input__start-icon {&lt;br /&gt;
    background-color: var(--hedgedocs-input-fg-color) !important;&lt;br /&gt;
    opacity: 0.5 !important;&lt;br /&gt;
}&lt;br /&gt;
textarea {&lt;br /&gt;
    background-color: var(--hedgedocs-bg-color);&lt;br /&gt;
}&lt;br /&gt;
button.cdx-button, button.cdx-button:enabled, .oo-ui-buttonElement-framed.oo-ui-widget-enabled &amp;gt; .oo-ui-buttonElement-button {&lt;br /&gt;
    background-color: var(--hedgedocs-button-bg-color);&lt;br /&gt;
    border: none;&lt;br /&gt;
    transition: background-color 0.1s;&lt;br /&gt;
}&lt;br /&gt;
button.cdx-button:hover, .oo-ui-buttonElement-framed.oo-ui-widget-enabled &amp;gt; .oo-ui-buttonElement-button:hover {&lt;br /&gt;
    background-color: var(--hedgedocs-button-bg-color-hover) !important;&lt;br /&gt;
}&lt;br /&gt;
.cdx-button.cdx-button--weight-primary.cdx-button--action-progressive, .oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive &amp;gt; .oo-ui-buttonElement-button, .oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive &amp;gt; .oo-ui-tool-link {&lt;br /&gt;
    background-color: var(--hedgedocs-button-accent-bg-color) !important;&lt;br /&gt;
    transition: background-color 0.1s;&lt;br /&gt;
}&lt;br /&gt;
.cdx-button.cdx-button--weight-primary.cdx-button--action-progressive:hover, .oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive &amp;gt; .oo-ui-buttonElement-button:hover, .oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive &amp;gt; .oo-ui-tool-link:hover {&lt;br /&gt;
    background-color: var(--hedgedocs-button-accent-bg-color-hover) !important;&lt;br /&gt;
}&lt;br /&gt;
.cdx-radio__icon {&lt;br /&gt;
    background-color: var(--hedgedocs-button-bg-color) !important;&lt;br /&gt;
}&lt;br /&gt;
.cdx-radio:hover .cdx-radio__icon {&lt;br /&gt;
    background-color: var(--hedgedocs-button-bg-color-hover) !important;&lt;br /&gt;
}&lt;br /&gt;
.cdx-radio__input:enabled:checked+.cdx-radio__icon {&lt;br /&gt;
    background-color: var(--hedgedocs-button-check-fg-color) !important;&lt;br /&gt;
    border-color: var(--hedgedocs-button-check-bg-color) !important;&lt;br /&gt;
}&lt;br /&gt;
.cdx-radio__input:enabled+.cdx-radio__icon {&lt;br /&gt;
    border-color: var(--hedgedocs-base-border-color) !important;&lt;br /&gt;
}&lt;br /&gt;
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type=&#039;checkbox&#039;]:checked + span, .oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type=&#039;checkbox&#039;]:indeterminate + span {&lt;br /&gt;
    background-color: var(--hedgedocs-button-check-bg-color) !important;&lt;br /&gt;
}&lt;br /&gt;
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-buttonElement-active &amp;gt; .oo-ui-buttonElement-button {&lt;br /&gt;
    background-color: var(--hedgedocs-button-accent-bg-color) !important;&lt;br /&gt;
    color: var(--hedgedocs-button-accent-fg-color) !important;&lt;br /&gt;
}&lt;br /&gt;
.tdg-templateDataParamWidget-param-alias:first-child {&lt;br /&gt;
    background-color: var(--hedgedocs-bg-color-secondary) !important;&lt;br /&gt;
    color: var(--hedgedocs-fg-color-light) !important;&lt;br /&gt;
    border-color: var(--hedgedocs-base-border-color);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
.oo-ui-toolbar-bar {&lt;br /&gt;
    background-color: var(--hedgedocs-bg-color-secondary) !important;&lt;br /&gt;
    color: var(--hedgedocs-fg-color) !important;&lt;br /&gt;
}&lt;br /&gt;
.oo-ui-menuToolGroup, .oo-ui-toolbar-position-top &amp;gt; .oo-ui-toolbar-bar {&lt;br /&gt;
    border-color: var(--hedgedocs-bg-color) !important;&lt;br /&gt;
}&lt;br /&gt;
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive &amp;gt; .oo-ui-tool-link {&lt;br /&gt;
    color: var(--hedgedocs-header-fg-color) !important;&lt;br /&gt;
    background-color: var(--hedgedocs-header-color) !important;&lt;br /&gt;
}&lt;br /&gt;
.editOptions {&lt;br /&gt;
    background-color: var(--hedgedocs-bg-color-secondary);&lt;br /&gt;
    color: var(--hedgedocs-fg-color);&lt;br /&gt;
}&lt;br /&gt;
.editCheckboxes {&lt;br /&gt;
    margin-bottom: .5rem;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.oo-ui-panelLayout-framed {&lt;br /&gt;
    border: none;&lt;br /&gt;
    background-color: var(--hedgedocs-frame-bg-color);&lt;br /&gt;
}&lt;br /&gt;
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-widget-enabled.oo-ui-optionWidget-selected {&lt;br /&gt;
    background-color: var(--hedgedocs-frame-bg-color) !important;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-widget-enabled.oo-ui-optionWidget-selected .oo-ui-labelElement-label, .oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget .oo-ui-labelElement-label {&lt;br /&gt;
    border: none !important;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.approved-revision {&lt;br /&gt;
    background-color: transparent !important;&lt;br /&gt;
    border: 3px solid;&lt;br /&gt;
    color: var(--hedgedocs-fg-color) !important;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
#mw-content-text {&lt;br /&gt;
    margin-top: 0 !important;&lt;br /&gt;
}&lt;br /&gt;
figure[typeof~=&#039;mw:File/Thumb&#039;] {&lt;br /&gt;
    background-color: transparent !important;&lt;br /&gt;
    border: none !important;&lt;br /&gt;
    margin-bottom: 0.5em !important;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
figure[typeof~=&#039;mw:File/Thumb&#039;].mw-halign-left {&lt;br /&gt;
    margin-bottom: 0.5em !important;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
figure[typeof~=&#039;mw:File/Thumb&#039;] &amp;gt; .mw-file-description &amp;gt; img {&lt;br /&gt;
    background-color: transparent !important;&lt;br /&gt;
    border: none !important;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
figure[typeof~=&#039;mw:File/Thumb&#039;] &amp;gt; .mw-file-description::after {&lt;br /&gt;
    display: none !important;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
figure[typeof~=&#039;mw:File/Thumb&#039;] &amp;gt; figcaption {&lt;br /&gt;
    background-color: transparent !important;&lt;br /&gt;
    border: none !important;&lt;br /&gt;
    padding: 5px !important;&lt;br /&gt;
}&lt;br /&gt;
.mw-body-content a {&lt;br /&gt;
    color: var(--hedgedocs-link-color);&lt;br /&gt;
}&lt;br /&gt;
.mw-body-content a:visited, .mw-body-content a:visited:hover{&lt;br /&gt;
    color: var(--hedgedocs-link-color);&lt;br /&gt;
}&lt;br /&gt;
.mw-body-content a.new {&lt;br /&gt;
    color: var(--hedgedocs-new-link-color);&lt;br /&gt;
}&lt;br /&gt;
.mw-body-content a.new:visited, .mw-body-content a.new:visited:hover{&lt;br /&gt;
    color: var(--hedgedocs-new-link-color);&lt;br /&gt;
}&lt;br /&gt;
.wikitable &amp;gt; tr &amp;gt; th, .wikitable &amp;gt; * &amp;gt; tr &amp;gt; th {&lt;br /&gt;
    background-color: var(--hedgedocs-table-header-bg-color) !important;&lt;br /&gt;
    color: var(--hedgedocs-table-header-fg-color) !important;&lt;br /&gt;
}&lt;br /&gt;
.wikitable &amp;gt; tr &amp;gt; th, .wikitable &amp;gt; tr &amp;gt; td, .wikitable &amp;gt; * &amp;gt; tr &amp;gt; th, .wikitable &amp;gt; * &amp;gt; tr &amp;gt; td {&lt;br /&gt;
    background-color: var(--hedgedocs-table-data-bg-color);&lt;br /&gt;
    color: var(--hedgedocs-fg-color);&lt;br /&gt;
}&lt;br /&gt;
.wikitable &amp;gt; tr &amp;gt; th, .wikitable &amp;gt; tr &amp;gt; td, .wikitable &amp;gt; * &amp;gt; tr &amp;gt; th, .wikitable &amp;gt; * &amp;gt; tr &amp;gt; td {&lt;br /&gt;
    border: 1px solid var(--hedgedocs-table-border-color) !important;&lt;br /&gt;
    padding: 5px 9px;&lt;br /&gt;
}&lt;br /&gt;
code, pre {&lt;br /&gt;
    background-color: var(--hedgedocs-frame-bg-color);&lt;br /&gt;
    border-color: var(--hedgedocs-base-border-color);&lt;br /&gt;
    color: var(--hedgedocs-fg-color-light);&lt;br /&gt;
    scrollbar-color: var(--hedgedocs-scrollbar-color) transparent;&lt;br /&gt;
}&lt;br /&gt;
pre {&lt;br /&gt;
    overflow: auto;&lt;br /&gt;
    white-space: pre;&lt;br /&gt;
}&lt;br /&gt;
figure.embedvideo, figure.embedvideo video {&lt;br /&gt;
    height: auto !important;&lt;br /&gt;
    width: 640px !important;&lt;br /&gt;
}&lt;br /&gt;
figure.embedvideo[data-service=&amp;quot;local-embed&amp;quot;] span.embedvideo-wrapper {&lt;br /&gt;
    height: auto !important;&lt;br /&gt;
    width: 640px !important;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* HEDGEDOCS CUSTOM ELEMENTS */&lt;br /&gt;
&lt;br /&gt;
.hedgedocs-card {&lt;br /&gt;
    display: grid;&lt;br /&gt;
    background-color: var(--hedgedocs-frame-bg-color);&lt;br /&gt;
    padding: 5px 20px 25px 20px;&lt;br /&gt;
    margin-bottom: 1rem;&lt;br /&gt;
    border-radius: 2px;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.hedgedocs-card-header p {&lt;br /&gt;
    margin: .5rem 0 0 0 !important;&lt;br /&gt;
    font-weight: bolder;&lt;br /&gt;
    font-size: 25px;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.hedgedocs-card-header {&lt;br /&gt;
    grid-column-start: 1;&lt;br /&gt;
    grid-column-end: 2;&lt;br /&gt;
    grid-row-start: 1;&lt;br /&gt;
    grid-row-end: 2;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.hedgedocs-card-description {&lt;br /&gt;
    grid-column-start: 1;&lt;br /&gt;
    grid-column-end: 2;&lt;br /&gt;
    grid-row-start: 2;&lt;br /&gt;
    grid-row-end: 3;&lt;br /&gt;
    text-align: justify;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.hedgedocs-card-button {&lt;br /&gt;
    grid-column-start: 2;&lt;br /&gt;
    grid-column-end: 3;&lt;br /&gt;
    grid-row-start: 3;&lt;br /&gt;
    grid-row-end: 4;&lt;br /&gt;
    text-align: right;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.hedgedocs-card-button a {&lt;br /&gt;
    background-color: var(--hedgedocs-button-accent-bg-color);&lt;br /&gt;
    color: var(--hedgedocs-button-accent-fg-color) !important;&lt;br /&gt;
    padding: 10px 30px !important;&lt;br /&gt;
    background-image: none !important;&lt;br /&gt;
    transition: background-color 0.1s;&lt;br /&gt;
    border-radius: 2px;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.hedgedocs-card-button a:hover {&lt;br /&gt;
    background-color: var(--hedgedocs-button-accent-bg-color-hover);&lt;br /&gt;
    text-decoration: none !important;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.hedgedocs-card-button p {&lt;br /&gt;
    margin: 0 !important;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.hedgedocs-home-links {&lt;br /&gt;
    display: flex;&lt;br /&gt;
    flex-direction: column;&lt;br /&gt;
    justify-content: center;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.hedgedocs-home-links a {&lt;br /&gt;
    display: inline-block;&lt;br /&gt;
    background-color: var(--hedgedocs-button-accent-bg-color);&lt;br /&gt;
    color: var(--hedgedocs-button-accent-fg-color) !important;&lt;br /&gt;
    padding: 10px 0px 10px 0px !important;&lt;br /&gt;
    text-align: center;&lt;br /&gt;
    margin-bottom: 10px;&lt;br /&gt;
    background-image: none !important;&lt;br /&gt;
    transition: background-color 0.1s;&lt;br /&gt;
    width: 100%;&lt;br /&gt;
    margin-left: 0;&lt;br /&gt;
    margin-right: 0;&lt;br /&gt;
    border-radius: 2px;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.hedgedocs-home-links a:hover {&lt;br /&gt;
    background-color: var(--hedgedocs-button-accent-bg-color-hover);&lt;br /&gt;
    text-decoration: none !important;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.hedgedocs-home-links p {&lt;br /&gt;
    margin: 0 0 1.5em 0 !important;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.hedgedocs-home-links a {&lt;br /&gt;
    margin-left: 0;&lt;br /&gt;
    margin-right: 0;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.hedgedocs-homepage-scripts {&lt;br /&gt;
    display: none;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
:root {&lt;br /&gt;
    --imagePreview-finalScale: 1.75;&lt;br /&gt;
    --imagePreview-finalScale-bounce: 1.765;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.imagePreview-background {&lt;br /&gt;
    background: #000000;&lt;br /&gt;
    visibility: visible;&lt;br /&gt;
    display: inherit;&lt;br /&gt;
    opacity: 85%;&lt;br /&gt;
    position: fixed;&lt;br /&gt;
    left: 0;&lt;br /&gt;
    top: 0;&lt;br /&gt;
    width: 100%;&lt;br /&gt;
    height: 100%;&lt;br /&gt;
    z-index: 9;&lt;br /&gt;
    transition: opacity 2s;&lt;br /&gt;
    animation: fadein 0.25s;&lt;br /&gt;
    cursor: default;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.imagePreview {&lt;br /&gt;
    text-align: center;&lt;br /&gt;
    opacity: 0;&lt;br /&gt;
    justify-content: center;&lt;br /&gt;
    display: none;&lt;br /&gt;
    z-index: 9;&lt;br /&gt;
    position: fixed;&lt;br /&gt;
    transition: opacity 0.25s;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.imagePreview-image {&lt;br /&gt;
    flex-direction: column;&lt;br /&gt;
    align-items: center;&lt;br /&gt;
    display: none;&lt;br /&gt;
    z-index: 9;&lt;br /&gt;
    position: fixed;&lt;br /&gt;
    margin: auto;&lt;br /&gt;
    top: 50%;&lt;br /&gt;
    left: 50%;&lt;br /&gt;
    transform: translate(-50%, -50%) scale(0);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.imagePreview-image-element {&lt;br /&gt;
    display: block;&lt;br /&gt;
    cursor: default !important;&lt;br /&gt;
    object-fit: contain;&lt;br /&gt;
    max-width: 20vw;&lt;br /&gt;
    max-height: 15vw;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
@media screen and (max-width: 76.25em) {&lt;br /&gt;
    .imagePreview-image-element {&lt;br /&gt;
        max-width: 50vw;&lt;br /&gt;
        max-height: 45vw;&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.imagePreview-image-caption {&lt;br /&gt;
    display: block;&lt;br /&gt;
    width: -moz-fit-content;&lt;br /&gt;
    width: 100%;&lt;br /&gt;
    color: #888888 !important;&lt;br /&gt;
    margin-top: .5rem;&lt;br /&gt;
    font-size: 10px;&lt;br /&gt;
    line-height: 12px;&lt;br /&gt;
    text-align: left;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.imagePreview-image-caption:hover {&lt;br /&gt;
    color: #CCCCCC !important;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.scaleup {&lt;br /&gt;
    animation: scaleup 0.25s forwards;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.scaledown {&lt;br /&gt;
    animation: scaledown 0.3s forwards;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
@keyframes scaleup {&lt;br /&gt;
    0% {&lt;br /&gt;
        opacity: 0%;&lt;br /&gt;
        transform: translate(-50%, -50%) scale(0);&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    100% {&lt;br /&gt;
        opacity: 100%;&lt;br /&gt;
        transform: translate(-50%, -50%) scale(var(--imagePreview-finalScale));&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
@keyframes scaledown {&lt;br /&gt;
    0% {&lt;br /&gt;
        opacity: 100%;&lt;br /&gt;
        transform: translate(-50%, -50%) scale(var(--imagePreview-finalScale));&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    80% {&lt;br /&gt;
        opacity: 0%;&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    100% {&lt;br /&gt;
        opacity: 0%;&lt;br /&gt;
        transform: translate(-50%, -50%) scale(0);&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.hedgedocs-infobox {&lt;br /&gt;
    display: flex;&lt;br /&gt;
    flex-direction: column;&lt;br /&gt;
    justify-content: center;&lt;br /&gt;
    border: 1px solid var(--hedgedocs-base-border-color);&lt;br /&gt;
    background-color: var(--hedgedocs-frame-bg-color);&lt;br /&gt;
    padding: 7px 13px 10px 13px;&lt;br /&gt;
    margin-bottom: 1em;&lt;br /&gt;
    font-size: 88%;&lt;br /&gt;
    float: right;&lt;br /&gt;
    clear: right;&lt;br /&gt;
    width: 17rem;&lt;br /&gt;
    margin-left: 1rem;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.hedgedocs-infobox tr {&lt;br /&gt;
    display: flex;&lt;br /&gt;
    align-items: center;&lt;br /&gt;
    justify-content: center;&lt;br /&gt;
    text-align: center;&lt;br /&gt;
    width: 100%;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.hedgedocs-infobox tbody {&lt;br /&gt;
    display: block;&lt;br /&gt;
    width: 100%;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
@media screen and (max-width: 76.25em) {&lt;br /&gt;
    .hedgedocs-infobox {&lt;br /&gt;
        float: none;&lt;br /&gt;
        clear: none;&lt;br /&gt;
        margin: auto;&lt;br /&gt;
        width: 20rem;&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.hedgedocs-infobox-title {&lt;br /&gt;
    font-size: 1.2em;&lt;br /&gt;
    font-weight: bold;&lt;br /&gt;
    text-align: center;&lt;br /&gt;
    padding-bottom: 0.2rem;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.hedgedocs-infobox-image {&lt;br /&gt;
    text-align: center;&lt;br /&gt;
    padding-bottom: 0.75rem;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.hedgedocs-infobox-image img {&lt;br /&gt;
    max-width: 100%;&lt;br /&gt;
    height: auto;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.hedgedocs-infobox-label {&lt;br /&gt;
    font-weight: bold;&lt;br /&gt;
    width: 50%;&lt;br /&gt;
    vertical-align: top;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.hedgedocs-infobox-data {&lt;br /&gt;
    width: 50%;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.hedgedocs-infobox-website,&lt;br /&gt;
.hedgedocs-infobox-download {&lt;br /&gt;
    padding-top: 0.25rem;&lt;br /&gt;
    width: 100%;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.hedgedocs-infobox .hedgedocs-infobox-links a {&lt;br /&gt;
    display: block;&lt;br /&gt;
    padding: .5em !important;&lt;br /&gt;
    background-color: var(--hedgedocs-button-accent-bg-color);&lt;br /&gt;
    color: var(--hedgedocs-button-accent-fg-color) !important;&lt;br /&gt;
    text-decoration: none;&lt;br /&gt;
    background-image: none !important;&lt;br /&gt;
    width: auto;&lt;br /&gt;
    transition: background-color 125ms;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.hedgedocs-infobox a:hover {&lt;br /&gt;
    background-color: var(--hedgedocs-button-accent-bg-color-hover);&lt;br /&gt;
    color: var(--hedgedocs-button-accent-fg-color);&lt;br /&gt;
    text-decoration: none;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.hedgedocs-notice {&lt;br /&gt;
    border: 1px solid;&lt;br /&gt;
    border-radius: 2px;&lt;br /&gt;
    color: var(--hedgedocs-fg-color);&lt;br /&gt;
    box-shadow: 0 0.2rem 0.5rem rgba(0, 0, 0, 0.051), 0 0 0.05rem rgba(0, 0, 0, 0.102);&lt;br /&gt;
    margin: 1.5rem 0;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.hedgedocs-notice-note {&lt;br /&gt;
    border-color: var(--hedgedocs-notice-note-border-color);&lt;br /&gt;
&lt;br /&gt;
    .hedgedocs-notice-header {&lt;br /&gt;
        background-color: var(--hedgedocs-notice-note-header-color);&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
.hedgedocs-notice-info {&lt;br /&gt;
    border-color: var(--hedgedocs-notice-info-border-color);&lt;br /&gt;
&lt;br /&gt;
    .hedgedocs-notice-header {&lt;br /&gt;
        background-color: var(--hedgedocs-notice-info-header-color);&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
.hedgedocs-notice-warn {&lt;br /&gt;
    border-color: var(--hedgedocs-notice-warn-border-color);&lt;br /&gt;
&lt;br /&gt;
    .hedgedocs-notice-header {&lt;br /&gt;
        background-color: var(--hedgedocs-notice-warn-header-color);&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
.hedgedocs-notice-example {&lt;br /&gt;
    border-color: var(--hedgedocs-notice-example-border-color);&lt;br /&gt;
&lt;br /&gt;
    .hedgedocs-notice-header {&lt;br /&gt;
        background-color: var(--hedgedocs-notice-example-header-color);&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.hedgedocs-notice .hedgedocs-notice-header {&lt;br /&gt;
    font-weight: bold;&lt;br /&gt;
    color: var(--hedgedocs-fg-color);&lt;br /&gt;
    padding: 7px 15px;&lt;br /&gt;
}&lt;br /&gt;
.hedgedocs-notice-content {&lt;br /&gt;
    padding: 15px;&lt;br /&gt;
    background-color: var(--hedgedocs-frame-bg-color);&lt;br /&gt;
    white-space: pre-wrap;&lt;br /&gt;
}&lt;br /&gt;
.hedgedocs-notice-content ul {&lt;br /&gt;
    margin-top: 0 !important;&lt;br /&gt;
    white-space: normal;&lt;br /&gt;
}&lt;br /&gt;
.hedgedocs-notice-content p {&lt;br /&gt;
    display: inline-block;&lt;br /&gt;
    padding: 0;&lt;br /&gt;
    margin: 0 !important;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.vector-main-menu-action-opt-out {&lt;br /&gt;
    display: none;&lt;br /&gt;
}&lt;br /&gt;
.vector-settings {&lt;br /&gt;
    display: none;&lt;br /&gt;
}&lt;br /&gt;
li#ca-talk, li#ca-nstab-main {&lt;br /&gt;
    display: none;&lt;br /&gt;
}&lt;br /&gt;
div.vector-page-toolbar-container {&lt;br /&gt;
    box-shadow: none;&lt;br /&gt;
    background-color: var(--hedgedocs-bg-color-secondary);&lt;br /&gt;
    padding: 0 10px;&lt;br /&gt;
}&lt;br /&gt;
.vector-page-titlebar::after {&lt;br /&gt;
    display: none !important;&lt;br /&gt;
}&lt;br /&gt;
.mw-portlet-skin-client-prefs-vector-feature-custom-font-size {&lt;br /&gt;
    display: none;&lt;br /&gt;
}&lt;br /&gt;
.mw-editsection { display:none; }&lt;br /&gt;
li#footer-places-disclaimers {&lt;br /&gt;
    display: none;&lt;br /&gt;
}&lt;/div&gt;</summary>
		<author><name>PTKay</name></author>
	</entry>
	<entry>
		<id>https://hedgedocs.com/index.php?title=MediaWiki:Common.js&amp;diff=715</id>
		<title>MediaWiki:Common.js</title>
		<link rel="alternate" type="text/html" href="https://hedgedocs.com/index.php?title=MediaWiki:Common.js&amp;diff=715"/>
		<updated>2025-07-11T23:32:16Z</updated>

		<summary type="html">&lt;p&gt;PTKay: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;// Create image preview block&lt;br /&gt;
const imagePreviewElem = document.createElement(&#039;div&#039;)&lt;br /&gt;
imagePreviewElem.innerHTML = &#039;&amp;lt;div class=&amp;quot;imagePreview&amp;quot;&amp;gt; &amp;lt;div class=&amp;quot;imagePreview-background&amp;quot;&amp;gt;&amp;lt;/div&amp;gt; &amp;lt;div class=&amp;quot;imagePreview-image&amp;quot;&amp;gt; &amp;lt;img class=&amp;quot;imagePreview-image-element&amp;quot; style=&amp;quot;cursor: pointer&amp;quot;&amp;gt; &amp;lt;a target=&amp;quot;_blank&amp;quot; class=&amp;quot;imagePreview-image-caption&amp;quot;&amp;gt;Open image page&amp;lt;/a&amp;gt; &amp;lt;/div&amp;gt; &amp;lt;/div&amp;gt;&#039;&lt;br /&gt;
&lt;br /&gt;
const bodyElem = document.querySelector(&#039;body&#039;)&lt;br /&gt;
bodyElem.insertBefore(imagePreviewElem.firstChild, bodyElem.firstChild)&lt;br /&gt;
&lt;br /&gt;
initChanges()&lt;br /&gt;
window.navigation.addEventListener(&amp;quot;navigate&amp;quot;, (event) =&amp;gt; {&lt;br /&gt;
    initChanges()&lt;br /&gt;
})&lt;br /&gt;
&lt;br /&gt;
function initChanges() {&lt;br /&gt;
    makeImagesClickable()&lt;br /&gt;
    //headerStyling()&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
function makeImagesClickable() {&lt;br /&gt;
    const background = document.querySelector(&#039;.imagePreview-background&#039;)&lt;br /&gt;
    background.addEventListener(&#039;click&#039;, hideImagePreview)&lt;br /&gt;
    &lt;br /&gt;
    const images = document.querySelectorAll(&amp;quot;figure[typeof~=&#039;mw:File/Thumb&#039;] a, figure[typeof~=&#039;mw:File&#039;] a, figure[typeof~=&#039;mw:File/Frame&#039;] a, .hedgedocs-infobox-image a, .gallery .gallerybox .thumb a&amp;quot;)&lt;br /&gt;
    &lt;br /&gt;
    for(let i = 0; i &amp;lt; images.length; i++) {&lt;br /&gt;
        const imageClickable = images[i]&lt;br /&gt;
        const image = imageClickable.querySelector(&#039;img&#039;)&lt;br /&gt;
        &lt;br /&gt;
        let originalLocation = imageClickable.getAttribute(&#039;data-image-page&#039;)&lt;br /&gt;
        if (!originalLocation) {&lt;br /&gt;
            originalLocation = imageClickable.href&lt;br /&gt;
            imageClickable.removeAttribute(&#039;href&#039;)&lt;br /&gt;
            imageClickable.setAttribute(&#039;data-image-page&#039;, originalLocation)&lt;br /&gt;
        }&lt;br /&gt;
&lt;br /&gt;
        imageClickable.setAttribute(&#039;style&#039;, &#039;cursor: pointer&#039;)&lt;br /&gt;
        imageClickable.addEventListener(&#039;click&#039;, () =&amp;gt; imageClicked(originalLocation, image))&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
function hideImagePreview(event) {&lt;br /&gt;
    const imageDiv = document.querySelector(&#039;.imagePreview-image&#039;)&lt;br /&gt;
    imageDiv.classList.add(&#039;scaledown&#039;)&lt;br /&gt;
    imageDiv.classList.remove(&#039;scaleup&#039;)&lt;br /&gt;
&lt;br /&gt;
    const background = document.querySelector(&#039;.imagePreview&#039;)&lt;br /&gt;
    background.style.opacity = &#039;0%&#039;&lt;br /&gt;
    setTimeout(() =&amp;gt; {&lt;br /&gt;
        background.style.display = &#039;none&#039;&lt;br /&gt;
        const imageElem = document.querySelector(&#039;.imagePreview-image-element&#039;)&lt;br /&gt;
        imageElem.src = &#039;&#039;&lt;br /&gt;
    }, 250)&lt;br /&gt;
    makeImagesClickable()&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
function imageClicked(originalLocation, image) {&lt;br /&gt;
    const background = document.querySelector(&#039;.imagePreview&#039;)&lt;br /&gt;
    background.style.display = &#039;inherit&#039;&lt;br /&gt;
    setTimeout(() =&amp;gt; {&lt;br /&gt;
        background.style.opacity = &#039;100%&#039;&lt;br /&gt;
&lt;br /&gt;
        const imageDiv = document.querySelector(&#039;.imagePreview-image&#039;)&lt;br /&gt;
        imageDiv.style.display = &#039;flex&#039;&lt;br /&gt;
        imageDiv.classList.add(&#039;scaleup&#039;)&lt;br /&gt;
        imageDiv.classList.remove(&#039;scaledown&#039;)&lt;br /&gt;
        const imageElem = document.querySelector(&#039;.imagePreview-image-element&#039;)&lt;br /&gt;
&lt;br /&gt;
        // Get non-thumbnail version&lt;br /&gt;
        let originalImageSource = image.src&lt;br /&gt;
        if (originalImageSource.includes(&#039;thumb/&#039;)) {&lt;br /&gt;
            originalImageSource = image.src.replace(&#039;thumb/&#039;, &#039;&#039;)&lt;br /&gt;
            originalImageSource = originalImageSource.substring(0, originalImageSource.lastIndexOf(&#039;/&#039;))&lt;br /&gt;
        }&lt;br /&gt;
&lt;br /&gt;
        imageElem.src = originalImageSource&lt;br /&gt;
        imageElem.alt = image.alt&lt;br /&gt;
&lt;br /&gt;
        const imageCaption = document.querySelector(&#039;.imagePreview-image-caption&#039;)&lt;br /&gt;
        imageCaption.href = originalLocation&lt;br /&gt;
    }, 20)&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
function headerStyling() {&lt;br /&gt;
    const header = document.querySelector(&#039;body &amp;gt; div:nth-child(3) &amp;gt; header &amp;gt; div.vector-header-start &amp;gt; a &amp;gt; span&#039;)&lt;br /&gt;
&lt;br /&gt;
    if (header &amp;amp;&amp;amp; header.children.length == 1) {&lt;br /&gt;
        const div = document.createElement(&#039;span&#039;)&lt;br /&gt;
        div.classList.add(&#039;logo-text&#039;)&lt;br /&gt;
        div.innerHTML = &#039;&amp;lt;span class=&amp;quot;md-ellipsis&amp;quot; style=&amp;quot;font-weight: 900;&amp;quot;&amp;gt;Hedge&amp;lt;/span&amp;gt;&amp;lt;span class=&amp;quot;md-ellipsis&amp;quot; style=&amp;quot;font-weight: 100;&amp;quot;&amp;gt;Docs&amp;lt;/span&amp;gt;&#039;&lt;br /&gt;
&lt;br /&gt;
        header.replaceChildren(div)&lt;br /&gt;
    }&lt;br /&gt;
}&lt;/div&gt;</summary>
		<author><name>PTKay</name></author>
	</entry>
	<entry>
		<id>https://hedgedocs.com/index.php?title=MediaWiki:Common.js&amp;diff=714</id>
		<title>MediaWiki:Common.js</title>
		<link rel="alternate" type="text/html" href="https://hedgedocs.com/index.php?title=MediaWiki:Common.js&amp;diff=714"/>
		<updated>2025-07-11T23:28:39Z</updated>

		<summary type="html">&lt;p&gt;PTKay: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;// Create image preview block&lt;br /&gt;
const imagePreviewElem = document.createElement(&#039;div&#039;)&lt;br /&gt;
imagePreviewElem.innerHTML = &#039;&amp;lt;div class=&amp;quot;imagePreview&amp;quot;&amp;gt; &amp;lt;div class=&amp;quot;imagePreview-background&amp;quot;&amp;gt;&amp;lt;/div&amp;gt; &amp;lt;div class=&amp;quot;imagePreview-image&amp;quot;&amp;gt; &amp;lt;img class=&amp;quot;imagePreview-image-element&amp;quot; style=&amp;quot;cursor: pointer&amp;quot;&amp;gt; &amp;lt;a target=&amp;quot;_blank&amp;quot; class=&amp;quot;imagePreview-image-caption&amp;quot;&amp;gt;Open image page&amp;lt;/a&amp;gt; &amp;lt;/div&amp;gt; &amp;lt;/div&amp;gt;&#039;&lt;br /&gt;
&lt;br /&gt;
const bodyElem = document.querySelector(&#039;body&#039;)&lt;br /&gt;
bodyElem.insertBefore(imagePreviewElem.firstChild, bodyElem.firstChild)&lt;br /&gt;
&lt;br /&gt;
initChanges()&lt;br /&gt;
window.navigation.addEventListener(&amp;quot;navigate&amp;quot;, (event) =&amp;gt; {&lt;br /&gt;
    initChanges()&lt;br /&gt;
})&lt;br /&gt;
&lt;br /&gt;
function initChanges() {&lt;br /&gt;
    makeImagesClickable()&lt;br /&gt;
    //headerStyling()&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
function makeImagesClickable() {&lt;br /&gt;
    const background = document.querySelector(&#039;.imagePreview-background&#039;)&lt;br /&gt;
    background.addEventListener(&#039;click&#039;, hideImagePreview)&lt;br /&gt;
    &lt;br /&gt;
    const images = document.querySelectorAll(&amp;quot;figure[typeof~=&#039;mw:File/Thumb&#039;] a, figure[typeof~=&#039;mw:File&#039;] a, .hedgedocs-infobox-image a, .gallery .gallerybox .thumb a&amp;quot;)&lt;br /&gt;
    &lt;br /&gt;
    for(let i = 0; i &amp;lt; images.length; i++) {&lt;br /&gt;
        const imageClickable = images[i]&lt;br /&gt;
        const image = imageClickable.querySelector(&#039;img&#039;)&lt;br /&gt;
        &lt;br /&gt;
        let originalLocation = imageClickable.getAttribute(&#039;data-image-page&#039;)&lt;br /&gt;
        if (!originalLocation) {&lt;br /&gt;
            originalLocation = imageClickable.href&lt;br /&gt;
            imageClickable.removeAttribute(&#039;href&#039;)&lt;br /&gt;
            imageClickable.setAttribute(&#039;data-image-page&#039;, originalLocation)&lt;br /&gt;
        }&lt;br /&gt;
&lt;br /&gt;
        imageClickable.setAttribute(&#039;style&#039;, &#039;cursor: pointer&#039;)&lt;br /&gt;
        imageClickable.addEventListener(&#039;click&#039;, () =&amp;gt; imageClicked(originalLocation, image))&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
function hideImagePreview(event) {&lt;br /&gt;
    const imageDiv = document.querySelector(&#039;.imagePreview-image&#039;)&lt;br /&gt;
    imageDiv.classList.add(&#039;scaledown&#039;)&lt;br /&gt;
    imageDiv.classList.remove(&#039;scaleup&#039;)&lt;br /&gt;
&lt;br /&gt;
    const background = document.querySelector(&#039;.imagePreview&#039;)&lt;br /&gt;
    background.style.opacity = &#039;0%&#039;&lt;br /&gt;
    setTimeout(() =&amp;gt; {&lt;br /&gt;
        background.style.display = &#039;none&#039;&lt;br /&gt;
        const imageElem = document.querySelector(&#039;.imagePreview-image-element&#039;)&lt;br /&gt;
        imageElem.src = &#039;&#039;&lt;br /&gt;
    }, 250)&lt;br /&gt;
    makeImagesClickable()&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
function imageClicked(originalLocation, image) {&lt;br /&gt;
    const background = document.querySelector(&#039;.imagePreview&#039;)&lt;br /&gt;
    background.style.display = &#039;inherit&#039;&lt;br /&gt;
    setTimeout(() =&amp;gt; {&lt;br /&gt;
        background.style.opacity = &#039;100%&#039;&lt;br /&gt;
&lt;br /&gt;
        const imageDiv = document.querySelector(&#039;.imagePreview-image&#039;)&lt;br /&gt;
        imageDiv.style.display = &#039;flex&#039;&lt;br /&gt;
        imageDiv.classList.add(&#039;scaleup&#039;)&lt;br /&gt;
        imageDiv.classList.remove(&#039;scaledown&#039;)&lt;br /&gt;
        const imageElem = document.querySelector(&#039;.imagePreview-image-element&#039;)&lt;br /&gt;
&lt;br /&gt;
        // Get non-thumbnail version&lt;br /&gt;
        let originalImageSource = image.src&lt;br /&gt;
        if (originalImageSource.includes(&#039;thumb/&#039;)) {&lt;br /&gt;
            originalImageSource = image.src.replace(&#039;thumb/&#039;, &#039;&#039;)&lt;br /&gt;
            originalImageSource = originalImageSource.substring(0, originalImageSource.lastIndexOf(&#039;/&#039;))&lt;br /&gt;
        }&lt;br /&gt;
&lt;br /&gt;
        imageElem.src = originalImageSource&lt;br /&gt;
        imageElem.alt = image.alt&lt;br /&gt;
&lt;br /&gt;
        const imageCaption = document.querySelector(&#039;.imagePreview-image-caption&#039;)&lt;br /&gt;
        imageCaption.href = originalLocation&lt;br /&gt;
    }, 20)&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
function headerStyling() {&lt;br /&gt;
    const header = document.querySelector(&#039;body &amp;gt; div:nth-child(3) &amp;gt; header &amp;gt; div.vector-header-start &amp;gt; a &amp;gt; span&#039;)&lt;br /&gt;
&lt;br /&gt;
    if (header &amp;amp;&amp;amp; header.children.length == 1) {&lt;br /&gt;
        const div = document.createElement(&#039;span&#039;)&lt;br /&gt;
        div.classList.add(&#039;logo-text&#039;)&lt;br /&gt;
        div.innerHTML = &#039;&amp;lt;span class=&amp;quot;md-ellipsis&amp;quot; style=&amp;quot;font-weight: 900;&amp;quot;&amp;gt;Hedge&amp;lt;/span&amp;gt;&amp;lt;span class=&amp;quot;md-ellipsis&amp;quot; style=&amp;quot;font-weight: 100;&amp;quot;&amp;gt;Docs&amp;lt;/span&amp;gt;&#039;&lt;br /&gt;
&lt;br /&gt;
        header.replaceChildren(div)&lt;br /&gt;
    }&lt;br /&gt;
}&lt;/div&gt;</summary>
		<author><name>PTKay</name></author>
	</entry>
	<entry>
		<id>https://hedgedocs.com/index.php?title=Unleashed-Generations_Havok_Collision_Attributes&amp;diff=509</id>
		<title>Unleashed-Generations Havok Collision Attributes</title>
		<link rel="alternate" type="text/html" href="https://hedgedocs.com/index.php?title=Unleashed-Generations_Havok_Collision_Attributes&amp;diff=509"/>
		<updated>2025-04-20T11:19:48Z</updated>

		<summary type="html">&lt;p&gt;PTKay: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Sonic Unleashed and Sonic Generations have several collision tags that they use to determine the type of terrain, its properties, and what can collide with what else. These attributes can be applied to &amp;lt;code&amp;gt;.hkx&amp;lt;/code&amp;gt; files with [[Havok Converter]]. To learn how to apply these tags to collision meshes, check out [[Adding Collision Tags with Havok Converter]].&lt;br /&gt;
&lt;br /&gt;
== Material Type ==&lt;br /&gt;
&lt;br /&gt;
=== swa_attribute (1260399450) ===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Index&lt;br /&gt;
!Type&lt;br /&gt;
!Notes&lt;br /&gt;
|-&lt;br /&gt;
|0&lt;br /&gt;
|Unknown&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|Normal&lt;br /&gt;
|This plays Concrete footstep sounds&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|DeepWater&lt;br /&gt;
|Requires Convex Hull meshes in Generations&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|Rock&lt;br /&gt;
|This also plays Concrete footstep sounds&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
|Dirt&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|5&lt;br /&gt;
|Wood&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|6&lt;br /&gt;
|Grass&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|7&lt;br /&gt;
|Snow&lt;br /&gt;
|This requires an extra file to be added in Generations, add a file called&lt;br /&gt;
&amp;lt;code&amp;gt;ef_ch_sns_yh1_smoke_snow.dds&amp;lt;/code&amp;gt; to prevent it from crashing the game&lt;br /&gt;
|-&lt;br /&gt;
|8&lt;br /&gt;
|Metal&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|9&lt;br /&gt;
|Sand&lt;br /&gt;
|Generations will play Concrete sound effects instead&lt;br /&gt;
|-&lt;br /&gt;
|10&lt;br /&gt;
|Glass&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|11&lt;br /&gt;
|ShallowWater&lt;br /&gt;
|Sonic can walk inside the collision with @Water in the name, otherwise he can only walk on the collision&lt;br /&gt;
|-&lt;br /&gt;
|12&lt;br /&gt;
|Dead&lt;br /&gt;
|Kills the player if touched&lt;br /&gt;
|-&lt;br /&gt;
|13&lt;br /&gt;
|Damage&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|14&lt;br /&gt;
|NoDeadWater&lt;br /&gt;
|Water that doesn&#039;t make you drown, &lt;br /&gt;
use Box or Convex Hull meshes in Generations&lt;br /&gt;
|-&lt;br /&gt;
|15&lt;br /&gt;
|NoEffect&lt;br /&gt;
|Will play no footsteps or emit any particles in Unleashed&lt;br /&gt;
In Generations this will still play footstep sounds&lt;br /&gt;
|-&lt;br /&gt;
|16&lt;br /&gt;
|Oil&lt;br /&gt;
|Only in Generations&lt;br /&gt;
|-&lt;br /&gt;
|17&lt;br /&gt;
|PinballGlass&lt;br /&gt;
|Only in Generations, used in Casino Night Zone&lt;br /&gt;
|-&lt;br /&gt;
|18&lt;br /&gt;
|WrongWay&lt;br /&gt;
|Only in Generations&lt;br /&gt;
|-&lt;br /&gt;
|19&lt;br /&gt;
|Lava&lt;br /&gt;
|Only in Generations&lt;br /&gt;
|-&lt;br /&gt;
|20&lt;br /&gt;
|Poison&lt;br /&gt;
|Only in Generations&lt;br /&gt;
|}&lt;br /&gt;
== Collision Properties ==&lt;br /&gt;
Most of the parameters here are boolean parameters, with 0 value indicating it&#039;s disabled, and 1 indicating it&#039;s enabled.&lt;br /&gt;
{| class=&amp;quot;wikitable sortable&amp;quot;&lt;br /&gt;
|+&lt;br /&gt;
!Parameter Name&lt;br /&gt;
!ID&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|swa_evil_isbalance_ground&lt;br /&gt;
|122999549&lt;br /&gt;
|This is used for the Werehog to detect if he should start balancing on a tight strip, and its also used for Classic Sonic to detect where a ledge is.&lt;br /&gt;
|-&lt;br /&gt;
|swa_isIce_ground&lt;br /&gt;
|246659335&lt;br /&gt;
|If enabled, this&#039;ll make the ground slippery (like in Holoska in Sonic Unleashed). This requires some extra files to be present to make it work; if these files are missing, the game will crash when the collision is touched by the player.&lt;br /&gt;
|-&lt;br /&gt;
|swa_col_other&lt;br /&gt;
|620872783&lt;br /&gt;
|If enabled, anything that isn&#039;t the player or the camera will collide with the object.&lt;br /&gt;
|-&lt;br /&gt;
|intersectional_way&lt;br /&gt;
|1009866916&lt;br /&gt;
|Generations only, used in Casino Night Zone.&lt;br /&gt;
|-&lt;br /&gt;
|swa_sonic_isbeltconveyor&lt;br /&gt;
|1196263925&lt;br /&gt;
|Used for the &amp;lt;code&amp;gt;BeltConveyorCollision&amp;lt;/code&amp;gt; object in Generations and the &amp;lt;code&amp;gt;Egg_BeltCollision&amp;lt;/code&amp;gt;&#039;&#039;&#039;/&#039;&#039;&#039;&amp;lt;code&amp;gt;Egg_BeltCollisionSV&amp;lt;/code&amp;gt; objects in Unleashed, the value of this field is the speed of the conveyor belt.&lt;br /&gt;
|-&lt;br /&gt;
|swa_sonic_isplayerwall&lt;br /&gt;
|1368296714&lt;br /&gt;
|Used to indicate if a surface can be used for wall-jumping.&lt;br /&gt;
|-&lt;br /&gt;
|swa_col_specific&lt;br /&gt;
|1330259859&lt;br /&gt;
|This is set to 1 by default, setting it to 2 or 3 will make the IKs for Sonic adjust to the terrain.&lt;br /&gt;
|-&lt;br /&gt;
|swa_col_attacking&lt;br /&gt;
|1651585625&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|swa_col_camera&lt;br /&gt;
|1706239430&lt;br /&gt;
|If enabled, the camera will collide with this object.&lt;br /&gt;
|-&lt;br /&gt;
|pinball_glass&lt;br /&gt;
|2040148113&lt;br /&gt;
|Generations only, used in Casino Night Zone.&lt;br /&gt;
|-&lt;br /&gt;
|swa_col_player&lt;br /&gt;
|2088238466&lt;br /&gt;
|If enabled, the player will collide with the object.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Mesh Name Tags ==&lt;br /&gt;
Rigid bodies can have custom properties that are detected by the game itself to determine their interactions with other objects. These tags are added at the end of mesh names with an @ symbol as the separator (e.g. ghz_sea@Water). These properties are &#039;&#039;&#039;&amp;lt;u&amp;gt;Case-Sensitive&amp;lt;/u&amp;gt;&#039;&#039;&#039;.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+&lt;br /&gt;
!Name&lt;br /&gt;
!Notes&lt;br /&gt;
|-&lt;br /&gt;
|@Balance&lt;br /&gt;
|Unleashed only&lt;br /&gt;
|-&lt;br /&gt;
|@DamageFall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|@DisableThrowColl&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|@DisableTemColl&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|@EnableQtoW / @enableQtoW&lt;br /&gt;
|Generations only&lt;br /&gt;
|-&lt;br /&gt;
|@Spiral / @spiral&lt;br /&gt;
|Generations only&lt;br /&gt;
|-&lt;br /&gt;
|@Slide&lt;br /&gt;
|Requires a path with an ID of &lt;br /&gt;
888 to be present in the stage.&lt;br /&gt;
|-&lt;br /&gt;
|@NoStanding&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|@NoCamera&lt;br /&gt;
|Allows the camera to pass through the collision mesh&lt;br /&gt;
|-&lt;br /&gt;
|@IceGround&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|@Water&lt;br /&gt;
|Allows Sonic to go inside the collision mesh when using ShallowWater type&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Collision Shapes ==&lt;br /&gt;
[[Havok Converter]] allows you to specify the shape of your collision meshes by appending tags to their names. By default, rigid bodies are created as mesh shapes, which might be incompatible with certain properties such as @Water. This is where you need to pick a collision shape that fits your use case. These tags are &#039;&#039;&#039;&amp;lt;u&amp;gt;Case-Sensitive&amp;lt;/u&amp;gt;&#039;&#039;&#039;.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+&lt;br /&gt;
!Name&lt;br /&gt;
!Notes&lt;br /&gt;
|-&lt;br /&gt;
|@CONVEX(true)&lt;br /&gt;
|Convex Hull mesh, most recommended outside mesh shapes&lt;br /&gt;
|-&lt;br /&gt;
|@CONVEX(1)&lt;br /&gt;
|Same as @CONVEX(true) but shorter way of specifying it&lt;br /&gt;
|-&lt;br /&gt;
|@BOX&lt;br /&gt;
|Axis aligned box that covers the whole mesh&lt;br /&gt;
|-&lt;br /&gt;
|@SPHERE&lt;br /&gt;
|Largest sphere that covers the whole mesh&lt;br /&gt;
|-&lt;br /&gt;
|@CYLINDER&lt;br /&gt;
|Axis aligned cylinder&lt;br /&gt;
|-&lt;br /&gt;
|@CAPSULE&lt;br /&gt;
|Axis aligned capsule&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>PTKay</name></author>
	</entry>
	<entry>
		<id>https://hedgedocs.com/index.php?title=Unleashed-Generations_Havok_Collision_Attributes&amp;diff=508</id>
		<title>Unleashed-Generations Havok Collision Attributes</title>
		<link rel="alternate" type="text/html" href="https://hedgedocs.com/index.php?title=Unleashed-Generations_Havok_Collision_Attributes&amp;diff=508"/>
		<updated>2025-04-20T11:19:15Z</updated>

		<summary type="html">&lt;p&gt;PTKay: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Sonic Unleashed and Sonic Generations have several collision tags that they use to determine the type of terrain, its properties, and what can collide with what else. These attributes can be applied to &amp;lt;code&amp;gt;.hkx&amp;lt;/code&amp;gt; files with [[Havok Converter]]; to learn how to apply these tags to collision meshes, check out [[Adding Collision Tags with Havok Converter]].&lt;br /&gt;
&lt;br /&gt;
== Material Type ==&lt;br /&gt;
&lt;br /&gt;
=== swa_attribute (1260399450) ===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Index&lt;br /&gt;
!Type&lt;br /&gt;
!Notes&lt;br /&gt;
|-&lt;br /&gt;
|0&lt;br /&gt;
|Unknown&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|Normal&lt;br /&gt;
|This plays Concrete footstep sounds&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|DeepWater&lt;br /&gt;
|Requires Convex Hull meshes in Generations&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|Rock&lt;br /&gt;
|This also plays Concrete footstep sounds&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
|Dirt&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|5&lt;br /&gt;
|Wood&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|6&lt;br /&gt;
|Grass&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|7&lt;br /&gt;
|Snow&lt;br /&gt;
|This requires an extra file to be added in Generations, add a file called&lt;br /&gt;
&amp;lt;code&amp;gt;ef_ch_sns_yh1_smoke_snow.dds&amp;lt;/code&amp;gt; to prevent it from crashing the game&lt;br /&gt;
|-&lt;br /&gt;
|8&lt;br /&gt;
|Metal&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|9&lt;br /&gt;
|Sand&lt;br /&gt;
|Generations will play Concrete sound effects instead&lt;br /&gt;
|-&lt;br /&gt;
|10&lt;br /&gt;
|Glass&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|11&lt;br /&gt;
|ShallowWater&lt;br /&gt;
|Sonic can walk inside the collision with @Water in the name, otherwise he can only walk on the collision&lt;br /&gt;
|-&lt;br /&gt;
|12&lt;br /&gt;
|Dead&lt;br /&gt;
|Kills the player if touched&lt;br /&gt;
|-&lt;br /&gt;
|13&lt;br /&gt;
|Damage&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|14&lt;br /&gt;
|NoDeadWater&lt;br /&gt;
|Water that doesn&#039;t make you drown, &lt;br /&gt;
use Box or Convex Hull meshes in Generations&lt;br /&gt;
|-&lt;br /&gt;
|15&lt;br /&gt;
|NoEffect&lt;br /&gt;
|Will play no footsteps or emit any particles in Unleashed&lt;br /&gt;
In Generations this will still play footstep sounds&lt;br /&gt;
|-&lt;br /&gt;
|16&lt;br /&gt;
|Oil&lt;br /&gt;
|Only in Generations&lt;br /&gt;
|-&lt;br /&gt;
|17&lt;br /&gt;
|PinballGlass&lt;br /&gt;
|Only in Generations, used in Casino Night Zone&lt;br /&gt;
|-&lt;br /&gt;
|18&lt;br /&gt;
|WrongWay&lt;br /&gt;
|Only in Generations&lt;br /&gt;
|-&lt;br /&gt;
|19&lt;br /&gt;
|Lava&lt;br /&gt;
|Only in Generations&lt;br /&gt;
|-&lt;br /&gt;
|20&lt;br /&gt;
|Poison&lt;br /&gt;
|Only in Generations&lt;br /&gt;
|}&lt;br /&gt;
== Collision Properties ==&lt;br /&gt;
Most of the parameters here are boolean parameters, with 0 value indicating it&#039;s disabled, and 1 indicating it&#039;s enabled.&lt;br /&gt;
{| class=&amp;quot;wikitable sortable&amp;quot;&lt;br /&gt;
|+&lt;br /&gt;
!Parameter Name&lt;br /&gt;
!ID&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|swa_evil_isbalance_ground&lt;br /&gt;
|122999549&lt;br /&gt;
|This is used for the Werehog to detect if he should start balancing on a tight strip, and its also used for Classic Sonic to detect where a ledge is.&lt;br /&gt;
|-&lt;br /&gt;
|swa_isIce_ground&lt;br /&gt;
|246659335&lt;br /&gt;
|If enabled, this&#039;ll make the ground slippery (like in Holoska in Sonic Unleashed). This requires some extra files to be present to make it work; if these files are missing, the game will crash when the collision is touched by the player.&lt;br /&gt;
|-&lt;br /&gt;
|swa_col_other&lt;br /&gt;
|620872783&lt;br /&gt;
|If enabled, anything that isn&#039;t the player or the camera will collide with the object.&lt;br /&gt;
|-&lt;br /&gt;
|intersectional_way&lt;br /&gt;
|1009866916&lt;br /&gt;
|Generations only, used in Casino Night Zone.&lt;br /&gt;
|-&lt;br /&gt;
|swa_sonic_isbeltconveyor&lt;br /&gt;
|1196263925&lt;br /&gt;
|Used for the &amp;lt;code&amp;gt;BeltConveyorCollision&amp;lt;/code&amp;gt; object in Generations and the &amp;lt;code&amp;gt;Egg_BeltCollision&amp;lt;/code&amp;gt;&#039;&#039;&#039;/&#039;&#039;&#039;&amp;lt;code&amp;gt;Egg_BeltCollisionSV&amp;lt;/code&amp;gt; objects in Unleashed, the value of this field is the speed of the conveyor belt.&lt;br /&gt;
|-&lt;br /&gt;
|swa_sonic_isplayerwall&lt;br /&gt;
|1368296714&lt;br /&gt;
|Used to indicate if a surface can be used for wall-jumping.&lt;br /&gt;
|-&lt;br /&gt;
|swa_col_specific&lt;br /&gt;
|1330259859&lt;br /&gt;
|This is set to 1 by default, setting it to 2 or 3 will make the IKs for Sonic adjust to the terrain.&lt;br /&gt;
|-&lt;br /&gt;
|swa_col_attacking&lt;br /&gt;
|1651585625&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|swa_col_camera&lt;br /&gt;
|1706239430&lt;br /&gt;
|If enabled, the camera will collide with this object.&lt;br /&gt;
|-&lt;br /&gt;
|pinball_glass&lt;br /&gt;
|2040148113&lt;br /&gt;
|Generations only, used in Casino Night Zone.&lt;br /&gt;
|-&lt;br /&gt;
|swa_col_player&lt;br /&gt;
|2088238466&lt;br /&gt;
|If enabled, the player will collide with the object.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Mesh Name Tags ==&lt;br /&gt;
Rigid bodies can have custom properties that are detected by the game itself to determine their interactions with other objects. These tags are added at the end of mesh names with an @ symbol as the separator (e.g. ghz_sea@Water). These properties are &#039;&#039;&#039;&amp;lt;u&amp;gt;Case-Sensitive&amp;lt;/u&amp;gt;&#039;&#039;&#039;.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+&lt;br /&gt;
!Name&lt;br /&gt;
!Notes&lt;br /&gt;
|-&lt;br /&gt;
|@Balance&lt;br /&gt;
|Unleashed only&lt;br /&gt;
|-&lt;br /&gt;
|@DamageFall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|@DisableThrowColl&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|@DisableTemColl&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|@EnableQtoW / @enableQtoW&lt;br /&gt;
|Generations only&lt;br /&gt;
|-&lt;br /&gt;
|@Spiral / @spiral&lt;br /&gt;
|Generations only&lt;br /&gt;
|-&lt;br /&gt;
|@Slide&lt;br /&gt;
|Requires a path with an ID of &lt;br /&gt;
888 to be present in the stage.&lt;br /&gt;
|-&lt;br /&gt;
|@NoStanding&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|@NoCamera&lt;br /&gt;
|Allows the camera to pass through the collision mesh&lt;br /&gt;
|-&lt;br /&gt;
|@IceGround&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|@Water&lt;br /&gt;
|Allows Sonic to go inside the collision mesh when using ShallowWater type&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Collision Shapes ==&lt;br /&gt;
[[Havok Converter]] allows you to specify the shape of your collision meshes by appending tags to their names. By default, rigid bodies are created as mesh shapes, which might be incompatible with certain properties such as @Water. This is where you need to pick a collision shape that fits your use case. These tags are &#039;&#039;&#039;&amp;lt;u&amp;gt;Case-Sensitive&amp;lt;/u&amp;gt;&#039;&#039;&#039;.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+&lt;br /&gt;
!Name&lt;br /&gt;
!Notes&lt;br /&gt;
|-&lt;br /&gt;
|@CONVEX(true)&lt;br /&gt;
|Convex Hull mesh, most recommended outside mesh shapes&lt;br /&gt;
|-&lt;br /&gt;
|@CONVEX(1)&lt;br /&gt;
|Same as @CONVEX(true) but shorter way of specifying it&lt;br /&gt;
|-&lt;br /&gt;
|@BOX&lt;br /&gt;
|Axis aligned box that covers the whole mesh&lt;br /&gt;
|-&lt;br /&gt;
|@SPHERE&lt;br /&gt;
|Largest sphere that covers the whole mesh&lt;br /&gt;
|-&lt;br /&gt;
|@CYLINDER&lt;br /&gt;
|Axis aligned cylinder&lt;br /&gt;
|-&lt;br /&gt;
|@CAPSULE&lt;br /&gt;
|Axis aligned capsule&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>PTKay</name></author>
	</entry>
	<entry>
		<id>https://hedgedocs.com/index.php?title=Unleashed-Generations_Havok_Collision_Attributes&amp;diff=507</id>
		<title>Unleashed-Generations Havok Collision Attributes</title>
		<link rel="alternate" type="text/html" href="https://hedgedocs.com/index.php?title=Unleashed-Generations_Havok_Collision_Attributes&amp;diff=507"/>
		<updated>2025-04-20T11:18:28Z</updated>

		<summary type="html">&lt;p&gt;PTKay: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Sonic Unleashed and Sonic Generations have several collision tags that they use to determine the type of terrain, its properties, and what can collide with what else. These attributes can be applied to &amp;lt;code&amp;gt;.hkx&amp;lt;/code&amp;gt; files with [[Havok Converter]]; to learn how to apply these tags to collision meshes, check out [[Adding Collision Tags with Havok Converter]].&lt;br /&gt;
&lt;br /&gt;
== Material Type ==&lt;br /&gt;
&lt;br /&gt;
=== swa_attribute (1260399450) ===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Index&lt;br /&gt;
!Type&lt;br /&gt;
!Notes&lt;br /&gt;
|-&lt;br /&gt;
|0&lt;br /&gt;
|Unknown&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|Normal&lt;br /&gt;
|This plays Concrete footstep sounds&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|DeepWater&lt;br /&gt;
|Requires Convex Hull meshes in Generations&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|Rock&lt;br /&gt;
|This also plays Concrete footstep sounds&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
|Dirt&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|5&lt;br /&gt;
|Wood&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|6&lt;br /&gt;
|Grass&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|7&lt;br /&gt;
|Snow&lt;br /&gt;
|This requires an extra file to be added in Generations, add a file called&lt;br /&gt;
&amp;lt;code&amp;gt;ef_ch_sns_yh1_smoke_snow.dds&amp;lt;/code&amp;gt; to prevent it from crashing the game&lt;br /&gt;
|-&lt;br /&gt;
|8&lt;br /&gt;
|Metal&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|9&lt;br /&gt;
|Sand&lt;br /&gt;
|Generations will play Concrete sound effects instead&lt;br /&gt;
|-&lt;br /&gt;
|10&lt;br /&gt;
|Glass&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|11&lt;br /&gt;
|ShallowWater&lt;br /&gt;
|Sonic can walk inside the collision with @Water in the name, otherwise he can only walk on the collision&lt;br /&gt;
|-&lt;br /&gt;
|12&lt;br /&gt;
|Dead&lt;br /&gt;
|Kills the player if touched&lt;br /&gt;
|-&lt;br /&gt;
|13&lt;br /&gt;
|Damage&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|14&lt;br /&gt;
|NoDeadWater&lt;br /&gt;
|Water that doesn&#039;t make you drown, &lt;br /&gt;
use Box or Convex Hull meshes in Generations&lt;br /&gt;
|-&lt;br /&gt;
|15&lt;br /&gt;
|NoEffect&lt;br /&gt;
|Will play no footsteps or emit any particles in Unleashed&lt;br /&gt;
In Generations this will still play footstep sounds&lt;br /&gt;
|-&lt;br /&gt;
|16&lt;br /&gt;
|Oil&lt;br /&gt;
|Only in Generations&lt;br /&gt;
|-&lt;br /&gt;
|17&lt;br /&gt;
|PinballGlass&lt;br /&gt;
|Only in Generations, used in Casino Night Zone&lt;br /&gt;
|-&lt;br /&gt;
|18&lt;br /&gt;
|WrongWay&lt;br /&gt;
|Only in Generations&lt;br /&gt;
|-&lt;br /&gt;
|19&lt;br /&gt;
|Lava&lt;br /&gt;
|Only in Generations&lt;br /&gt;
|-&lt;br /&gt;
|20&lt;br /&gt;
|Poison&lt;br /&gt;
|Only in Generations&lt;br /&gt;
|}&lt;br /&gt;
== Collision Properties ==&lt;br /&gt;
Most of the parameters here are boolean parameters, with 0 value indicating it&#039;s disabled, and 1 indicating it&#039;s enabled.&lt;br /&gt;
{| class=&amp;quot;wikitable sortable&amp;quot;&lt;br /&gt;
|+&lt;br /&gt;
!Parameter Name&lt;br /&gt;
!ID&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|swa_evil_isbalance_ground&lt;br /&gt;
|122999549&lt;br /&gt;
|This is used for the Werehog to detect if he should start balancing on a tight strip, and its also used for Classic Sonic to detect where a ledge is.&lt;br /&gt;
|-&lt;br /&gt;
|swa_isIce_ground&lt;br /&gt;
|246659335&lt;br /&gt;
|If enabled, this&#039;ll make the ground slippery (like in Holoska in Sonic Unleashed). This requires some extra files to be present to make it work; if these files are missing, the game will crash when the collision is touched by the player.&lt;br /&gt;
|-&lt;br /&gt;
|swa_col_other&lt;br /&gt;
|620872783&lt;br /&gt;
|If enabled, anything that isn&#039;t the player or the camera will collide with the object.&lt;br /&gt;
|-&lt;br /&gt;
|intersectional_way&lt;br /&gt;
|1009866916&lt;br /&gt;
|Generations only, used in Casino Night Zone.&lt;br /&gt;
|-&lt;br /&gt;
|swa_sonic_isbeltconveyor&lt;br /&gt;
|1196263925&lt;br /&gt;
|Used for the &amp;lt;code&amp;gt;BeltConveyorCollision&amp;lt;/code&amp;gt; object in Generations and the &amp;lt;code&amp;gt;Egg_BeltCollision&amp;lt;/code&amp;gt;&#039;&#039;&#039;/&#039;&#039;&#039;&amp;lt;code&amp;gt;Egg_BeltCollisionSV&amp;lt;/code&amp;gt; objects in Unleashed, the value of this field is the speed of the conveyor belt.&lt;br /&gt;
|-&lt;br /&gt;
|swa_sonic_isplayerwall&lt;br /&gt;
|1368296714&lt;br /&gt;
|Used to indicate if a surface can be used for wall-jumping.&lt;br /&gt;
|-&lt;br /&gt;
|swa_col_specific&lt;br /&gt;
|1330259859&lt;br /&gt;
|This is set to 1 by default, setting it to 2 or 3 will make the IKs for Sonic adjust to the terrain.&lt;br /&gt;
|-&lt;br /&gt;
|swa_col_attacking&lt;br /&gt;
|1651585625&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|swa_col_camera&lt;br /&gt;
|1706239430&lt;br /&gt;
|If enabled, the camera will collide with this object.&lt;br /&gt;
|-&lt;br /&gt;
|pinball_glass&lt;br /&gt;
|2040148113&lt;br /&gt;
|Generations only, used in Casino Night Zone.&lt;br /&gt;
|-&lt;br /&gt;
|swa_col_player&lt;br /&gt;
|2088238466&lt;br /&gt;
|If enabled, the player will collide with the object.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Mesh Name Tags ==&lt;br /&gt;
Rigid bodies can have custom properties that are detected by the game itself to determine their interactions with other objects. These tags are added at the end of mesh names with an @ symbol as the separator (e.g. ghz_sea@Water). These properties are &#039;&#039;&#039;&amp;lt;u&amp;gt;Case-Sensitive.&amp;lt;/u&amp;gt;&#039;&#039;&#039;&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+&lt;br /&gt;
!Name&lt;br /&gt;
!Notes&lt;br /&gt;
|-&lt;br /&gt;
|@Balance&lt;br /&gt;
|Unleashed only&lt;br /&gt;
|-&lt;br /&gt;
|@DamageFall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|@DisableThrowColl&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|@DisableTemColl&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|@EnableQtoW / @enableQtoW&lt;br /&gt;
|Generations only&lt;br /&gt;
|-&lt;br /&gt;
|@Spiral / @spiral&lt;br /&gt;
|Generations only&lt;br /&gt;
|-&lt;br /&gt;
|@Slide&lt;br /&gt;
|Requires a path with an ID of &lt;br /&gt;
888 to be present in the stage.&lt;br /&gt;
|-&lt;br /&gt;
|@NoStanding&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|@NoCamera&lt;br /&gt;
|Allows the camera to pass through the collision mesh&lt;br /&gt;
|-&lt;br /&gt;
|@IceGround&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|@Water&lt;br /&gt;
|Allows Sonic to go inside the collision mesh when using ShallowWater type&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Collision Shapes ==&lt;br /&gt;
[[Havok Converter]] allows you to specify the shape of your collision meshes by appending tags to their names. By default, rigid bodies are created as mesh shapes, which might be incompatible with certain properties such as @Water. This is where you need to pick a collision shape that fits your use case. These tags are &#039;&#039;&#039;&amp;lt;u&amp;gt;Case-Sensitive&amp;lt;/u&amp;gt;&#039;&#039;&#039;.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+&lt;br /&gt;
!Name&lt;br /&gt;
!Notes&lt;br /&gt;
|-&lt;br /&gt;
|@CONVEX(true)&lt;br /&gt;
|Convex Hull mesh, most recommended outside mesh shapes&lt;br /&gt;
|-&lt;br /&gt;
|@CONVEX(1)&lt;br /&gt;
|Same as @CONVEX(true) but shorter way of specifying it&lt;br /&gt;
|-&lt;br /&gt;
|@BOX&lt;br /&gt;
|Axis aligned box that covers the whole mesh&lt;br /&gt;
|-&lt;br /&gt;
|@SPHERE&lt;br /&gt;
|Largest sphere that covers the whole mesh&lt;br /&gt;
|-&lt;br /&gt;
|@CYLINDER&lt;br /&gt;
|Axis aligned cylinder&lt;br /&gt;
|-&lt;br /&gt;
|@CAPSULE&lt;br /&gt;
|Axis aligned capsule&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>PTKay</name></author>
	</entry>
	<entry>
		<id>https://hedgedocs.com/index.php?title=Documentation&amp;diff=488</id>
		<title>Documentation</title>
		<link rel="alternate" type="text/html" href="https://hedgedocs.com/index.php?title=Documentation&amp;diff=488"/>
		<updated>2025-04-08T14:13:20Z</updated>

		<summary type="html">&lt;p&gt;PTKay: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This section lists documentation pages for resources you&#039;ll find in Sonic games. You&#039;ll find information about certain file formats and other general game resources.&lt;br /&gt;
&lt;br /&gt;
== Set-Data ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
!Extension&lt;br /&gt;
!Tools&lt;br /&gt;
|-&lt;br /&gt;
|[[HSON Format|HSON]] (Hedgehog Set Object Notation)&lt;br /&gt;
|Universal object placement representation format.&lt;br /&gt;
|&amp;lt;code&amp;gt;.hson&amp;lt;/code&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== User Interface ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
!Extension&lt;br /&gt;
!Tools&lt;br /&gt;
|-&lt;br /&gt;
|[[NCP File Format|NCP]] (Ninja CellSpriteDraw Project)&lt;br /&gt;
|Describes a user interface in most Hedgehog Engine games.&lt;br /&gt;
|&amp;lt;span style=&amp;quot;text-align: center&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;code&amp;gt;.xncp&amp;lt;/code&amp;gt;&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;code&amp;gt;.yncp&amp;lt;/code&amp;gt;&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;code&amp;gt;.gncp&amp;lt;/code&amp;gt;&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;code&amp;gt;.sncp&amp;lt;/code&amp;gt;&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;/span&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
* [[Kunai]]&lt;br /&gt;
* [[Shuriken]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Archives ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
!Extension&lt;br /&gt;
!Tools&lt;br /&gt;
|-&lt;br /&gt;
|[[NN Chunk Format|NN Chunk]]&lt;br /&gt;
|Generic container format.&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Animation ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
!Extension&lt;br /&gt;
!Tools&lt;br /&gt;
|-&lt;br /&gt;
|[[PXD|PXD Animation]]&lt;br /&gt;
|Skeleton and skeletal animation format in Hedgehog Engine 2 Games&lt;br /&gt;
|&amp;lt;span style=&amp;quot;text-align: center&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;code&amp;gt;.anm.pxd&amp;lt;/code&amp;gt;&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;code&amp;gt;.skl.pxd&amp;lt;/code&amp;gt;&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;/span&amp;gt;&lt;br /&gt;
|[[Frontiers Animation Tools]]&lt;br /&gt;
|-&lt;br /&gt;
|[[PBA|PBA Skeleton]]&lt;br /&gt;
|Physics Based Animation Skeleton for Hedgehog Engine 2 Games&lt;br /&gt;
|&amp;lt;code&amp;gt;.pba&amp;lt;/code&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>PTKay</name></author>
	</entry>
	<entry>
		<id>https://hedgedocs.com/index.php?title=Documentation&amp;diff=487</id>
		<title>Documentation</title>
		<link rel="alternate" type="text/html" href="https://hedgedocs.com/index.php?title=Documentation&amp;diff=487"/>
		<updated>2025-04-08T14:13:09Z</updated>

		<summary type="html">&lt;p&gt;PTKay: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This section lists documentation pages for resources you&#039;ll find in Sonic games. You&#039;ll find information about certain file formats and other general game resources.&lt;br /&gt;
&lt;br /&gt;
== Set-Data ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
!Extension&lt;br /&gt;
!Tools&lt;br /&gt;
|-&lt;br /&gt;
|[[HSON Format|HSON]] (Hedgehog Set Object Notation)&lt;br /&gt;
|Universal object placement representation format.&lt;br /&gt;
!&amp;lt;code&amp;gt;.hson&amp;lt;/code&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== User Interface ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
!Extension&lt;br /&gt;
!Tools&lt;br /&gt;
|-&lt;br /&gt;
|[[NCP File Format|NCP]] (Ninja CellSpriteDraw Project)&lt;br /&gt;
|Describes a user interface in most Hedgehog Engine games.&lt;br /&gt;
|&amp;lt;span style=&amp;quot;text-align: center&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;code&amp;gt;.xncp&amp;lt;/code&amp;gt;&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;code&amp;gt;.yncp&amp;lt;/code&amp;gt;&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;code&amp;gt;.gncp&amp;lt;/code&amp;gt;&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;code&amp;gt;.sncp&amp;lt;/code&amp;gt;&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;/span&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
* [[Kunai]]&lt;br /&gt;
* [[Shuriken]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Archives ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
!Extension&lt;br /&gt;
!Tools&lt;br /&gt;
|-&lt;br /&gt;
|[[NN Chunk Format|NN Chunk]]&lt;br /&gt;
|Generic container format.&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Animation ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
!Extension&lt;br /&gt;
!Tools&lt;br /&gt;
|-&lt;br /&gt;
|[[PXD|PXD Animation]]&lt;br /&gt;
|Skeleton and skeletal animation format in Hedgehog Engine 2 Games&lt;br /&gt;
|&amp;lt;span style=&amp;quot;text-align: center&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;code&amp;gt;.anm.pxd&amp;lt;/code&amp;gt;&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;code&amp;gt;.skl.pxd&amp;lt;/code&amp;gt;&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;/span&amp;gt;&lt;br /&gt;
|[[Frontiers Animation Tools]]&lt;br /&gt;
|-&lt;br /&gt;
|[[PBA|PBA Skeleton]]&lt;br /&gt;
|Physics Based Animation Skeleton for Hedgehog Engine 2 Games&lt;br /&gt;
!&amp;lt;code&amp;gt;.pba&amp;lt;/code&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>PTKay</name></author>
	</entry>
	<entry>
		<id>https://hedgedocs.com/index.php?title=Documentation&amp;diff=486</id>
		<title>Documentation</title>
		<link rel="alternate" type="text/html" href="https://hedgedocs.com/index.php?title=Documentation&amp;diff=486"/>
		<updated>2025-04-08T14:10:18Z</updated>

		<summary type="html">&lt;p&gt;PTKay: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This section lists documentation pages for resources you&#039;ll find in Sonic games. You&#039;ll find information about certain file formats and other general game resources.&lt;br /&gt;
&lt;br /&gt;
== Set-Data ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
!Extension&lt;br /&gt;
!Tools&lt;br /&gt;
|-&lt;br /&gt;
|[[HSON Format|HSON]] (Hedgehog Set Object Notation)&lt;br /&gt;
|Universal object placement representation format.&lt;br /&gt;
!&amp;lt;code&amp;gt;.hson&amp;lt;/code&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== User Interface ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
!Extension&lt;br /&gt;
!Tools&lt;br /&gt;
|-&lt;br /&gt;
|[[NCP File Format|NCP]] (Ninja CellSpriteDraw Project)&lt;br /&gt;
|Describes a user interface in most Hedgehog Engine games.&lt;br /&gt;
|&amp;lt;code&amp;gt;.xncp&amp;lt;/code&amp;gt;&amp;lt;code&amp;gt;.yncp&amp;lt;/code&amp;gt;&amp;lt;code&amp;gt;.gncp&amp;lt;/code&amp;gt;&amp;lt;code&amp;gt;.sncp&amp;lt;/code&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
* [[Kunai]]&lt;br /&gt;
* [[Shuriken]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Archives ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
!Extension&lt;br /&gt;
!Tools&lt;br /&gt;
|-&lt;br /&gt;
|[[NN Chunk Format|NN Chunk]]&lt;br /&gt;
|Generic container format.&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Animation ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
!Extension&lt;br /&gt;
!Tools&lt;br /&gt;
|-&lt;br /&gt;
|[[PXD|PXD Animation]]&lt;br /&gt;
|Skeleton and skeletal animation format in Hedgehog Engine 2 Games&lt;br /&gt;
!&amp;lt;code&amp;gt;.anm.pxd&amp;lt;/code&amp;gt;&amp;lt;code&amp;gt;.skl.pxd&amp;lt;/code&amp;gt;&lt;br /&gt;
|[[Frontiers Animation Tools]]&lt;br /&gt;
|-&lt;br /&gt;
|[[PBA|PBA Skeleton]]&lt;br /&gt;
|Physics Based Animation Skeleton for Hedgehog Engine 2 Games&lt;br /&gt;
!&amp;lt;code&amp;gt;.pba&amp;lt;/code&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>PTKay</name></author>
	</entry>
	<entry>
		<id>https://hedgedocs.com/index.php?title=Documentation&amp;diff=485</id>
		<title>Documentation</title>
		<link rel="alternate" type="text/html" href="https://hedgedocs.com/index.php?title=Documentation&amp;diff=485"/>
		<updated>2025-04-08T14:09:35Z</updated>

		<summary type="html">&lt;p&gt;PTKay: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This section lists documentation pages for resources you&#039;ll find in Sonic games. You&#039;ll find information about certain file formats and other general game resources.&lt;br /&gt;
&lt;br /&gt;
== Set-Data ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
!Extension&lt;br /&gt;
!Tools&lt;br /&gt;
|-&lt;br /&gt;
|[[HSON Format|HSON]] (Hedgehog Set Object Notation)&lt;br /&gt;
|Universal object placement representation format.&lt;br /&gt;
!&amp;lt;code&amp;gt;.hson&amp;lt;/code&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== User Interface ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
!Extension&lt;br /&gt;
!Tools&lt;br /&gt;
|-&lt;br /&gt;
|[[NCP File Format|NCP]] (Ninja CellSpriteDraw Project)&lt;br /&gt;
|Describes a user interface in most Hedgehog Engine games.&lt;br /&gt;
!&amp;lt;code&amp;gt;.xncp&amp;lt;/code&amp;gt;&amp;lt;code&amp;gt;.yncp&amp;lt;/code&amp;gt;&amp;lt;code&amp;gt;.gncp&amp;lt;/code&amp;gt;&amp;lt;code&amp;gt;.sncp&amp;lt;/code&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
* [[Kunai]]&lt;br /&gt;
* [[Shuriken]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Archives ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
!Extension&lt;br /&gt;
!Tools&lt;br /&gt;
|-&lt;br /&gt;
|[[NN Chunk Format|NN Chunk]]&lt;br /&gt;
|Generic container format.&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Animation ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
!Extension&lt;br /&gt;
!Tools&lt;br /&gt;
|-&lt;br /&gt;
|[[PXD|PXD Animation]]&lt;br /&gt;
|Skeleton and skeletal animation format in Hedgehog Engine 2 Games&lt;br /&gt;
!&amp;lt;code&amp;gt;.anm.pxd&amp;lt;/code&amp;gt;&amp;lt;code&amp;gt;.skl.pxd&amp;lt;/code&amp;gt;&lt;br /&gt;
|[[Frontiers Animation Tools]]&lt;br /&gt;
|-&lt;br /&gt;
|[[PBA|PBA Skeleton]]&lt;br /&gt;
|Physics Based Animation Skeleton for Hedgehog Engine 2 Games&lt;br /&gt;
!&amp;lt;code&amp;gt;.pba&amp;lt;/code&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>PTKay</name></author>
	</entry>
	<entry>
		<id>https://hedgedocs.com/index.php?title=Documentation&amp;diff=484</id>
		<title>Documentation</title>
		<link rel="alternate" type="text/html" href="https://hedgedocs.com/index.php?title=Documentation&amp;diff=484"/>
		<updated>2025-04-08T14:09:08Z</updated>

		<summary type="html">&lt;p&gt;PTKay: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This section lists documentation pages for resources you&#039;ll find in Sonic games. You&#039;ll find information about certain file formats and other general game resources.&lt;br /&gt;
&lt;br /&gt;
== Set-Data ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
!Extension&lt;br /&gt;
!Tools&lt;br /&gt;
|-&lt;br /&gt;
|[[HSON Format|HSON]] (Hedgehog Set Object Notation)&lt;br /&gt;
|Universal object placement representation format.&lt;br /&gt;
!&amp;lt;code&amp;gt;.hson&amp;lt;/code&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== User Interface ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
!Extension&lt;br /&gt;
!Tools&lt;br /&gt;
|-&lt;br /&gt;
|[[NCP File Format|NCP]] (Ninja CellSpriteDraw Project)&lt;br /&gt;
|Describes a user interface in most Hedgehog Engine games.&lt;br /&gt;
!&amp;lt;code&amp;gt;.xncp&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;.yncp&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;.gncp&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;.sncp&amp;lt;/code&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
* [[Kunai]]&lt;br /&gt;
* [[Shuriken]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Archives ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
!Extension&lt;br /&gt;
!Tools&lt;br /&gt;
|-&lt;br /&gt;
|[[NN Chunk Format|NN Chunk]]&lt;br /&gt;
|Generic container format.&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Animation ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
!Extension&lt;br /&gt;
!Tools&lt;br /&gt;
|-&lt;br /&gt;
|[[PXD|PXD Animation]]&lt;br /&gt;
|Skeleton and skeletal animation format in Hedgehog Engine 2 Games&lt;br /&gt;
!&amp;lt;code&amp;gt;.anm.pxd&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;.skl.pxd&amp;lt;/code&amp;gt;&lt;br /&gt;
|[[Frontiers Animation Tools]]&lt;br /&gt;
|-&lt;br /&gt;
|[[PBA|PBA Skeleton]]&lt;br /&gt;
|Physics Based Animation Skeleton for Hedgehog Engine 2 Games&lt;br /&gt;
!&amp;lt;code&amp;gt;.pba&amp;lt;/code&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>PTKay</name></author>
	</entry>
	<entry>
		<id>https://hedgedocs.com/index.php?title=Documentation&amp;diff=479</id>
		<title>Documentation</title>
		<link rel="alternate" type="text/html" href="https://hedgedocs.com/index.php?title=Documentation&amp;diff=479"/>
		<updated>2025-04-08T08:31:33Z</updated>

		<summary type="html">&lt;p&gt;PTKay: Undo revision 478 by PTKay (talk)&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This section lists documentation pages for resources you&#039;ll find in Sonic games. You&#039;ll find information about certain file formats and other general game resources.&lt;br /&gt;
&lt;br /&gt;
== Set-Data ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
!Extension&lt;br /&gt;
!Tools&lt;br /&gt;
|-&lt;br /&gt;
|[[HSON Format|HSON]] (Hedgehog Set Object Notation)&lt;br /&gt;
|Universal object placement representation format.&lt;br /&gt;
|&amp;lt;code&amp;gt;.hson&amp;lt;/code&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== User Interface ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
!Extension&lt;br /&gt;
!Tools&lt;br /&gt;
|-&lt;br /&gt;
|[[NCP File Format|NCP]] (Ninja CellSpriteDraw Project)&lt;br /&gt;
|Describes a user interface in most Hedgehog Engine games.&lt;br /&gt;
|&lt;br /&gt;
* &amp;lt;code&amp;gt;.xncp&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;.yncp&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;.gncp&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;.sncp&amp;lt;/code&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
* [[Kunai]]&lt;br /&gt;
* [[Shuriken]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Archives ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
!Extension&lt;br /&gt;
!Tools&lt;br /&gt;
|-&lt;br /&gt;
|[[NN Chunk Format|NN Chunk]]&lt;br /&gt;
|Generic container format.&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Animation ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
!Extension&lt;br /&gt;
!Tools&lt;br /&gt;
|-&lt;br /&gt;
|[[PXD|PXD Animation]]&lt;br /&gt;
|Skeleton and skeletal animation format in Hedgehog Engine 2 Games&lt;br /&gt;
|&lt;br /&gt;
* &amp;lt;code&amp;gt;.anm.pxd&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;.skl.pxd&amp;lt;/code&amp;gt;&lt;br /&gt;
|[[Frontiers Animation Tools]]&lt;br /&gt;
|-&lt;br /&gt;
|[[PBA|PBA Skeleton]]&lt;br /&gt;
|Physics Based Animation Skeleton for Hedgehog Engine 2 Games&lt;br /&gt;
|&amp;lt;code&amp;gt;.pba&amp;lt;/code&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>PTKay</name></author>
	</entry>
	<entry>
		<id>https://hedgedocs.com/index.php?title=Documentation&amp;diff=478</id>
		<title>Documentation</title>
		<link rel="alternate" type="text/html" href="https://hedgedocs.com/index.php?title=Documentation&amp;diff=478"/>
		<updated>2025-04-08T08:30:25Z</updated>

		<summary type="html">&lt;p&gt;PTKay: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This section lists documentation pages for resources you&#039;ll find in Sonic games. You&#039;ll find information about certain file formats and other general game resources.&lt;br /&gt;
&lt;br /&gt;
== Set-Data ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
!Extension&lt;br /&gt;
!Tools&lt;br /&gt;
|-&lt;br /&gt;
|[[HSON Format|HSON]] (Hedgehog Set Object Notation)&lt;br /&gt;
|Universal object placement representation format.&lt;br /&gt;
|&amp;lt;code&amp;gt;.hson&amp;lt;/code&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== User Interface ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
!Extension&lt;br /&gt;
!Tools&lt;br /&gt;
|-&lt;br /&gt;
|[[NCP File Format|NCP]] (Ninja CellSpriteDraw Project)&lt;br /&gt;
|Describes a user interface in most Hedgehog Engine games.&lt;br /&gt;
|&amp;lt;code&amp;gt;.xncp&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;.yncp&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;.gncp&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;.sncp&amp;lt;/code&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
* [[Kunai]]&lt;br /&gt;
* [[Shuriken]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Archives ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
!Extension&lt;br /&gt;
!Tools&lt;br /&gt;
|-&lt;br /&gt;
|[[NN Chunk Format|NN Chunk]]&lt;br /&gt;
|Generic container format.&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Animation ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
!Extension&lt;br /&gt;
!Tools&lt;br /&gt;
|-&lt;br /&gt;
|[[PXD|PXD Animation]]&lt;br /&gt;
|Skeleton and skeletal animation format in Hedgehog Engine 2 Games&lt;br /&gt;
|&lt;br /&gt;
* &amp;lt;code&amp;gt;.anm.pxd&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;.skl.pxd&amp;lt;/code&amp;gt;&lt;br /&gt;
|[[Frontiers Animation Tools]]&lt;br /&gt;
|-&lt;br /&gt;
|[[PBA|PBA Skeleton]]&lt;br /&gt;
|Physics Based Animation Skeleton for Hedgehog Engine 2 Games&lt;br /&gt;
|&amp;lt;code&amp;gt;.pba&amp;lt;/code&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>PTKay</name></author>
	</entry>
	<entry>
		<id>https://hedgedocs.com/index.php?title=Sonic_Frontiers&amp;diff=470</id>
		<title>Sonic Frontiers</title>
		<link rel="alternate" type="text/html" href="https://hedgedocs.com/index.php?title=Sonic_Frontiers&amp;diff=470"/>
		<updated>2025-04-08T07:52:26Z</updated>

		<summary type="html">&lt;p&gt;PTKay: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Tools ==&lt;br /&gt;
&lt;br /&gt;
=== Animation ===&lt;br /&gt;
* [[Frontiers Animation Tools]]&lt;br /&gt;
&lt;br /&gt;
== Guides ==&lt;br /&gt;
N/A&lt;br /&gt;
&lt;br /&gt;
== Documentation ==&lt;br /&gt;
&lt;br /&gt;
=== Game ===&lt;br /&gt;
* [[Sonic Frontiers DLCs|DLCs]]&lt;br /&gt;
* [[Sonic Frontiers Stage IDs|Stage IDs]]&lt;br /&gt;
* [[Sonic Frontiers Enemy Internal Names|Enemy Internal Names]]&lt;br /&gt;
* [[Sonic Frontiers Script Functions|Script Functions]]&lt;br /&gt;
&lt;br /&gt;
=== File Formats ===&lt;br /&gt;
* [[Sonic Frontiers RFL|Reflection Data]] (.rfl)&lt;br /&gt;
&lt;br /&gt;
=== Objects ===&lt;br /&gt;
* [[Sonic Frontiers Gismos|Gismos]]&lt;br /&gt;
&lt;br /&gt;
== Discoveries ==&lt;br /&gt;
N/A&lt;/div&gt;</summary>
		<author><name>PTKay</name></author>
	</entry>
	<entry>
		<id>https://hedgedocs.com/index.php?title=Sonic_Frontiers&amp;diff=468</id>
		<title>Sonic Frontiers</title>
		<link rel="alternate" type="text/html" href="https://hedgedocs.com/index.php?title=Sonic_Frontiers&amp;diff=468"/>
		<updated>2025-04-08T07:51:29Z</updated>

		<summary type="html">&lt;p&gt;PTKay: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Tools ==&lt;br /&gt;
&lt;br /&gt;
=== Animation ===&lt;br /&gt;
* [[Frontiers Animation Tools]]&lt;br /&gt;
&lt;br /&gt;
== Guides ==&lt;br /&gt;
N/A&lt;br /&gt;
&lt;br /&gt;
== Documentation ==&lt;br /&gt;
&lt;br /&gt;
=== Game ===&lt;br /&gt;
* [[Sonic Frontiers DLCs|DLCs]]&lt;br /&gt;
* [[Sonic Frontiers Stage IDs|Stage IDs]]&lt;br /&gt;
* [[Sonic Frontiers Enemy Internal Names|Enemy Internal Names]]&lt;br /&gt;
* [[Sonic Frontiers Script Functions|Script Functions]]&lt;br /&gt;
&lt;br /&gt;
=== File Formats ===&lt;br /&gt;
* [[Sonic Frontiers RFL|Reflection Data &amp;lt;code&amp;gt;.rfl&amp;lt;/code&amp;gt;]]&lt;br /&gt;
&lt;br /&gt;
=== Objects ===&lt;br /&gt;
* [[Sonic Frontiers Gismos|Gismos]]&lt;br /&gt;
&lt;br /&gt;
== Discoveries ==&lt;br /&gt;
N/A&lt;/div&gt;</summary>
		<author><name>PTKay</name></author>
	</entry>
	<entry>
		<id>https://hedgedocs.com/index.php?title=Sonic_Unleashed&amp;diff=467</id>
		<title>Sonic Unleashed</title>
		<link rel="alternate" type="text/html" href="https://hedgedocs.com/index.php?title=Sonic_Unleashed&amp;diff=467"/>
		<updated>2025-04-08T07:51:13Z</updated>

		<summary type="html">&lt;p&gt;PTKay: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Tools ==&lt;br /&gt;
&lt;br /&gt;
=== Lighting ===&lt;br /&gt;
* [[pfdpackUnleashed]] (*.pfd)&lt;br /&gt;
&lt;br /&gt;
== Guides ==&lt;br /&gt;
&lt;br /&gt;
=== Level Editing ===&lt;br /&gt;
&lt;br /&gt;
* [[How To Use Sonic GLvl with Sonic Unleashed|Sonic GLvl]]&lt;br /&gt;
&lt;br /&gt;
== Documentation ==&lt;br /&gt;
&lt;br /&gt;
* [[Sonic Unleashed Stage IDs|Stage IDs]]&lt;br /&gt;
* [[Unleashed-Generations Havok Collision Attributes|Havok Collision Attributes]]&lt;br /&gt;
&lt;br /&gt;
== Discoveries ==&lt;br /&gt;
&lt;br /&gt;
=== PlayStation 3 ===&lt;br /&gt;
&lt;br /&gt;
* [[Sonic Unleashed Install Screen|Install Screen]]&lt;/div&gt;</summary>
		<author><name>PTKay</name></author>
	</entry>
	<entry>
		<id>https://hedgedocs.com/index.php?title=Sonic_Generations&amp;diff=466</id>
		<title>Sonic Generations</title>
		<link rel="alternate" type="text/html" href="https://hedgedocs.com/index.php?title=Sonic_Generations&amp;diff=466"/>
		<updated>2025-04-08T07:51:03Z</updated>

		<summary type="html">&lt;p&gt;PTKay: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Tools ==&lt;br /&gt;
&lt;br /&gt;
=== Animation ===&lt;br /&gt;
* [[evsxml]] (.evs)&lt;br /&gt;
&lt;br /&gt;
=== Lighting ===&lt;br /&gt;
* [[cropGIA]]&lt;br /&gt;
* [[SeparateGIA]]&lt;br /&gt;
* [[FxPipelineResolutionChanger]]&lt;br /&gt;
&lt;br /&gt;
=== Collision ===&lt;br /&gt;
* [[Collision2fbx (Sonic Generations)|collision2fbx]] (.phy.hkx)&lt;br /&gt;
&lt;br /&gt;
=== Models ===&lt;br /&gt;
* [[Unleashed2Generations]] (*.model / *.terrain-model / *.material)&lt;br /&gt;
* [[slwModel2Gens]] (*.model)&lt;br /&gt;
* [[TuringFixer]]&lt;br /&gt;
&lt;br /&gt;
=== Stages ===&lt;br /&gt;
* [[TransformGensStage]]&lt;br /&gt;
* [[Sonic GLvl]]&lt;br /&gt;
&lt;br /&gt;
=== Text ===&lt;br /&gt;
* [[fcoEditor]] (.fco / .fte)&lt;br /&gt;
&lt;br /&gt;
=== Other ===&lt;br /&gt;
* [[BscPack]]&lt;br /&gt;
&lt;br /&gt;
== Guides ==&lt;br /&gt;
&lt;br /&gt;
=== Level Editing ===&lt;br /&gt;
&lt;br /&gt;
* [[How To Use Sonic GLvl with Sonic Generations|Sonic GLvl]]&lt;br /&gt;
* [[How To Import Custom Terrain in Sonic Generations|Importing Terrain]]&lt;br /&gt;
* [[How To Import Custom Collision in Sonic Generations|Importing Collision]]&lt;br /&gt;
* [[How To Specify Custom Rank Times for Sonic Generations|Custom Rank Times]]&lt;br /&gt;
* [[Troubleshooting Custom Level Issues in Sonic Generations|Troubleshooting]]&lt;br /&gt;
&lt;br /&gt;
== Documentation ==&lt;br /&gt;
&lt;br /&gt;
* [[Sonic Generations Stage IDs|Stage IDs]]&lt;br /&gt;
* [[Sonic Generations Event List|Set Object Event List]]&lt;br /&gt;
* [[Sonic Generations Camera Types|Camera Types]]&lt;br /&gt;
* [[Unleashed-Generations Havok Collision Attributes|Havok Collision Attributes]]&lt;br /&gt;
* [[Sound File Locations]]&lt;br /&gt;
&lt;br /&gt;
== Discoveries ==&lt;br /&gt;
&lt;br /&gt;
=== Common (2011/2024) ===&lt;br /&gt;
&lt;br /&gt;
==== HUD ====&lt;br /&gt;
&lt;br /&gt;
* [[Unused Time Eater Gauge]]&lt;br /&gt;
&lt;br /&gt;
==== Code ====&lt;br /&gt;
&lt;br /&gt;
* [[Leftover code from Unleashed in Generations|Unleashed Leftovers]]&lt;br /&gt;
&lt;br /&gt;
=== 2024 ===&lt;br /&gt;
&lt;br /&gt;
==== Stages ====&lt;br /&gt;
&lt;br /&gt;
* [[TestCourse]]&lt;/div&gt;</summary>
		<author><name>PTKay</name></author>
	</entry>
	<entry>
		<id>https://hedgedocs.com/index.php?title=HedgeDocs:About&amp;diff=449</id>
		<title>HedgeDocs:About</title>
		<link rel="alternate" type="text/html" href="https://hedgedocs.com/index.php?title=HedgeDocs:About&amp;diff=449"/>
		<updated>2025-04-02T08:44:38Z</updated>

		<summary type="html">&lt;p&gt;PTKay: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;HedgeDocs is a MediaWiki powered webpage that contains several guides, tools and documentation pages meant to help users creating modifications for Sonic the Hedgehog games.&lt;br /&gt;
&lt;br /&gt;
== Permissions ==&lt;br /&gt;
In order to prevent spam in the wiki, you need an registered account to be able to edit and create pages. In addition, the e-mail address associated with the account also needs to be verified. Please check your inbox for a confirmation e-mail, including your spam folder.&lt;br /&gt;
&lt;br /&gt;
== Creating Pages ==&lt;br /&gt;
When creating pages in the wiki, please try to make it fit with the pages that already exist. Try to follow their style as closely as possible.&lt;br /&gt;
&lt;br /&gt;
=== Templates ===&lt;br /&gt;
HedgeDocs provides you custom templates that help you when creating specific pages in the wiki. They are listed in the table below, alongside their purpose:&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|[[Template:Notice|Notice]]&lt;br /&gt;
|Presents a warning, a note or a tip in a coloured container.&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
|[[Template:ToolInfobox|ToolInfoBox]]&lt;br /&gt;
|An information container used for tool pages.&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>PTKay</name></author>
	</entry>
	<entry>
		<id>https://hedgedocs.com/index.php?title=NCP_File_Format&amp;diff=440</id>
		<title>NCP File Format</title>
		<link rel="alternate" type="text/html" href="https://hedgedocs.com/index.php?title=NCP_File_Format&amp;diff=440"/>
		<updated>2025-03-26T09:25:23Z</updated>

		<summary type="html">&lt;p&gt;PTKay: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Notice|type=info|content=This page is written as a guide on how to go through an NCP file using 010 Editor with the [https://github.com/tge-was-taken/010-Editor-Templates/blob/master/templates/sonic_xncp_yncp.bt XNCP Template]}}&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;NCP&#039;&#039;&#039; (Ninja CellSpriteDraw Project) is a file format used to specify user interfaces in most Hedgehog Engine games. There are several variants of this file format, each with it&#039;s own target platform:&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;&amp;lt;u&amp;gt;X&amp;lt;/u&amp;gt;&#039;&#039;&#039;NCP - Used on PC / Xbox&lt;br /&gt;
* &#039;&#039;&#039;&amp;lt;u&amp;gt;Y&amp;lt;/u&amp;gt;&#039;&#039;&#039;NCP - Used on PlayStation 3&lt;br /&gt;
* &#039;&#039;&#039;&amp;lt;u&amp;gt;G&amp;lt;/u&amp;gt;&#039;&#039;&#039;NCP - Used on GameCube / Wii&lt;br /&gt;
* &#039;&#039;&#039;&amp;lt;u&amp;gt;S&amp;lt;/u&amp;gt;&#039;&#039;&#039;NCP - Used on PlayStation 2&lt;br /&gt;
&lt;br /&gt;
In this page, you will read about how to open an NCP file in 010 editor and how this file is structured.&lt;br /&gt;
&lt;br /&gt;
== Requirements ==&lt;br /&gt;
First of all, you will need to download the [https://www.sweetscape.com/010editor/ 010 Editor]. This program is used for hex editing, and in our case, to modify XNCP files. You&#039;ll also need to download the [https://github.com/tge-was-taken/010-Editor-Templates/blob/master/templates/sonic_xncp_yncp.bthttps://github.com/tge-was-taken/010-Editor-Templates/blob/master/templates/sonic_xncp_yncp.bt XNCP Template]. Essentially, this file will make it so that you can read and understand the XNCP file&#039;s contents, otherwise you&#039;d only see hex numbers, and that&#039;s not exactly readable.&lt;br /&gt;
&lt;br /&gt;
== Opening an XNCP file ==&lt;br /&gt;
After installing the 010 Editor, and downloaded the XNCP Template, it&#039;s time to open a file.&lt;br /&gt;
&lt;br /&gt;
Open the 010 Editor and click on &#039;&#039;&#039;File &amp;gt; Open File...&#039;&#039;&#039;, and open the file that you need to edit.&lt;br /&gt;
[[File:010 Editor open file.png|center|thumb|397x397px]]&lt;br /&gt;
After opening the file, you&#039;ll see a bunch of numbers. Don&#039;t get freaked out, this is normal. These are the contents of the XNCP file.&lt;br /&gt;
[[File:010 editor xncp hex.png|center|thumb|702x702px]]&lt;br /&gt;
Now, you need to go to &#039;&#039;&#039;Templates &amp;gt; Open Template...&#039;&#039;&#039;, and open the file that we downloaded before. It&#039;s called &#039;&#039;&#039;sonic_xncp_yncp.bt&#039;&#039;&#039;.&lt;br /&gt;
[[File:010 Editor open template.png|center|thumb|343x343px]]&lt;br /&gt;
After opening the file, a window should pop up with the template&#039;s code. You can just ignore this window and hide it wherever you&#039;d like, you won&#039;t need to modify this.&lt;br /&gt;
&lt;br /&gt;
Now, go back to &#039;&#039;&#039;Templates&#039;&#039;&#039; and click on &#039;&#039;&#039;Run Template&#039;&#039;&#039;. This should now make the numbers have colorful backgrounds, and a new window will appear below the hex view.&lt;br /&gt;
[[File:010 Editor xncp template executed.png|center|thumb|944x944px]]&lt;br /&gt;
This new window that has appeared will be your workspace. This&#039;ll be the way in which you edit all aspects of a UI file. Click on the &#039;&#039;&#039;struct TFAPC File&#039;&#039;&#039; dropdown, then &#039;&#039;&#039;struct TFAPCEmbeddedRes Resources[0]&#039;&#039;&#039;, then &#039;&#039;&#039;struct TNNNCPJChunk CsdmProject&#039;&#039;&#039;, and then on &#039;&#039;&#039;struct TCSDNode Root&#039;&#039;&#039;. Now you&#039;ll have a few variables here; I&#039;ll explain what some of them mean!&lt;br /&gt;
&lt;br /&gt;
== The structure of an XNCP file (Resource 0) ==&lt;br /&gt;
&#039;&#039;&#039;Scenes&#039;&#039;&#039; are essentially the containers for a specific group of UI elements, think of it like a folder inside a folder, and you&#039;ll need &#039;&#039;&#039;SceneIDTable&#039;&#039;&#039; to understand which Scene is what. This table contains the name and index of each Scene (e.g: Scene &amp;quot;gauge&amp;quot; in ui_gameplay.xncp is the &amp;quot;folder&amp;quot; that contains all elements of the boost bar in the HUD). Scenes also have a few variables that may be of interest, like:&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;ZIndex&#039;&#039;&#039;, this is essentially the layer in which the UI elements (known as &#039;&#039;&#039;Casts&#039;&#039;&#039;) will render&lt;br /&gt;
* &#039;&#039;&#039;Groups&#039;&#039;&#039;, are exactly what they are called, they are groups of &#039;&#039;&#039;Casts&#039;&#039;&#039;&lt;br /&gt;
* &#039;&#039;&#039;SubImages&#039;&#039;&#039;, these are essentially textures that have been cut in specific portions to be used by Casts&lt;br /&gt;
* &#039;&#039;&#039;CastDictionary&#039;&#039;&#039;, this will be one of the most useful variables when editing XNCP files, these contain all the names, indexes, and group indexes needed to find a specific Cast in the scene.&lt;br /&gt;
* &#039;&#039;&#039;AnimationKeyFrameDataList&#039;&#039;&#039;, &#039;&#039;&#039;AnimationDictionary&#039;&#039;&#039;, &#039;&#039;&#039;AnimationFrameDataList&#039;&#039;&#039;, &#039;&#039;&#039;AnimationData2List&#039;&#039;&#039;, all of these control animations. You can read more about them later on in this page.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;And the most important one of all:&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Casts&#039;&#039;&#039;, these are the UI elements of XNCP files, these contain the necessary data to display text, move other elements, or display an image.&lt;br /&gt;
&lt;br /&gt;
== The structure of a Cast ==&lt;br /&gt;
The Cast has several variables that you can change:&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Field04&#039;&#039;&#039; controls the type of the cast, these types can be:&lt;br /&gt;
&lt;br /&gt;
 0 - No Draw (invisible)&lt;br /&gt;
 1 - Sprite&lt;br /&gt;
 2 - Font&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;IsEnabled&#039;&#039;&#039; will enable and disable a cast. 0 for disabled and 1 for enabled&lt;br /&gt;
** &#039;&#039;&#039;NOTE&#039;&#039;&#039;: If you&#039;re disabling a cast, make sure that it does not have children, or it might make the UI look weird!&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Field0C&#039;&#039;&#039;, &#039;&#039;&#039;Field14&#039;&#039;&#039;, &#039;&#039;&#039;Field1C&#039;&#039;&#039;, &#039;&#039;&#039;Field24&#039;&#039;&#039; change the positions of the corners of the cast, Top Left, Bottom Left, Top Right, Bottom Right respectively. These only really affect casts that render sprites&lt;br /&gt;
* &#039;&#039;&#039;Offset&#039;&#039;&#039; changes the position of the element relative to its parent. This is useful for moving elements around, although it&#039;s not used much.&lt;br /&gt;
* &#039;&#039;&#039;Field30Data&#039;&#039;&#039; contains most of the fun things that you can edit in a Cast, like:&lt;br /&gt;
&lt;br /&gt;
 Translation&lt;br /&gt;
 Rotation&lt;br /&gt;
 Scale&lt;br /&gt;
 Color - where the variable &amp;quot;Color&amp;quot; will change the main color of the image, and GradientTopLeft,BottomLeft,TopRight,BottomRight will change the colors of the corners of the image&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Field40Data&#039;&#039;&#039; contains data about a cast&#039;s subimages. If the cast is a nodraw or font type, this will be all set to -1 most of the time. Each of these variables is a holder for a specific index of a subimage. However, only the first one is used all the time, all of the other ones are for animations.&lt;br /&gt;
&lt;br /&gt;
== The structure of an XNCP file (Resource 1) ==&lt;br /&gt;
Before, I wrote that you needed to go into Resource 0. This is because Resource 0 has most of the cool stuff that you can edit, while Resource 1 contains data about image file locations.&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;TextureList&#039;&#039;&#039;, this is a list of all the textures used by the UI... this is pretty much it. Each texture will have a name, and it&#039;s index will be the number specified next to the &amp;quot;Textures&amp;quot; name.&lt;br /&gt;
[[File:010 Editor xncp texture list.png|center|thumb|813x813px]]&lt;br /&gt;
&lt;br /&gt;
== XNCP Animations ==&lt;br /&gt;
XNCP animations for a specific scene are listed in &#039;&#039;&#039;AnimationDictionary&#039;&#039;&#039;, which behaves the same way as the CastDictionary:&lt;br /&gt;
[[File:XNCP Animation Dictionary.png|center|thumb|658x658px]]&lt;br /&gt;
In &#039;&#039;&#039;AnimationFrameDataList&#039;&#039;&#039;, it’s possible to control the amount of keyframes that a specific animation has:&lt;br /&gt;
[[File:XNCP Animation Frame Data List.png|center|thumb|503x503px]]&lt;br /&gt;
To control the speed of these animations, we have a single field in the scene that controls the frame rate:&lt;br /&gt;
[[File:XNCP Animation Framerate.png|center|thumb|694x694px]]&lt;br /&gt;
&#039;&#039;&#039;AnimationKeyFrameDataList&#039;&#039;&#039; contains the information for all the keyframes in the animation, as well as the casts that belong in that animation.&lt;br /&gt;
[[File:XNCP Animation Key Frame Data List.png|center|thumb|628x628px]]&lt;br /&gt;
In the screenshot above, we’re seeing the data referring to Animation 0 (&#039;&#039;&#039;Intro_Anim&#039;&#039;&#039; when following the dictionary). XNCPs usually follow this naming scheme for animations:&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Intro_Anim&#039;&#039;&#039; - Animation that plays when the scene appears&lt;br /&gt;
* &#039;&#039;&#039;Usual_Anim&#039;&#039;&#039; - Normally a looping animation, is used during the scenes visible state&lt;br /&gt;
* &#039;&#039;&#039;Outro_Anim&#039;&#039;&#039; - Played before the scene disappears They can obviously store other animations, and those have their own names.&lt;br /&gt;
&lt;br /&gt;
So, in Intro_Anim, we have several &#039;&#039;&#039;CastAnimationData&#039;&#039;&#039;. These control what happens to each cast in this animation. Let’s see what happens to Cast 0 (position, which usually is the parent of all casts in a scene and controls their position)...&lt;br /&gt;
[[File:XNCP Cast Animation Data.png|center|thumb|511x511px]]&lt;br /&gt;
Seems like we have flags! It’s a bitfield, and it controls what actually animates in this cast. Here’s the meaning of each bit:&lt;br /&gt;
 0000 0000(0)   - Nothing&lt;br /&gt;
 0000 0001(1)   - Hide Flag&lt;br /&gt;
 0000 0010(2)   - X Position&lt;br /&gt;
 0000 0100(4)   - Y Position&lt;br /&gt;
 0000 1000(8)   - Rotation&lt;br /&gt;
 0001 0000(16)  - X Scale&lt;br /&gt;
 0010 0000(32)  - Y Scale&lt;br /&gt;
 0100 0000(64)  - SubImage&lt;br /&gt;
 1000 0000(128) - Colour Mask&lt;br /&gt;
So, with this info, we now know what animates in the position cast: It is its X Position. The &#039;&#039;&#039;CastAnimationDataSubData1List&#039;&#039;&#039; is what stores the actual animation data. The amount of entries in this list depends on the number of bits signaled in the &#039;&#039;&#039;Flags&#039;&#039;&#039; field. The first entry in the list is referring to the first bit signaled from right to left. So by that logic, the list only has one entry.&lt;br /&gt;
[[File:XNCP Cast Animation Data Sub Data 1 List.png|center|thumb|500x500px]]&lt;br /&gt;
And there we go. This entry is what stores the actual &#039;&#039;&#039;KeyFrames&#039;&#039;&#039;. Let’s open one up to see how it is.&lt;br /&gt;
[[File:XNCP Key Frame.png|center|thumb|410x410px]]&lt;br /&gt;
Scary right? I don’t understand much of what’s going on here, but here we go.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Frame&#039;&#039;&#039; defines which global frame this keyframe is in. Remember &#039;&#039;&#039;AnimationFrameDataList&#039;&#039;&#039;? Yeah, this animation has a total of 10 frames, and is played at 60 FPS. For each frame, you define the global frame that it refers to. So, since this cast controls the position of the entire scene, and this is the intro animation, maybe the other keyframe has the frame field set to 10? We’ll see about that shortly.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Data&#039;&#039;&#039; store the data of this keyframe. The meaning of data changes depending on the flags. Data can be:&lt;br /&gt;
&lt;br /&gt;
* A position&lt;br /&gt;
* An angle (for rotation)&lt;br /&gt;
* A size (for X and Y scale)&lt;br /&gt;
* An index (for SubImage)&lt;br /&gt;
* A colour (for ColorMask)&lt;br /&gt;
&lt;br /&gt;
According to the flags of this specific cast, these keyframes are supposed to control the X Position, which means that “Data” actually represents the X Position of the cast in this frame.&lt;br /&gt;
&lt;br /&gt;
The &#039;&#039;&#039;Offset&#039;&#039;&#039; and &#039;&#039;&#039;Offset2&#039;&#039;&#039; fields control the casts&#039; Offset position value, where &amp;quot;Offset&amp;quot; is X, while &amp;quot;Offset2&amp;quot; is Y. For example, the buttons in the title screen of Sonic Generations use these values to stay in place when they&#039;re clicked since they get scaled up and down. Let’s look at the second keyframe:&lt;br /&gt;
[[File:XNCP Key Frame 2.png|center|thumb|356x356px]]&lt;br /&gt;
As we suspected, the &#039;&#039;&#039;Frame&#039;&#039;&#039; field is now set to 10, meaning this is referring to the last frame in the animation. The value in &#039;&#039;&#039;Data&#039;&#039;&#039; has increased, so this means that &#039;&#039;&#039;this cast slides from left to right&#039;&#039;&#039; in this animation!&lt;br /&gt;
&lt;br /&gt;
Looking at the remaining &#039;&#039;&#039;CastAnimationData&#039;&#039;&#039; entries, we can see that none of them animate, since their &#039;&#039;&#039;Flags&#039;&#039;&#039; field is set to 0. So we can conclude that &#039;&#039;&#039;Intro_Anim&#039;&#039;&#039; makes the &#039;&#039;&#039;position&#039;&#039;&#039; cast slide from &#039;&#039;&#039;left to right&#039;&#039;&#039;, and since “position” controls the entire scene, every single cast from this scene slides from left to right in this animation!&lt;br /&gt;
[[File:XNCP Cast Animation Data No Anim.png|center|thumb|571x571px]]&lt;br /&gt;
&lt;br /&gt;
== Additional Notes ==&lt;br /&gt;
An animation can only be looped using code, so that can&#039;t be controlled via the XNCP. However, &#039;&#039;&#039;Field00&#039;&#039;&#039; in &#039;&#039;&#039;CastAnimationDataSubData&#039;&#039;&#039; does seem to control how fast a loop occurs, where the value &#039;&#039;&#039;1&#039;&#039;&#039; seems to loop it with a delay, while &#039;&#039;&#039;2&#039;&#039;&#039; makes it loop smoother.&lt;br /&gt;
&lt;br /&gt;
== Conclusion ==&lt;br /&gt;
Hope I explained XNCP animations well enough. Have fun!&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;PS: there’s also AnimationData2List but...&#039;&#039;&lt;br /&gt;
[[File:XNCP Animation Data 2 List.png|center|thumb|629x629px]]&lt;/div&gt;</summary>
		<author><name>PTKay</name></author>
	</entry>
	<entry>
		<id>https://hedgedocs.com/index.php?title=Sonic_Unleashed_Stage_IDs&amp;diff=439</id>
		<title>Sonic Unleashed Stage IDs</title>
		<link rel="alternate" type="text/html" href="https://hedgedocs.com/index.php?title=Sonic_Unleashed_Stage_IDs&amp;diff=439"/>
		<updated>2025-03-26T09:09:09Z</updated>

		<summary type="html">&lt;p&gt;PTKay: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
This page contains a list of all the Stage IDs&amp;lt;ref&amp;gt;Credits to archxe and Hedgeturd for making a list of all the stage IDs!&amp;lt;/ref&amp;gt; used in Sonic Unleashed. Stages don&#039;t follow a strict format, but they&#039;re generally like this:&amp;lt;syntaxhighlight lang=&amp;quot;text&amp;quot;&amp;gt;Act{Day/Night}_{country}&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Daytime ==&lt;br /&gt;
&lt;br /&gt;
=== Apotos ===&lt;br /&gt;
{| class=&amp;quot;wikitable sortable&amp;quot;&lt;br /&gt;
!Stage&lt;br /&gt;
!ID&lt;br /&gt;
!DLC&lt;br /&gt;
!Geometry ID&lt;br /&gt;
|-&lt;br /&gt;
|Windmill Isle Act 1&lt;br /&gt;
|ActD_MykonosAct1 &lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Windmill Isle Act 1-2&lt;br /&gt;
|ActD_SubMykonos_04 &lt;br /&gt;
|X&lt;br /&gt;
|ActD_MykonosAct1 &lt;br /&gt;
|-&lt;br /&gt;
|Windmill Isle Act 2&lt;br /&gt;
|ActD_MykonosAct2&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Windmill Isle Act 2-2&lt;br /&gt;
|ActD_SubMykonos_05&lt;br /&gt;
|X&lt;br /&gt;
|ActD_MykonosAct2&lt;br /&gt;
|-&lt;br /&gt;
|Windmill Isle Act 3&lt;br /&gt;
|ActD_SubMykonos_01&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Windmill Isle Act 4&lt;br /&gt;
|ActD_SubMykonos_02&lt;br /&gt;
|X&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Town&lt;br /&gt;
|Town_Mykonos&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Entrance Stage&lt;br /&gt;
|Town_MykonosETF&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Mazuri ===&lt;br /&gt;
{| class=&amp;quot;wikitable sortable&amp;quot;&lt;br /&gt;
!Stage&lt;br /&gt;
!ID&lt;br /&gt;
!DLC&lt;br /&gt;
!Geometry ID&lt;br /&gt;
|-&lt;br /&gt;
|Savannah Citadel Act 1&lt;br /&gt;
|ActD_Africa&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Savannah Citadel Act 1-2&lt;br /&gt;
|ActD_SubAfrica_05&lt;br /&gt;
|X&lt;br /&gt;
|ActD_Africa&lt;br /&gt;
|-&lt;br /&gt;
|Savannah Citadel Act 2&lt;br /&gt;
|ActD_SubAfrica_01&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Savannah Citadel Act 3&lt;br /&gt;
|ActD_SubAfrica_03&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Savannah Citadel Act 3-2&lt;br /&gt;
|ActD_SubAfrica_06&lt;br /&gt;
|X&lt;br /&gt;
|ActD_SubAfrica_03&lt;br /&gt;
|-&lt;br /&gt;
|Savannah Citadel Act 4&lt;br /&gt;
|ActD_SubAfrica_02&lt;br /&gt;
|X&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Savannah Citadel Act 5&lt;br /&gt;
|ActD_SubAfrica_04&lt;br /&gt;
|X&lt;br /&gt;
|BossEggBeetle&lt;br /&gt;
|-&lt;br /&gt;
|Egg Beetle&lt;br /&gt;
|BossEggBeetle&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Town&lt;br /&gt;
|Town_Africa&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Entrance Stage&lt;br /&gt;
|Town_AfricaETF&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Spagonia ===&lt;br /&gt;
{| class=&amp;quot;wikitable sortable&amp;quot;&lt;br /&gt;
!Stage&lt;br /&gt;
!ID&lt;br /&gt;
!DLC&lt;br /&gt;
!Geometry ID&lt;br /&gt;
|-&lt;br /&gt;
|Rooftop Run Act 1&lt;br /&gt;
|ActD_EU&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Rooftop Run Act 1-2&lt;br /&gt;
|ActD_SubEU_05&lt;br /&gt;
|X&lt;br /&gt;
|ActD_EU&lt;br /&gt;
|-&lt;br /&gt;
|Rooftop Run Act 2&lt;br /&gt;
|ActD_SubEU_01&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Rooftop Run Act 2-2&lt;br /&gt;
|ActD_SubEU_06&lt;br /&gt;
|X&lt;br /&gt;
|ActD_SubEU_01&lt;br /&gt;
|-&lt;br /&gt;
|Rooftop Run Act 3&lt;br /&gt;
|ActD_SubEU_02&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Rooftop Run Act 4 &lt;br /&gt;
|ActD_SubEU_03&lt;br /&gt;
|X&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Rooftop Run Act 5&lt;br /&gt;
|ActD_SubEU_04&lt;br /&gt;
|X&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Egg Devil Ray&lt;br /&gt;
|BossEggRayBird&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Tornado Defence Act 1&lt;br /&gt;
|ExStageTails1&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Town&lt;br /&gt;
|Town_EuropeanCity&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Entrance Stage&lt;br /&gt;
|Town_EuropeanCityETF&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Professor Pickle’s Lab&lt;br /&gt;
|Town_EULabo&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Chun-Nan ===&lt;br /&gt;
{| class=&amp;quot;wikitable sortable&amp;quot;&lt;br /&gt;
!Stage&lt;br /&gt;
!ID&lt;br /&gt;
!DLC&lt;br /&gt;
!Geometry ID&lt;br /&gt;
|-&lt;br /&gt;
|Dragon Road Act 1&lt;br /&gt;
|ActD_China &lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Dragon Road Act 1-2&lt;br /&gt;
|ActD_SubChina_05&lt;br /&gt;
|X&lt;br /&gt;
|ActD_China&lt;br /&gt;
|-&lt;br /&gt;
|Dragon Road Act 2&lt;br /&gt;
|ActD_SubChina_03 &lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Dragon Road Act 2-2&lt;br /&gt;
|ActD_SubChina_06&lt;br /&gt;
|X&lt;br /&gt;
|ActD_SubChina_03 &lt;br /&gt;
|-&lt;br /&gt;
|Dragon Road Act 3&lt;br /&gt;
|ActD_SubChina_04&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Dragon Road Act 4&lt;br /&gt;
|ActD_SubChina_01 &lt;br /&gt;
|X&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Dragon Road Act 5&lt;br /&gt;
|ActD_SubChina_02 &lt;br /&gt;
|X&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Town&lt;br /&gt;
|Town_China&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Entrance Stage&lt;br /&gt;
|Town_ChinaETF&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Holoska ===&lt;br /&gt;
{| class=&amp;quot;wikitable sortable&amp;quot;&lt;br /&gt;
!Stage&lt;br /&gt;
!ID&lt;br /&gt;
!DLC&lt;br /&gt;
!Geometry ID&lt;br /&gt;
|-&lt;br /&gt;
|Cool Edge Act 1&lt;br /&gt;
|ActD_Snow&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Cool Edge Act 1-2&lt;br /&gt;
|ActD_SubSnow_04 &lt;br /&gt;
|X&lt;br /&gt;
|ActD_Snow&lt;br /&gt;
|-&lt;br /&gt;
|Cool Edge Act 2&lt;br /&gt;
|ActD_SubSnow_01 &lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Cool Edge Act 2-2&lt;br /&gt;
|ActD_SubSnow_05 &lt;br /&gt;
|X&lt;br /&gt;
|ActD_SubChina_03 &lt;br /&gt;
|-&lt;br /&gt;
|Cool Edge Act 3&lt;br /&gt;
|ActD_SubSnow_02 &lt;br /&gt;
|X&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Cool Edge Act 4&lt;br /&gt;
|ActD_SubSnow_03 &lt;br /&gt;
|X&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Town&lt;br /&gt;
|Town_Snow&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Entrance Stage&lt;br /&gt;
|Town_SnowETF&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Shamar ===&lt;br /&gt;
{| class=&amp;quot;wikitable sortable&amp;quot;&lt;br /&gt;
!Stage&lt;br /&gt;
!ID&lt;br /&gt;
!DLC&lt;br /&gt;
!Geometry ID&lt;br /&gt;
|-&lt;br /&gt;
|Arid Sands Act 1&lt;br /&gt;
|ActD_Petra &lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Arid Sands Act 1-2&lt;br /&gt;
|ActD_SubPetra_04&lt;br /&gt;
|X&lt;br /&gt;
|ActD_Petra&lt;br /&gt;
|-&lt;br /&gt;
|Arid Sands Act 2&lt;br /&gt;
|ActD_SubPetra_03&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Arid Sands Act 3&lt;br /&gt;
|ActD_SubPetra_02&lt;br /&gt;
|X&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Town&lt;br /&gt;
|Town_PetraCapital&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Entrance Stage&lt;br /&gt;
|Town_PetraCapitalETF&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Professor Pickle’s Lab&lt;br /&gt;
|Town_PetraLabo&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Empire City ===&lt;br /&gt;
{| class=&amp;quot;wikitable sortable&amp;quot;&lt;br /&gt;
!Stage&lt;br /&gt;
!ID&lt;br /&gt;
!DLC&lt;br /&gt;
!Geometry ID&lt;br /&gt;
|-&lt;br /&gt;
|Skyscraper Scamper Act 1&lt;br /&gt;
|ActD_NY&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Skyscraper Scamper Act 1-2&lt;br /&gt;
|ActD_SubNY_03&lt;br /&gt;
|X&lt;br /&gt;
|ActD_NY&lt;br /&gt;
|-&lt;br /&gt;
|Skyscraper Scamper Act 2&lt;br /&gt;
|ActD_SubNY_01&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Skyscraper Scamper Act 3&lt;br /&gt;
|ActD_SubNY_02&lt;br /&gt;
|X&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Town&lt;br /&gt;
|Town_NYCity&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Entrance Stage&lt;br /&gt;
|Town_NYCityETF&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Adabat ===&lt;br /&gt;
{| class=&amp;quot;wikitable sortable&amp;quot;&lt;br /&gt;
!Stage&lt;br /&gt;
!ID&lt;br /&gt;
!DLC&lt;br /&gt;
!Geometry ID&lt;br /&gt;
|-&lt;br /&gt;
|Jungle Joyride Act 1&lt;br /&gt;
|ActD_Beach &lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Jungle Joyride Act 1-2&lt;br /&gt;
|ActD_SubBeach_05&lt;br /&gt;
|X&lt;br /&gt;
|ActD_Beach &lt;br /&gt;
|-&lt;br /&gt;
|Jungle Joyride Act 2&lt;br /&gt;
|ActD_SubBeach_02&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Jungle Joyride Act 3&lt;br /&gt;
|ActD_SubBeach_04&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Jungle Joyride Act 4&lt;br /&gt;
|ActD_SubBeach_01&lt;br /&gt;
|X&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Jungle Joyride Act 5&lt;br /&gt;
|ActD_SubBeach_03&lt;br /&gt;
|X&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Egg Lancer&lt;br /&gt;
|BossEggLancer&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Town&lt;br /&gt;
|Town_SouthEastAsia&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Entrance Stage&lt;br /&gt;
|Town_SouthEastAsiaETF&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Night ==&lt;br /&gt;
&lt;br /&gt;
=== Apotos ===&lt;br /&gt;
{| class=&amp;quot;wikitable sortable&amp;quot;&lt;br /&gt;
!Stage&lt;br /&gt;
!ID&lt;br /&gt;
!DLC&lt;br /&gt;
!Geometry ID&lt;br /&gt;
|-&lt;br /&gt;
|Windmill Isle Act 1&lt;br /&gt;
|ActN_MykonosEvil&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Windmill Isle Act 1-2&lt;br /&gt;
|ActN_SubMykonos_03 &lt;br /&gt;
|X&lt;br /&gt;
|ActN_MykonosEvil&lt;br /&gt;
|-&lt;br /&gt;
|Windmill Isle Act 1-3&lt;br /&gt;
|ActN_SubMykonos_04&lt;br /&gt;
|X&lt;br /&gt;
|ActN_MykonosEvil&lt;br /&gt;
|-&lt;br /&gt;
|Windmill Isle Act 2&lt;br /&gt;
|ActN_SubMykonos_01 &lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Town&lt;br /&gt;
|Town_Mykonos_Night&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Entrance Stage&lt;br /&gt;
|Town_MykonosETF_Night&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Mazuri ===&lt;br /&gt;
{| class=&amp;quot;wikitable sortable&amp;quot;&lt;br /&gt;
!Stage&lt;br /&gt;
!ID&lt;br /&gt;
!DLC&lt;br /&gt;
!Geometry ID&lt;br /&gt;
|-&lt;br /&gt;
|Savannah Citadel Act 1&lt;br /&gt;
|ActN_AfricaEvil&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Savannah Citadel Act 2&lt;br /&gt;
|ActN_SubAfrica_01&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Savannah Citadel Act 3&lt;br /&gt;
|ActN_SubAfrica_02&lt;br /&gt;
|X&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Savannah Citadel Act 4&lt;br /&gt;
|ActN_SubAfrica_03&lt;br /&gt;
|X&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Town&lt;br /&gt;
|Town_Africa_Night&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Entrance Stage&lt;br /&gt;
|Town_AfricaETF_Night&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Spagonia ===&lt;br /&gt;
{| class=&amp;quot;wikitable sortable&amp;quot;&lt;br /&gt;
!Stage&lt;br /&gt;
!ID&lt;br /&gt;
!DLC&lt;br /&gt;
!Geometry ID&lt;br /&gt;
|-&lt;br /&gt;
|Rooftop Run Act 1&lt;br /&gt;
|ActN_EUEvil &lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Rooftop Run Act 1-2&lt;br /&gt;
|ActN_SubEU_02&lt;br /&gt;
|X&lt;br /&gt;
|ActN_EUEvil &lt;br /&gt;
|-&lt;br /&gt;
|Rooftop Run Act 2&lt;br /&gt;
|ActN_SubEU_01&lt;br /&gt;
|X&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Town&lt;br /&gt;
|Town_EuropeanCity_Night&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Entrance Stage&lt;br /&gt;
|Town_EuropeanCityETF_Night&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Professor Pickle’s Lab&lt;br /&gt;
|Town_EULabo_Night&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Chun-Nan ===&lt;br /&gt;
{| class=&amp;quot;wikitable sortable&amp;quot;&lt;br /&gt;
!Stage&lt;br /&gt;
!ID&lt;br /&gt;
!DLC&lt;br /&gt;
!Geometry ID&lt;br /&gt;
|-&lt;br /&gt;
|Dragon Road Act 1&lt;br /&gt;
|ActN_ChinaEvil&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Dragon Road Act 1-2&lt;br /&gt;
|ActN_SubChina_03&lt;br /&gt;
|X&lt;br /&gt;
|ActN_ChinaEvil&lt;br /&gt;
|-&lt;br /&gt;
|Dragon Road Act 2&lt;br /&gt;
|ActN_SubChina_01&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Dragon Road Act 3&lt;br /&gt;
|ActN_SubChina_02&lt;br /&gt;
|X&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Dark Gaia Phoenix&lt;br /&gt;
|BossPhoenix&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Town&lt;br /&gt;
|Town_China_Night&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Entrance Stage&lt;br /&gt;
|Town_ChinaETF_Night&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Holoska ===&lt;br /&gt;
{| class=&amp;quot;wikitable sortable&amp;quot;&lt;br /&gt;
!Stage&lt;br /&gt;
!ID&lt;br /&gt;
!DLC&lt;br /&gt;
!Geometry ID&lt;br /&gt;
|-&lt;br /&gt;
|Cool Edge Act 1&lt;br /&gt;
|ActN_SnowEvil&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Cool Edge Act 2&lt;br /&gt;
|ActN_SubSnow_01 &lt;br /&gt;
|X&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Cool Edge Act 3&lt;br /&gt;
|ActN_SubSnow_02&lt;br /&gt;
|X&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Dark Gaia Moray&lt;br /&gt;
|BossDarkGaiaMoray  &lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Town&lt;br /&gt;
|Town_Snow_Night&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Entrance Stage&lt;br /&gt;
|Town_SnowETF_Night&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Shamar ===&lt;br /&gt;
{| class=&amp;quot;wikitable sortable&amp;quot;&lt;br /&gt;
!Stage&lt;br /&gt;
!ID&lt;br /&gt;
!DLC&lt;br /&gt;
!Geometry ID&lt;br /&gt;
|-&lt;br /&gt;
|Arid Sands Act 1&lt;br /&gt;
|ActN_PetraEvil &lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Arid Sands Act 2&lt;br /&gt;
|ActN_SubPetra_02&lt;br /&gt;
|X&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Arid Sands Act 3&lt;br /&gt;
|ActN_SubPetra_03&lt;br /&gt;
|X&lt;br /&gt;
|ActN_PetraEvil &lt;br /&gt;
|-&lt;br /&gt;
|Dark Guardian&lt;br /&gt;
|BossPetra&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Town&lt;br /&gt;
|Town_PetraCapital_Night&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Entrance Stage&lt;br /&gt;
|Town_PetraCapitalETF_Night&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Professor Pickle’s Lab&lt;br /&gt;
|Town_PetraLabo_Night&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Empire City ===&lt;br /&gt;
{| class=&amp;quot;wikitable sortable&amp;quot;&lt;br /&gt;
!Stage&lt;br /&gt;
!ID&lt;br /&gt;
!DLC&lt;br /&gt;
!Geometry ID&lt;br /&gt;
|-&lt;br /&gt;
|Skyscraper Scamper Act 1&lt;br /&gt;
|ActN_NYEvil&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Skyscraper Scamper Act 2&lt;br /&gt;
|ActN_SubNY_02&lt;br /&gt;
|X&lt;br /&gt;
|ActN_NYEvil&lt;br /&gt;
|-&lt;br /&gt;
|Skyscraper Scamper Act 3&lt;br /&gt;
|ActN_SubNY_01&lt;br /&gt;
|X&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Town&lt;br /&gt;
|Town_NYCity_Night&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Entrance Stage&lt;br /&gt;
|Town_NYCityETF_Night&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Adabat ===&lt;br /&gt;
{| class=&amp;quot;wikitable sortable&amp;quot;&lt;br /&gt;
!Stage&lt;br /&gt;
!ID&lt;br /&gt;
!DLC&lt;br /&gt;
!Geometry ID&lt;br /&gt;
|-&lt;br /&gt;
|Jungle Joyride Act 1&lt;br /&gt;
|ActN_BeachEvil &lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Jungle Joyride Act 1-2&lt;br /&gt;
|ActN_SubBeach_03&lt;br /&gt;
|X&lt;br /&gt;
|ActN_BeachEvil &lt;br /&gt;
|-&lt;br /&gt;
|Jungle Joyride Act 2&lt;br /&gt;
|ActN_SubBeach_01&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Jungle Joyride Act 3&lt;br /&gt;
|ActN_SubBeach_02&lt;br /&gt;
|X&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Town&lt;br /&gt;
|Town_SouthEastAsia_Night&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Entrance Stage&lt;br /&gt;
|Town_SouthEastAsiaETF_Night&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Eggmanland ==&lt;br /&gt;
{| class=&amp;quot;wikitable sortable&amp;quot;&lt;br /&gt;
!Stage&lt;br /&gt;
!ID&lt;br /&gt;
!DLC&lt;br /&gt;
!Geometry ID&lt;br /&gt;
|-&lt;br /&gt;
|EggmanLand&lt;br /&gt;
|Act_EggmanLand&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Egg Dragoon&lt;br /&gt;
|BossEggDragoon&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Dark Gaia Colossus Sections&lt;br /&gt;
|BossDarkGaia1_1Air&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Dark Gaia Sonic Section 1&lt;br /&gt;
|BossDarkGaia1_1Run &lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Dark Gaia Sonic Section 2&lt;br /&gt;
|BossDarkGaia1_2Run &lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Dark Gaia Sonic Section 3&lt;br /&gt;
|BossDarkGaia1_3Run &lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Perfect Dark Gaia&lt;br /&gt;
|BossFinalDarkGaia&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Tornado Defence Act 2&lt;br /&gt;
|ExStageTails2 &lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Town&lt;br /&gt;
|Town_EggManBase&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
== Events ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Area&lt;br /&gt;
!ID&lt;br /&gt;
!Event ID&lt;br /&gt;
|-&lt;br /&gt;
|Spagonia Lab (Ransacked)&lt;br /&gt;
|Event_M2_01_professor_room_new&lt;br /&gt;
|M2_01&lt;br /&gt;
|-&lt;br /&gt;
|Eggman’s Base (Mazuri)&lt;br /&gt;
|Event_afr_hideout&lt;br /&gt;
|M2_02&lt;br /&gt;
|-&lt;br /&gt;
|Gaia Temple (Inside)&lt;br /&gt;
|Event_temple&lt;br /&gt;
|M3_03&lt;br /&gt;
&lt;br /&gt;
M3_05&lt;br /&gt;
&lt;br /&gt;
M6_02&lt;br /&gt;
&lt;br /&gt;
M7_02&lt;br /&gt;
&lt;br /&gt;
S1_05&lt;br /&gt;
&lt;br /&gt;
S3_04&lt;br /&gt;
&lt;br /&gt;
T0_01&lt;br /&gt;
&lt;br /&gt;
T0_02&lt;br /&gt;
|-&lt;br /&gt;
|Eggman’s Base (Inside)&lt;br /&gt;
|Event_M4_01_egb_hideout&lt;br /&gt;
|M4_01&lt;br /&gt;
&lt;br /&gt;
M5_02&lt;br /&gt;
|-&lt;br /&gt;
|Eggman’s Base (Outside)&lt;br /&gt;
|Event_egb_hidout_exterior&lt;br /&gt;
|M5_01&lt;br /&gt;
&lt;br /&gt;
M8_13&lt;br /&gt;
|-&lt;br /&gt;
|Adabat Temple (Outside)&lt;br /&gt;
|Event_M6_01_temple&lt;br /&gt;
|M6_01&lt;br /&gt;
|-&lt;br /&gt;
|EggmanLand Ending Room&lt;br /&gt;
|Event_M8_02_egbHall&lt;br /&gt;
|M7_04&lt;br /&gt;
&lt;br /&gt;
M8_02&lt;br /&gt;
|-&lt;br /&gt;
|Dummy Geometry Slot(?)&lt;br /&gt;
|Event_M8_03&lt;br /&gt;
|M8_03&lt;br /&gt;
|-&lt;br /&gt;
|Ending&lt;br /&gt;
|Event_M8_16_myk&lt;br /&gt;
|M8_16&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Unused ==&lt;br /&gt;
These are IDs that are not used in the retail game. Some of these became pre-rendered, while some others come from the Sonic Unleashed Preview Builds.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Stage/Area&lt;br /&gt;
!ID&lt;br /&gt;
!Type&lt;br /&gt;
!Notes&lt;br /&gt;
|-&lt;br /&gt;
|Savannah Citadel Act 1 (Day)&lt;br /&gt;
|ActD_Africa_20080621&lt;br /&gt;
|Stage&lt;br /&gt;
|Version from the leaked trailer and screenshots&lt;br /&gt;
|-&lt;br /&gt;
|Savannah Citadel Act 1 (Night)&lt;br /&gt;
|ActN_AfricaEvil_Dje_20080619&lt;br /&gt;
|Stage&lt;br /&gt;
|Version from leaked screenshots&lt;br /&gt;
|-&lt;br /&gt;
|Savannah Citadel Act 3 (Night)&lt;br /&gt;
|ActN_AfricaEvil_Bao_20080619&lt;br /&gt;
|Stage&lt;br /&gt;
|Version from leaked screenshots&lt;br /&gt;
|-&lt;br /&gt;
|Rooftop Run Act 1 (Night)&lt;br /&gt;
|ActN_EUEvil_20080604&lt;br /&gt;
|Stage&lt;br /&gt;
|Unknown early version&lt;br /&gt;
|-&lt;br /&gt;
|Dragon Road Act 1 (Night)&lt;br /&gt;
|ActN_ChinaEvil_20080609&lt;br /&gt;
|Stage&lt;br /&gt;
|Version from early trailer and leaked screenshots&lt;br /&gt;
|-&lt;br /&gt;
|Cool Edge Act 1 (Day)&lt;br /&gt;
|ActD_Snow_20080618&lt;br /&gt;
|Stage&lt;br /&gt;
|Unknown early version&lt;br /&gt;
|-&lt;br /&gt;
|Arid Sands Act 4 (Day)&lt;br /&gt;
|ActD_SubPetra_01&lt;br /&gt;
|Stage&lt;br /&gt;
|Scrapped stage, can be seen in a photo from the credits and an unused World Map thumbnail&lt;br /&gt;
|-&lt;br /&gt;
|Arid Sands Act 4 (Night)&lt;br /&gt;
|ActN_SubPetra_01&lt;br /&gt;
|Stage&lt;br /&gt;
|Scrapped stage, can be seen in an unused World Map thumbnail&lt;br /&gt;
|-&lt;br /&gt;
|Daytime Sonic Test Stage&lt;br /&gt;
|ActD_Test&lt;br /&gt;
|Testing&lt;br /&gt;
|Defined in arcinfo&lt;br /&gt;
|-&lt;br /&gt;
|Werehog Test Stage&lt;br /&gt;
|ActN_Test&lt;br /&gt;
|Testing&lt;br /&gt;
|Defined in arcinfo&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
|TestEvilEnemy&lt;br /&gt;
|&lt;br /&gt;
|Defined in arcinfo&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
|TestEvilLargeFloor&lt;br /&gt;
|&lt;br /&gt;
|Defined in arcinfo&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
|TestEvilPathFinding_01&lt;br /&gt;
|&lt;br /&gt;
|Defined in arcinfo&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
|ActN_Test_Dummy&lt;br /&gt;
|&lt;br /&gt;
|Defined in arcinfo&lt;br /&gt;
|-&lt;br /&gt;
|Windmill Isle Act 1 (Dawn)&lt;br /&gt;
|Event_M0_06_myk&lt;br /&gt;
|Event&lt;br /&gt;
|The start area of Windmill Isle Act 1 with the lighting from the first in-engine event baked into the stage, as opposed to being dynamically loaded by the event&lt;br /&gt;
|-&lt;br /&gt;
|Spagonia Lab (Ransacked)&lt;br /&gt;
|Event_M2_01_professor_room&lt;br /&gt;
|Event&lt;br /&gt;
|The ransacked Spagonia lab using the old terrain system&lt;br /&gt;
|-&lt;br /&gt;
|Eggman’s Base (Mazuri)&lt;br /&gt;
|Event_afr_hideout_main&lt;br /&gt;
|Event&lt;br /&gt;
|Eggman’s Mazuri base using the old terrain system&lt;br /&gt;
|-&lt;br /&gt;
|Chun-Nan Town - Cursed&lt;br /&gt;
|Event_M8_08_01chn&lt;br /&gt;
|Event&lt;br /&gt;
|The Chun-Nan scene from the “Dark World” event - the final game has this event pre-rendered.&lt;br /&gt;
|-&lt;br /&gt;
|Mazuri Town - Cursed&lt;br /&gt;
|Event_M8_08_02afr&lt;br /&gt;
|Event&lt;br /&gt;
|The Mazuri scene from the “Dark World” event - the final game has this event pre-rendered.&lt;br /&gt;
|-&lt;br /&gt;
|Spagonia Town - Cursed&lt;br /&gt;
|Event_M8_08_03EU&lt;br /&gt;
|Event&lt;br /&gt;
|The Spagonia scene from the “Dark World” event - the final game has this event pre-rendered.&lt;br /&gt;
|-&lt;br /&gt;
|Holoska Town - Cursed&lt;br /&gt;
|Event_M8_08_04snow&lt;br /&gt;
|Event&lt;br /&gt;
|The Holoska scene from the “Dark World” event - the final game has this event pre-rendered.&lt;br /&gt;
|-&lt;br /&gt;
|Chun-Nan Town - Cured&lt;br /&gt;
|Event_M8_12_01chn&lt;br /&gt;
|Event&lt;br /&gt;
|The Chun-Nan scene from the “Rekindled Light” event - the final game has this event pre-rendered.&lt;br /&gt;
|-&lt;br /&gt;
|Mazuri Town - Cured&lt;br /&gt;
|Event_M8_12_02afr&lt;br /&gt;
|Event&lt;br /&gt;
|The Mazuri scene from the “Rekindled Light” event - the final game has this event pre-rendered.&lt;br /&gt;
|-&lt;br /&gt;
|Spagonia Town - Cured&lt;br /&gt;
|Event_M8_12_03EU&lt;br /&gt;
|Event&lt;br /&gt;
|The Spagonia scene from the “Rekindled Light” event - the final game has this event pre-rendered.&lt;br /&gt;
|-&lt;br /&gt;
|Holoska Town - Cured&lt;br /&gt;
|Event_M8_12_04snow&lt;br /&gt;
|Event&lt;br /&gt;
|The Holoska scene from the “Rekindled Light” event - the final game has this event pre-rendered.&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>PTKay</name></author>
	</entry>
	<entry>
		<id>https://hedgedocs.com/index.php?title=MediaWiki:Vector-2022.css&amp;diff=438</id>
		<title>MediaWiki:Vector-2022.css</title>
		<link rel="alternate" type="text/html" href="https://hedgedocs.com/index.php?title=MediaWiki:Vector-2022.css&amp;diff=438"/>
		<updated>2025-03-26T09:00:02Z</updated>

		<summary type="html">&lt;p&gt;PTKay: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;/* HEDDGEDOCS COLOR PALETTES */&lt;br /&gt;
&lt;br /&gt;
:root {&lt;br /&gt;
    --hedgedocs-accent-color: #3e7e9e;&lt;br /&gt;
    --hedgedocs-accent-color-secondary: #4d9ec7;&lt;br /&gt;
    &lt;br /&gt;
    --hedgedocs-base-border-color: #adb5c2;&lt;br /&gt;
&lt;br /&gt;
    --hedgedocs-frame-bg-color: #e9ebec;&lt;br /&gt;
&lt;br /&gt;
    --hedgedocs-scrollbar-color: #888888;&lt;br /&gt;
&lt;br /&gt;
    --hedgedocs-bg-color: #f0f3f4;&lt;br /&gt;
    --hedgedocs-bg-color-secondary: #dddddd;&lt;br /&gt;
&lt;br /&gt;
    --hedgedocs-header-color: var(--hedgedocs-accent-color);&lt;br /&gt;
    --hedgedocs-header-fg-color: #f2f8f8;&lt;br /&gt;
&lt;br /&gt;
    --hedgedocs-fg-color-light: #333333;&lt;br /&gt;
    --hedgedocs-fg-color: #202122;&lt;br /&gt;
&lt;br /&gt;
    --hedgedocs-link-color: #36c;&lt;br /&gt;
    --hedgedocs-link-hover: #757575;&lt;br /&gt;
    --hedgedocs-link-active-color: #00aedf;&lt;br /&gt;
    --hedgedocs-new-link-color: #d73333;&lt;br /&gt;
&lt;br /&gt;
    --hedgedocs-input-bg-color: #ffffff;&lt;br /&gt;
    --hedgedocs-input-fg-color: #202122;&lt;br /&gt;
    --hedgedocs-input-border-color: var(--hedgedocs-input-bg-color);&lt;br /&gt;
&lt;br /&gt;
    --hedgedocs-button-bg-color: #bbbbbb;&lt;br /&gt;
    --hedgedocs-button-bg-color-hover: #999999;&lt;br /&gt;
    --hedgedocs-button-check-fg-color: #ffffff;&lt;br /&gt;
    --hedgedocs-button-check-bg-color: var(--hedgedocs-accent-color);&lt;br /&gt;
    --hedgedocs-button-accent-bg-color: var(--hedgedocs-accent-color);&lt;br /&gt;
    --hedgedocs-button-accent-fg-color: #ffffff;&lt;br /&gt;
    --hedgedocs-button-accent-bg-color-hover: var(--hedgedocs-accent-color-secondary);&lt;br /&gt;
&lt;br /&gt;
    --hedgedocs-table-header-bg-color: var(--hedgedocs-bg-color-secondary);&lt;br /&gt;
    --hedgedocs-table-data-bg-color: var(--hedgedocs-frame-bg-color);&lt;br /&gt;
    --hedgedocs-table-header-fg-color: var(--hedgedocs-fg-color);&lt;br /&gt;
    --hedgedocs-table-border-color: #B2B2B2;&lt;br /&gt;
&lt;br /&gt;
    --hedgedocs-notice-note-header-color: rgba(68, 138, 255, 0.15);&lt;br /&gt;
    --hedgedocs-notice-note-border-color: rgba(68, 138, 255, 0.75);&lt;br /&gt;
    --hedgedocs-notice-info-header-color: rgba(0, 184, 212, 0.15);&lt;br /&gt;
    --hedgedocs-notice-info-border-color: rgba(0, 184, 212, 0.75);&lt;br /&gt;
    --hedgedocs-notice-warn-header-color: rgba(255, 145, 0, 0.15);&lt;br /&gt;
    --hedgedocs-notice-warn-border-color: rgba(255, 145, 0, 0.75);&lt;br /&gt;
    --hedgedocs-notice-example-header-color: rgba(118, 84, 250, 0.15);&lt;br /&gt;
    --hedgedocs-notice-example-border-color: rgba(118, 84, 250, 0.75);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.skin-theme-clientpref-night {&lt;br /&gt;
    --hedgedocs-accent-color: #0f3885;&lt;br /&gt;
    --hedgedocs-accent-color-secondary: #0d2a5f;&lt;br /&gt;
&lt;br /&gt;
    --hedgedocs-base-border-color: #414658;&lt;br /&gt;
&lt;br /&gt;
    --hedgedocs-frame-bg-color: #1a1c24;&lt;br /&gt;
    &lt;br /&gt;
    --hedgedocs-scrollbar-color: #888888;&lt;br /&gt;
&lt;br /&gt;
    --hedgedocs-bg-color: #151515;&lt;br /&gt;
    --hedgedocs-bg-color-secondary: #272a35;&lt;br /&gt;
&lt;br /&gt;
    --hedgedocs-header-fg-color: #f2f8f8;&lt;br /&gt;
&lt;br /&gt;
    --hedgedocs-fg-color-light: #e0e6e6;&lt;br /&gt;
    --hedgedocs-fg-color: #d2d2d2;&lt;br /&gt;
&lt;br /&gt;
    --hedgedocs-link-color: #88a3e8;&lt;br /&gt;
    --hedgedocs-link-hover: #4e67f0;&lt;br /&gt;
    --hedgedocs-link-active-color: #5082dc;&lt;br /&gt;
    --hedgedocs-new-link-color: #fd7865;&lt;br /&gt;
&lt;br /&gt;
    --hedgedocs-input-bg-color: #222222;&lt;br /&gt;
    --hedgedocs-input-fg-color: #d2d2d2;&lt;br /&gt;
    --hedgedocs-input-border-color: var(--hedgedocs-input-bg-color);&lt;br /&gt;
&lt;br /&gt;
    --hedgedocs-button-bg-color: #333333;&lt;br /&gt;
    --hedgedocs-button-bg-color-hover: #555555;&lt;br /&gt;
    --hedgedocs-button-check-fg-color: #ffffff;&lt;br /&gt;
    --hedgedocs-button-check-bg-color: var(--hedgedocs-accent-color);&lt;br /&gt;
&lt;br /&gt;
    --hedgedocs-table-header-bg-color: #252833;&lt;br /&gt;
    --hedgedocs-table-data-bg-color: var(--hedgedocs-frame-bg-color);&lt;br /&gt;
    --hedgedocs-table-header-fg-color: var(--hedgedocs-fg-color);&lt;br /&gt;
    --hedgedocs-table-border-color: #3A3A3A;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
:root, .skin-theme-clientpref-night, html.skin-theme-clientpref-night {&lt;br /&gt;
    --background-color-base: var(--hedgedocs-bg-color);&lt;br /&gt;
    --background-color-interactive: var(--hedgedocs-bg-color-secondary);&lt;br /&gt;
    --background-color-interactive-subtle: var(--hedgedocs-bg-color-secondary);&lt;br /&gt;
    --background-color-neutral-subtle: var(--hedgedocs-bg-color);&lt;br /&gt;
    --border-color-base: var(--hedgedocs-base-border-color);&lt;br /&gt;
}&lt;br /&gt;
body {&lt;br /&gt;
    background-color: var(--hedgedocs-bg-color) !important;&lt;br /&gt;
    color: var(--hedgedocs-fg-color) !important;&lt;br /&gt;
}&lt;br /&gt;
.mw-page-container {&lt;br /&gt;
    background-color: transparent !important;&lt;br /&gt;
}&lt;br /&gt;
.mw-heading, h1, h2:not(.vector-pinnable-header-label), h3, h4, h5, h6 {&lt;br /&gt;
    color: var(--hedgedocs-fg-color) !important;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* HEDDGEDOCS DARK THEME TWEAKS */&lt;br /&gt;
&lt;br /&gt;
html.skin-theme-clientpref-night, .skin-theme-clientpref-night * {&lt;br /&gt;
    filter: none !important;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.skin-theme-clientpref-night {&lt;br /&gt;
    .mw-page-container .vector-icon {&lt;br /&gt;
        filter: invert() !important;&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    .vector-icon.mw-ui-icon-listBullet {&lt;br /&gt;
        filter: none !important;&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    .vector-icon.mw-ui-icon-wikimedia-unStar, .vector-icon.mw-ui-icon-wikimedia-star, .vector-icon.mw-ui-icon-wikimedia-expand {&lt;br /&gt;
        filter: none !important;&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    #vector-page-tools-dropdown-label {&lt;br /&gt;
        color: var(--hedgedocs-fg-color);&lt;br /&gt;
        transition: color 0s;&lt;br /&gt;
    }&lt;br /&gt;
    &lt;br /&gt;
    .vector-header-container .vector-icon:not(.vector-dropdown-content .vector-icon) {&lt;br /&gt;
        filter: brightness(2) !important;&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    .ext-darkmode-link::after {&lt;br /&gt;
        content: &#039;\263C&#039;;&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    .mw-list-item span#skin-theme-beta-notice {&lt;br /&gt;
        display: none !important;&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    #searchInput, .cdx-text-input__input:enabled, .cdx-text-input__input {&lt;br /&gt;
        background-color: var(--hedgedocs-input-bg-color) !important;&lt;br /&gt;
        border-color: var(--hedgedocs-input-border-color) !important;&lt;br /&gt;
        color: var(--hedgedocs-input-fg-color) !important;&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    .oo-ui-iconElement-icon:not(.oo-ui-checkboxInputWidget-checkIcon, .oo-ui-image-progressive, .oo-ui-icon-error), .oo-ui-indicatorElement-indicator {&lt;br /&gt;
        filter: invert() !important;&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.ext-darkmode-link::after {&lt;br /&gt;
    content: &#039;\263E&#039;;&lt;br /&gt;
    display: inline-block;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
span#skin-theme-beta-notice {&lt;br /&gt;
    display: none !important;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
#skin-client-prefs-skin-theme .cdx-radio:first-child {&lt;br /&gt;
    display: none;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* HEDDGEDOCS FONTS */&lt;br /&gt;
@import url(&#039;https://fonts.googleapis.com/css2?family=Roboto:ital,wdth,wght@0,75..100,100..900;1,75..100,100..900&amp;amp;display=swap&#039;);&lt;br /&gt;
@import url(&#039;https://fonts.googleapis.com/css2?family=Roboto+Mono:ital,wght@0,100..700;1,100..700&amp;amp;display=swap&#039;);&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
:root {&lt;br /&gt;
    --font-size-medium: var(--hedgedocs-font-size);&lt;br /&gt;
&lt;br /&gt;
    --hedgedocs-font-size: 16px;&lt;br /&gt;
    --hedgedocs-font-size-sidebars: 16px;&lt;br /&gt;
    --hedgedocs-font-size-sidebars-pin-button: 13px; &lt;br /&gt;
&lt;br /&gt;
    --hedgedocs-font: &#039;Roboto&#039;, -apple-system, BlinkMacSystemFont, Helvetica, Arial, sans-serif;&lt;br /&gt;
    --hedgedocs-code-font: &#039;Roboto Mono&#039;, SFMono-Regular, Consolas, Menlo, monospace;&lt;br /&gt;
}&lt;br /&gt;
body {&lt;br /&gt;
    -webkit-font-smoothing: antialiased;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
body, .mw-body, h1, h2, .mw-createacct-benefits-heading, .oo-ui-menuToolGroup-tools .oo-ui-tool-title, .vector-sticky-header-context-bar-primary, .mw-body-content .mw-number-text span {&lt;br /&gt;
    font-family: var(--hedgedocs-font) !important;&lt;br /&gt;
}&lt;br /&gt;
body .oo-ui-tool-name-preformatted .oo-ui-tool-link .oo-ui-tool-title, pre, code, tt, kbd, samp, .mw-code {&lt;br /&gt;
    font-family: var(--hedgedocs-code-font) !important;&lt;br /&gt;
}&lt;br /&gt;
h1 {&lt;br /&gt;
    font-weight: bold;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* HEDGEDOCS PAGE STYLING CSS */&lt;br /&gt;
&lt;br /&gt;
.mw-logo-wordmark {&lt;br /&gt;
    font-size: 17pt;&lt;br /&gt;
}&lt;br /&gt;
.mw-logo-icon {&lt;br /&gt;
    font-size: 7pt;&lt;br /&gt;
    padding-left: 1.5em;&lt;br /&gt;
}&lt;br /&gt;
.mw-logo {&lt;br /&gt;
    transition: opacity .25s;&lt;br /&gt;
}&lt;br /&gt;
.mw-logo:hover {&lt;br /&gt;
    opacity: 0.7;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
div.vector-pinnable-header-label, h2.vector-pinnable-header-label {&lt;br /&gt;
    background: var(--hedgedocs-header-color);&lt;br /&gt;
    color: var(--hedgedocs-header-fg-color);&lt;br /&gt;
    padding: 2px 10px 2px 10px;&lt;br /&gt;
    cursor: default;&lt;br /&gt;
    margin: 0em !important;&lt;br /&gt;
}&lt;br /&gt;
button.vector-pinnable-header-toggle-button {&lt;br /&gt;
    width: 100%;&lt;br /&gt;
    text-align: center;&lt;br /&gt;
    font-size: var(--hedgedocs-font-size-sidebars-pin-button);&lt;br /&gt;
    background-color: var(--hedgedocs-button-bg-color);&lt;br /&gt;
    padding: 2px 10px 2px 10px;&lt;br /&gt;
    transition: background-color 0.1s;&lt;br /&gt;
    margin-bottom: 0.5rem;&lt;br /&gt;
}&lt;br /&gt;
button.vector-pinnable-header-toggle-button:hover {&lt;br /&gt;
    background-color: var(--hedgedocs-button-bg-color-hover);&lt;br /&gt;
}&lt;br /&gt;
div.vector-pinnable-header {&lt;br /&gt;
    padding-bottom: 0;&lt;br /&gt;
    margin-bottom: 0;&lt;br /&gt;
    border-bottom: none;&lt;br /&gt;
    display: flex;&lt;br /&gt;
    flex-direction: column;&lt;br /&gt;
    justify-content: center;&lt;br /&gt;
}&lt;br /&gt;
div.vector-pinnable-element div.vector-menu-heading {&lt;br /&gt;
    color: var(--hedgedocs-fg-color-light);&lt;br /&gt;
    font-weight: bold;&lt;br /&gt;
    cursor: default;&lt;br /&gt;
    padding: 6px 0;&lt;br /&gt;
    border-bottom: none;&lt;br /&gt;
}&lt;br /&gt;
#vector-main-menu .vector-menu-content .mw-list-item:hover {&lt;br /&gt;
}&lt;br /&gt;
#vector-main-menu .vector-menu-content .mw-list-item a {&lt;br /&gt;
    font-weight: bold;&lt;br /&gt;
    text-decoration: none !important;&lt;br /&gt;
}&lt;br /&gt;
#vector-main-menu .vector-menu-content .mw-list-item a:hover {&lt;br /&gt;
    text-decoration: none !important;&lt;br /&gt;
}&lt;br /&gt;
#vector-main-menu .vector-menu-content .mw-list-item {&lt;br /&gt;
    margin-bottom: 0;&lt;br /&gt;
}&lt;br /&gt;
.mw-list-item a, .vector-toc-link {&lt;br /&gt;
    color: var(--hedgedocs-fg-color) !important;&lt;br /&gt;
    transition: color 125ms;&lt;br /&gt;
}&lt;br /&gt;
.mw-list-item a:hover, .vector-toc-link:hover {&lt;br /&gt;
    color: var(--hedgedocs-link-hover) !important;&lt;br /&gt;
    text-decoration: none;&lt;br /&gt;
}&lt;br /&gt;
.vector-toc .vector-toc-list-item-active &amp;gt; a.vector-toc-link, .vector-toc .vector-toc-level-1-active:not(.vector-toc-list-item-expanded) &amp;gt; a.vector-toc-link, .vector-toc .vector-toc-list-item-active.vector-toc-level-1-active &amp;gt; a.vector-toc-link {&lt;br /&gt;
    color: var(--hedgedocs-link-active-color) !important;&lt;br /&gt;
    font-weight: inherit;&lt;br /&gt;
}&lt;br /&gt;
.vector-pinnable-element, .vector-pinnable-header-label {&lt;br /&gt;
    font-size: var(--hedgedocs-font-size-sidebars) !important;&lt;br /&gt;
}&lt;br /&gt;
.vector-pinned-container {&lt;br /&gt;
    background-color: var(--hedgedocs-bg-color) !important;&lt;br /&gt;
}&lt;br /&gt;
.vector-sticky-pinned-container::after {&lt;br /&gt;
    background: linear-gradient(rgba(255, 255, 255, 0), var(--hedgedocs-bg-color)) !important;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
#toc-mw-content-text {&lt;br /&gt;
    display: none;&lt;br /&gt;
}&lt;br /&gt;
div.vector-toc-pinnable-header {&lt;br /&gt;
    margin-bottom: .25rem;&lt;br /&gt;
}&lt;br /&gt;
.vector-toc .vector-toc-toggle {&lt;br /&gt;
    top: 4px !important;&lt;br /&gt;
}&lt;br /&gt;
.vector-toc button.vector-pinnable-header-toggle-button {&lt;br /&gt;
    display: none !important;&lt;br /&gt;
}&lt;br /&gt;
.vector-toc .vector-toc-list-item-active &amp;gt; a.vector-toc-link span, .vector-toc .vector-toc-level-1-active:not(.vector-toc-list-item-expanded) &amp;gt; a.vector-toc-link span, .vector-toc .vector-toc-list-item-active.vector-toc-level-1-active &amp;gt; a.vector-toc-link span {&lt;br /&gt;
    border-left: .25em solid;&lt;br /&gt;
    padding-left: .5em;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.vector-page-titlebar .firstHeading {&lt;br /&gt;
    padding-bottom: 6px !important;&lt;br /&gt;
}&lt;br /&gt;
.firstHeading.mw-first-heading {&lt;br /&gt;
    font-size: 2.2rem;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.vector-menu-tabs .mw-list-item.vector-tab-noicon &amp;gt; a, #vector-page-tools-dropdown-label {&lt;br /&gt;
    padding: 9px 0 7px 0 !important;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.vector-header-container header.mw-header, .vector-header-container div.vector-sticky-header {&lt;br /&gt;
    background-color: transparent;&lt;br /&gt;
    max-width: 99.75rem;&lt;br /&gt;
}&lt;br /&gt;
.vector-sticky-header-context-bar .mw-page-title-main {&lt;br /&gt;
    font-weight: bold;&lt;br /&gt;
}&lt;br /&gt;
.vector-header-container {&lt;br /&gt;
    background-color: var(--hedgedocs-header-color);&lt;br /&gt;
    box-shadow: 0 0 2rem rgba(0, 0, 0, 0.3), 0 0.4rem 4rem rgba(0, 0, 0, 0.15);&lt;br /&gt;
    align-items: center;&lt;br /&gt;
    justify-content: center;&lt;br /&gt;
    min-height: 5rem;&lt;br /&gt;
    margin-bottom: 1rem;&lt;br /&gt;
}&lt;br /&gt;
.vector-header-container div.vector-sticky-header {&lt;br /&gt;
    color: var(--hedgedocs-header-fg-color);&lt;br /&gt;
    border: none;&lt;br /&gt;
}&lt;br /&gt;
.vector-header-container .vector-button-flush-left {&lt;br /&gt;
    margin-right: -24px;&lt;br /&gt;
}&lt;br /&gt;
.vector-header-container .vector-header-start .vector-button-flush-right {&lt;br /&gt;
    margin-right: -24px;&lt;br /&gt;
}&lt;br /&gt;
.vector-header-container .vector-header-end .vector-button-flush-right {&lt;br /&gt;
    margin-right: -6px;&lt;br /&gt;
}&lt;br /&gt;
.mw-header a:not(.vector-menu-content a, a.cdx-typeahead-search__search-footer), .mw-header a:visited:not(.vector-menu-content a), .user-links-collapsible-item a:not(.vector-dropdown-content .user-links-collapsible-item a) {&lt;br /&gt;
    color: var(--hedgedocs-header-fg-color) !important;&lt;br /&gt;
}&lt;br /&gt;
.mw-header a:not(.vector-menu-content a, a.cdx-typeahead-search__search-footer):hover, .mw-header a:visited:not(.vector-menu-content a):hover, .user-links-collapsible-item a:not(.vector-dropdown-content .user-links-collapsible-item a):hover {&lt;br /&gt;
    color: var(--hedgedocs-header-fg-color) !important;&lt;br /&gt;
}&lt;br /&gt;
.vector-dropdown div.vector-dropdown-content {&lt;br /&gt;
    background-color: var(--hedgedocs-bg-color);&lt;br /&gt;
}&lt;br /&gt;
.mw-header .vector-icon:not(.vector-dropdown-content .vector-icon ) {&lt;br /&gt;
    filter: invert();&lt;br /&gt;
}&lt;br /&gt;
.vector-user-menu-logged-in .vector-dropdown-label::after {&lt;br /&gt;
    background-color: var(--hedgedocs-header-fg-color) !important;&lt;br /&gt;
}&lt;br /&gt;
.vector-header-container .vector-icon:not(.vector-dropdown-content .vector-icon) {&lt;br /&gt;
    filter: invert() brightness(2);&lt;br /&gt;
}&lt;br /&gt;
.vector-header .cdx-button.cdx-button--icon-only {&lt;br /&gt;
    min-width: 32px !important;&lt;br /&gt;
}&lt;br /&gt;
@media screen and (max-width: calc(639px)) {&lt;br /&gt;
    .vector-header {&lt;br /&gt;
        flex-flow: row !important;&lt;br /&gt;
    }&lt;br /&gt;
    .mw-logo {&lt;br /&gt;
        min-width: 11em !important;&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
.cdx-menu-item__text .cdx-search-result-title {&lt;br /&gt;
    color: var(--hedgedocs-fg-color);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
.cdx-menu {&lt;br /&gt;
    color: var(--hedgedocs-fg-color);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.mw-footer li {&lt;br /&gt;
    color: var(--hedgedocs-fg-color) !important;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
#searchInput, .cdx-text-input__input:enabled, .cdx-text-input__input {&lt;br /&gt;
    background-color: var(--hedgedocs-input-bg-color) !important;&lt;br /&gt;
    border-color: var(--hedgedocs-input-border-color) !important;&lt;br /&gt;
    color: var(--hedgedocs-input-fg-color) !important;&lt;br /&gt;
}&lt;br /&gt;
.oo-ui-checkboxInputWidget [type=&#039;checkbox&#039;] + span {&lt;br /&gt;
    background-color: var(--hedgedocs-input-bg-color);&lt;br /&gt;
    color: var(--hedgedocs-fg-color);&lt;br /&gt;
}&lt;br /&gt;
.oo-ui-textInputWidget input.oo-ui-inputWidget-input{&lt;br /&gt;
    background-color: var(--hedgedocs-input-bg-color);&lt;br /&gt;
}&lt;br /&gt;
.oo-ui-textInputWidget .oo-ui-inputWidget-input, .oo-ui-textInputWidget .oo-ui-inputWidget-input, .oo-ui-tagMultiselectWidget.oo-ui-widget-enabled {&lt;br /&gt;
    background-color: var(--hedgedocs-input-bg-color) !important;&lt;br /&gt;
    color: var(--hedgedocs-input-fg-color) !important;&lt;br /&gt;
}&lt;br /&gt;
.cdx-text-input__input:enabled~.cdx-text-input__icon-vue {&lt;br /&gt;
    color: var(--hedgedocs-input-fg-color) !important;&lt;br /&gt;
    opacity: 0.5 !important;&lt;br /&gt;
}&lt;br /&gt;
span.cdx-text-input__icon.cdx-text-input__start-icon {&lt;br /&gt;
    background-color: var(--hedgedocs-input-fg-color) !important;&lt;br /&gt;
    opacity: 0.5 !important;&lt;br /&gt;
}&lt;br /&gt;
textarea {&lt;br /&gt;
    background-color: var(--hedgedocs-bg-color);&lt;br /&gt;
}&lt;br /&gt;
button.cdx-button, button.cdx-button:enabled, .oo-ui-buttonElement-framed.oo-ui-widget-enabled &amp;gt; .oo-ui-buttonElement-button {&lt;br /&gt;
    background-color: var(--hedgedocs-button-bg-color);&lt;br /&gt;
    border: none;&lt;br /&gt;
    transition: background-color 0.1s;&lt;br /&gt;
}&lt;br /&gt;
button.cdx-button:hover, .oo-ui-buttonElement-framed.oo-ui-widget-enabled &amp;gt; .oo-ui-buttonElement-button:hover {&lt;br /&gt;
    background-color: var(--hedgedocs-button-bg-color-hover) !important;&lt;br /&gt;
}&lt;br /&gt;
.cdx-button.cdx-button--weight-primary.cdx-button--action-progressive, .oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive &amp;gt; .oo-ui-buttonElement-button, .oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive &amp;gt; .oo-ui-tool-link {&lt;br /&gt;
    background-color: var(--hedgedocs-button-accent-bg-color) !important;&lt;br /&gt;
    transition: background-color 0.1s;&lt;br /&gt;
}&lt;br /&gt;
.cdx-button.cdx-button--weight-primary.cdx-button--action-progressive:hover, .oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive &amp;gt; .oo-ui-buttonElement-button:hover, .oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive &amp;gt; .oo-ui-tool-link:hover {&lt;br /&gt;
    background-color: var(--hedgedocs-button-accent-bg-color-hover) !important;&lt;br /&gt;
}&lt;br /&gt;
.cdx-radio__icon {&lt;br /&gt;
    background-color: var(--hedgedocs-button-bg-color) !important;&lt;br /&gt;
}&lt;br /&gt;
.cdx-radio:hover .cdx-radio__icon {&lt;br /&gt;
    background-color: var(--hedgedocs-button-bg-color-hover) !important;&lt;br /&gt;
}&lt;br /&gt;
.cdx-radio__input:enabled:checked+.cdx-radio__icon {&lt;br /&gt;
    background-color: var(--hedgedocs-button-check-fg-color) !important;&lt;br /&gt;
    border-color: var(--hedgedocs-button-check-bg-color) !important;&lt;br /&gt;
}&lt;br /&gt;
.cdx-radio__input:enabled+.cdx-radio__icon {&lt;br /&gt;
    border-color: var(--hedgedocs-base-border-color) !important;&lt;br /&gt;
}&lt;br /&gt;
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type=&#039;checkbox&#039;]:checked + span, .oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type=&#039;checkbox&#039;]:indeterminate + span {&lt;br /&gt;
    background-color: var(--hedgedocs-button-check-bg-color) !important;&lt;br /&gt;
}&lt;br /&gt;
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-buttonElement-active &amp;gt; .oo-ui-buttonElement-button {&lt;br /&gt;
    background-color: var(--hedgedocs-button-accent-bg-color) !important;&lt;br /&gt;
    color: var(--hedgedocs-button-accent-fg-color) !important;&lt;br /&gt;
}&lt;br /&gt;
.tdg-templateDataParamWidget-param-alias:first-child {&lt;br /&gt;
    background-color: var(--hedgedocs-bg-color-secondary) !important;&lt;br /&gt;
    color: var(--hedgedocs-fg-color-light) !important;&lt;br /&gt;
    border-color: var(--hedgedocs-base-border-color);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
.oo-ui-toolbar-bar {&lt;br /&gt;
    background-color: var(--hedgedocs-bg-color-secondary) !important;&lt;br /&gt;
    color: var(--hedgedocs-fg-color) !important;&lt;br /&gt;
}&lt;br /&gt;
.oo-ui-menuToolGroup, .oo-ui-toolbar-position-top &amp;gt; .oo-ui-toolbar-bar {&lt;br /&gt;
    border-color: var(--hedgedocs-bg-color) !important;&lt;br /&gt;
}&lt;br /&gt;
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive &amp;gt; .oo-ui-tool-link {&lt;br /&gt;
    color: var(--hedgedocs-header-fg-color) !important;&lt;br /&gt;
    background-color: var(--hedgedocs-header-color) !important;&lt;br /&gt;
}&lt;br /&gt;
.editOptions {&lt;br /&gt;
    background-color: var(--hedgedocs-bg-color-secondary);&lt;br /&gt;
    color: var(--hedgedocs-fg-color);&lt;br /&gt;
}&lt;br /&gt;
.editCheckboxes {&lt;br /&gt;
    margin-bottom: .5rem;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.oo-ui-panelLayout-framed {&lt;br /&gt;
    border: none;&lt;br /&gt;
    background-color: var(--hedgedocs-frame-bg-color);&lt;br /&gt;
}&lt;br /&gt;
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-widget-enabled.oo-ui-optionWidget-selected {&lt;br /&gt;
    background-color: var(--hedgedocs-frame-bg-color) !important;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-widget-enabled.oo-ui-optionWidget-selected .oo-ui-labelElement-label, .oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget .oo-ui-labelElement-label {&lt;br /&gt;
    border: none !important;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.approved-revision {&lt;br /&gt;
    background-color: transparent !important;&lt;br /&gt;
    border: 3px solid;&lt;br /&gt;
    color: var(--hedgedocs-fg-color) !important;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
#mw-content-text {&lt;br /&gt;
    margin-top: 0 !important;&lt;br /&gt;
}&lt;br /&gt;
figure[typeof~=&#039;mw:File/Thumb&#039;] {&lt;br /&gt;
    background-color: transparent !important;&lt;br /&gt;
    border: none !important;&lt;br /&gt;
    margin-bottom: 0.5em !important;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
figure[typeof~=&#039;mw:File/Thumb&#039;].mw-halign-left {&lt;br /&gt;
    margin-bottom: 0.5em !important;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
figure[typeof~=&#039;mw:File/Thumb&#039;] &amp;gt; .mw-file-description &amp;gt; img {&lt;br /&gt;
    background-color: transparent !important;&lt;br /&gt;
    border: none !important;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
figure[typeof~=&#039;mw:File/Thumb&#039;] &amp;gt; .mw-file-description::after {&lt;br /&gt;
    display: none !important;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
figure[typeof~=&#039;mw:File/Thumb&#039;] &amp;gt; figcaption {&lt;br /&gt;
    background-color: transparent !important;&lt;br /&gt;
    border: none !important;&lt;br /&gt;
    padding: 5px !important;&lt;br /&gt;
}&lt;br /&gt;
.mw-body-content a {&lt;br /&gt;
    color: var(--hedgedocs-link-color);&lt;br /&gt;
}&lt;br /&gt;
.mw-body-content a:visited, .mw-body-content a:visited:hover{&lt;br /&gt;
    color: var(--hedgedocs-link-color);&lt;br /&gt;
}&lt;br /&gt;
.mw-body-content a.new {&lt;br /&gt;
    color: var(--hedgedocs-new-link-color);&lt;br /&gt;
}&lt;br /&gt;
.mw-body-content a.new:visited, .mw-body-content a.new:visited:hover{&lt;br /&gt;
    color: var(--hedgedocs-new-link-color);&lt;br /&gt;
}&lt;br /&gt;
.wikitable &amp;gt; tr &amp;gt; th, .wikitable &amp;gt; * &amp;gt; tr &amp;gt; th {&lt;br /&gt;
    background-color: var(--hedgedocs-table-header-bg-color) !important;&lt;br /&gt;
    color: var(--hedgedocs-table-header-fg-color) !important;&lt;br /&gt;
}&lt;br /&gt;
.wikitable &amp;gt; tr &amp;gt; th, .wikitable &amp;gt; tr &amp;gt; td, .wikitable &amp;gt; * &amp;gt; tr &amp;gt; th, .wikitable &amp;gt; * &amp;gt; tr &amp;gt; td {&lt;br /&gt;
    background-color: var(--hedgedocs-table-data-bg-color);&lt;br /&gt;
    color: var(--hedgedocs-fg-color);&lt;br /&gt;
}&lt;br /&gt;
.wikitable &amp;gt; tr &amp;gt; th, .wikitable &amp;gt; tr &amp;gt; td, .wikitable &amp;gt; * &amp;gt; tr &amp;gt; th, .wikitable &amp;gt; * &amp;gt; tr &amp;gt; td {&lt;br /&gt;
    border: 1px solid var(--hedgedocs-table-border-color) !important;&lt;br /&gt;
    padding: 5px 9px;&lt;br /&gt;
}&lt;br /&gt;
code, pre {&lt;br /&gt;
    background-color: var(--hedgedocs-frame-bg-color);&lt;br /&gt;
    border-color: var(--hedgedocs-base-border-color);&lt;br /&gt;
    color: var(--hedgedocs-fg-color-light);&lt;br /&gt;
    scrollbar-color: var(--hedgedocs-scrollbar-color) transparent;&lt;br /&gt;
}&lt;br /&gt;
pre {&lt;br /&gt;
    overflow: auto;&lt;br /&gt;
    white-space: pre;&lt;br /&gt;
}&lt;br /&gt;
figure.embedvideo, figure.embedvideo video {&lt;br /&gt;
    height: auto !important;&lt;br /&gt;
    width: 640px !important;&lt;br /&gt;
}&lt;br /&gt;
figure.embedvideo[data-service=&amp;quot;local-embed&amp;quot;] span.embedvideo-wrapper {&lt;br /&gt;
    height: auto !important;&lt;br /&gt;
    width: 640px !important;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* HEDGEDOCS CUSTOM ELEMENTS */&lt;br /&gt;
&lt;br /&gt;
.hedgedocs-card {&lt;br /&gt;
    display: grid;&lt;br /&gt;
    background-color: var(--hedgedocs-frame-bg-color);&lt;br /&gt;
    padding: 5px 20px 25px 20px;&lt;br /&gt;
    margin-bottom: 1rem;&lt;br /&gt;
    border-radius: 2px;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.hedgedocs-card-header p {&lt;br /&gt;
    margin: .5rem 0 0 0 !important;&lt;br /&gt;
    font-weight: bolder;&lt;br /&gt;
    font-size: 25px;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.hedgedocs-card-header {&lt;br /&gt;
    grid-column-start: 1;&lt;br /&gt;
    grid-column-end: 2;&lt;br /&gt;
    grid-row-start: 1;&lt;br /&gt;
    grid-row-end: 2;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.hedgedocs-card-description {&lt;br /&gt;
    grid-column-start: 1;&lt;br /&gt;
    grid-column-end: 2;&lt;br /&gt;
    grid-row-start: 2;&lt;br /&gt;
    grid-row-end: 3;&lt;br /&gt;
    text-align: justify;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.hedgedocs-card-button {&lt;br /&gt;
    grid-column-start: 2;&lt;br /&gt;
    grid-column-end: 3;&lt;br /&gt;
    grid-row-start: 3;&lt;br /&gt;
    grid-row-end: 4;&lt;br /&gt;
    text-align: right;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.hedgedocs-card-button a {&lt;br /&gt;
    background-color: var(--hedgedocs-button-accent-bg-color);&lt;br /&gt;
    color: var(--hedgedocs-button-accent-fg-color) !important;&lt;br /&gt;
    padding: 10px 30px !important;&lt;br /&gt;
    background-image: none !important;&lt;br /&gt;
    transition: background-color 0.1s;&lt;br /&gt;
    border-radius: 2px;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.hedgedocs-card-button a:hover {&lt;br /&gt;
    background-color: var(--hedgedocs-button-accent-bg-color-hover);&lt;br /&gt;
    text-decoration: none !important;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.hedgedocs-card-button p {&lt;br /&gt;
    margin: 0 !important;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.hedgedocs-home-links {&lt;br /&gt;
    display: flex;&lt;br /&gt;
    flex-direction: column;&lt;br /&gt;
    justify-content: center;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.hedgedocs-home-links a {&lt;br /&gt;
    display: inline-block;&lt;br /&gt;
    background-color: var(--hedgedocs-button-accent-bg-color);&lt;br /&gt;
    color: var(--hedgedocs-button-accent-fg-color) !important;&lt;br /&gt;
    padding: 10px 0px 10px 0px !important;&lt;br /&gt;
    text-align: center;&lt;br /&gt;
    margin-bottom: 10px;&lt;br /&gt;
    background-image: none !important;&lt;br /&gt;
    transition: background-color 0.1s;&lt;br /&gt;
    width: 100%;&lt;br /&gt;
    margin-left: 0;&lt;br /&gt;
    margin-right: 0;&lt;br /&gt;
    border-radius: 2px;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.hedgedocs-home-links a:hover {&lt;br /&gt;
    background-color: var(--hedgedocs-button-accent-bg-color-hover);&lt;br /&gt;
    text-decoration: none !important;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.hedgedocs-home-links p {&lt;br /&gt;
    margin: 0 0 1.5em 0 !important;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.hedgedocs-home-links a {&lt;br /&gt;
    margin-left: 0;&lt;br /&gt;
    margin-right: 0;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.hedgedocs-homepage-scripts {&lt;br /&gt;
    display: none;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
:root {&lt;br /&gt;
    --imagePreview-finalScale: 1.75;&lt;br /&gt;
    --imagePreview-finalScale-bounce: 1.765;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.imagePreview-background {&lt;br /&gt;
    background: #000000;&lt;br /&gt;
    visibility: visible;&lt;br /&gt;
    display: inherit;&lt;br /&gt;
    opacity: 85%;&lt;br /&gt;
    position: fixed;&lt;br /&gt;
    left: 0;&lt;br /&gt;
    top: 0;&lt;br /&gt;
    width: 100%;&lt;br /&gt;
    height: 100%;&lt;br /&gt;
    z-index: 9;&lt;br /&gt;
    transition: opacity 2s;&lt;br /&gt;
    animation: fadein 0.25s;&lt;br /&gt;
    cursor: default;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.imagePreview {&lt;br /&gt;
    text-align: center;&lt;br /&gt;
    opacity: 0;&lt;br /&gt;
    justify-content: center;&lt;br /&gt;
    display: none;&lt;br /&gt;
    z-index: 9;&lt;br /&gt;
    position: fixed;&lt;br /&gt;
    transition: opacity 0.25s;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.imagePreview-image {&lt;br /&gt;
    flex-direction: column;&lt;br /&gt;
    align-items: center;&lt;br /&gt;
    display: none;&lt;br /&gt;
    z-index: 9;&lt;br /&gt;
    position: fixed;&lt;br /&gt;
    margin: auto;&lt;br /&gt;
    top: 50%;&lt;br /&gt;
    left: 50%;&lt;br /&gt;
    transform: translate(-50%, -50%) scale(0);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.imagePreview-image-element {&lt;br /&gt;
    display: block;&lt;br /&gt;
    cursor: default !important;&lt;br /&gt;
    object-fit: contain;&lt;br /&gt;
    max-width: 20vw;&lt;br /&gt;
    max-height: 15vw;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
@media screen and (max-width: 76.25em) {&lt;br /&gt;
    .imagePreview-image-element {&lt;br /&gt;
        max-width: 50vw;&lt;br /&gt;
        max-height: 45vw;&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.imagePreview-image-caption {&lt;br /&gt;
    display: block;&lt;br /&gt;
    width: -moz-fit-content;&lt;br /&gt;
    width: 100%;&lt;br /&gt;
    color: #888888 !important;&lt;br /&gt;
    margin-top: .5rem;&lt;br /&gt;
    font-size: 10px;&lt;br /&gt;
    line-height: 12px;&lt;br /&gt;
    text-align: left;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.imagePreview-image-caption:hover {&lt;br /&gt;
    color: #CCCCCC !important;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.scaleup {&lt;br /&gt;
    animation: scaleup 0.25s forwards;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.scaledown {&lt;br /&gt;
    animation: scaledown 0.3s forwards;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
@keyframes scaleup {&lt;br /&gt;
    0% {&lt;br /&gt;
        opacity: 0%;&lt;br /&gt;
        transform: translate(-50%, -50%) scale(0);&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    100% {&lt;br /&gt;
        opacity: 100%;&lt;br /&gt;
        transform: translate(-50%, -50%) scale(var(--imagePreview-finalScale));&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
@keyframes scaledown {&lt;br /&gt;
    0% {&lt;br /&gt;
        opacity: 100%;&lt;br /&gt;
        transform: translate(-50%, -50%) scale(var(--imagePreview-finalScale));&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    80% {&lt;br /&gt;
        opacity: 0%;&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    100% {&lt;br /&gt;
        opacity: 0%;&lt;br /&gt;
        transform: translate(-50%, -50%) scale(0);&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.hedgedocs-infobox {&lt;br /&gt;
    display: flex;&lt;br /&gt;
    flex-direction: column;&lt;br /&gt;
    justify-content: center;&lt;br /&gt;
    border: 1px solid var(--hedgedocs-base-border-color);&lt;br /&gt;
    background-color: var(--hedgedocs-frame-bg-color);&lt;br /&gt;
    padding: 7px 13px 10px 13px;&lt;br /&gt;
    margin-bottom: 1em;&lt;br /&gt;
    font-size: 88%;&lt;br /&gt;
    float: right;&lt;br /&gt;
    clear: right;&lt;br /&gt;
    width: 17rem;&lt;br /&gt;
    margin-left: 1rem;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.hedgedocs-infobox tr {&lt;br /&gt;
    display: flex;&lt;br /&gt;
    align-items: center;&lt;br /&gt;
    justify-content: center;&lt;br /&gt;
    text-align: center;&lt;br /&gt;
    width: 100%;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.hedgedocs-infobox tbody {&lt;br /&gt;
    display: block;&lt;br /&gt;
    width: 100%;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
@media screen and (max-width: 76.25em) {&lt;br /&gt;
    .hedgedocs-infobox {&lt;br /&gt;
        float: none;&lt;br /&gt;
        clear: none;&lt;br /&gt;
        margin: auto;&lt;br /&gt;
        width: 20rem;&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.hedgedocs-infobox-title {&lt;br /&gt;
    font-size: 1.2em;&lt;br /&gt;
    font-weight: bold;&lt;br /&gt;
    text-align: center;&lt;br /&gt;
    padding-bottom: 0.2rem;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.hedgedocs-infobox-image {&lt;br /&gt;
    text-align: center;&lt;br /&gt;
    padding-bottom: 0.75rem;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.hedgedocs-infobox-image img {&lt;br /&gt;
    max-width: 100%;&lt;br /&gt;
    height: auto;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.hedgedocs-infobox-label {&lt;br /&gt;
    font-weight: bold;&lt;br /&gt;
    width: 50%;&lt;br /&gt;
    vertical-align: top;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.hedgedocs-infobox-data {&lt;br /&gt;
    width: 50%;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.hedgedocs-infobox-website,&lt;br /&gt;
.hedgedocs-infobox-download {&lt;br /&gt;
    padding-top: 0.25rem;&lt;br /&gt;
    width: 100%;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.hedgedocs-infobox .hedgedocs-infobox-links a {&lt;br /&gt;
    display: block;&lt;br /&gt;
    padding: .5em !important;&lt;br /&gt;
    background-color: var(--hedgedocs-button-accent-bg-color);&lt;br /&gt;
    color: var(--hedgedocs-button-accent-fg-color) !important;&lt;br /&gt;
    text-decoration: none;&lt;br /&gt;
    background-image: none !important;&lt;br /&gt;
    width: auto;&lt;br /&gt;
    transition: background-color 125ms;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.hedgedocs-infobox a:hover {&lt;br /&gt;
    background-color: var(--hedgedocs-button-accent-bg-color-hover);&lt;br /&gt;
    color: var(--hedgedocs-button-accent-fg-color);&lt;br /&gt;
    text-decoration: none;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.hedgedocs-notice {&lt;br /&gt;
    border: 1px solid;&lt;br /&gt;
    border-radius: 2px;&lt;br /&gt;
    color: var(--hedgedocs-fg-color);&lt;br /&gt;
    box-shadow: 0 0.2rem 0.5rem rgba(0, 0, 0, 0.051), 0 0 0.05rem rgba(0, 0, 0, 0.102);&lt;br /&gt;
    margin: 1.5rem 0;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.hedgedocs-notice-note {&lt;br /&gt;
    border-color: var(--hedgedocs-notice-note-border-color);&lt;br /&gt;
&lt;br /&gt;
    .hedgedocs-notice-header {&lt;br /&gt;
        background-color: var(--hedgedocs-notice-note-header-color);&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
.hedgedocs-notice-info {&lt;br /&gt;
    border-color: var(--hedgedocs-notice-info-border-color);&lt;br /&gt;
&lt;br /&gt;
    .hedgedocs-notice-header {&lt;br /&gt;
        background-color: var(--hedgedocs-notice-info-header-color);&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
.hedgedocs-notice-warn {&lt;br /&gt;
    border-color: var(--hedgedocs-notice-warn-border-color);&lt;br /&gt;
&lt;br /&gt;
    .hedgedocs-notice-header {&lt;br /&gt;
        background-color: var(--hedgedocs-notice-warn-header-color);&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
.hedgedocs-notice-example {&lt;br /&gt;
    border-color: var(--hedgedocs-notice-example-border-color);&lt;br /&gt;
&lt;br /&gt;
    .hedgedocs-notice-header {&lt;br /&gt;
        background-color: var(--hedgedocs-notice-example-header-color);&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.hedgedocs-notice .hedgedocs-notice-header {&lt;br /&gt;
    font-weight: bold;&lt;br /&gt;
    color: var(--hedgedocs-fg-color);&lt;br /&gt;
    padding: 7px 15px;&lt;br /&gt;
}&lt;br /&gt;
.hedgedocs-notice-content {&lt;br /&gt;
    padding: 15px;&lt;br /&gt;
    background-color: var(--hedgedocs-frame-bg-color);&lt;br /&gt;
    white-space: pre-wrap;&lt;br /&gt;
}&lt;br /&gt;
.hedgedocs-notice-content ul {&lt;br /&gt;
    margin-top: 0 !important;&lt;br /&gt;
    white-space: normal;&lt;br /&gt;
}&lt;br /&gt;
.hedgedocs-notice-content p {&lt;br /&gt;
    display: inline-block;&lt;br /&gt;
    padding: 0;&lt;br /&gt;
    margin: 0 !important;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.vector-main-menu-action-opt-out {&lt;br /&gt;
    display: none;&lt;br /&gt;
}&lt;br /&gt;
.vector-settings {&lt;br /&gt;
    display: none;&lt;br /&gt;
}&lt;br /&gt;
li#ca-talk, li#ca-nstab-main {&lt;br /&gt;
    display: none;&lt;br /&gt;
}&lt;br /&gt;
div.vector-page-toolbar-container {&lt;br /&gt;
    box-shadow: none;&lt;br /&gt;
    background-color: var(--hedgedocs-bg-color-secondary);&lt;br /&gt;
    padding: 0 10px;&lt;br /&gt;
}&lt;br /&gt;
.vector-page-titlebar::after {&lt;br /&gt;
    display: none !important;&lt;br /&gt;
}&lt;br /&gt;
.mw-portlet-skin-client-prefs-vector-feature-custom-font-size {&lt;br /&gt;
    display: none;&lt;br /&gt;
}&lt;br /&gt;
.mw-editsection { display:none; }&lt;br /&gt;
li#footer-places-disclaimers {&lt;br /&gt;
    display: none;&lt;br /&gt;
}&lt;/div&gt;</summary>
		<author><name>PTKay</name></author>
	</entry>
	<entry>
		<id>https://hedgedocs.com/index.php?title=MediaWiki:Vector-2022.css&amp;diff=437</id>
		<title>MediaWiki:Vector-2022.css</title>
		<link rel="alternate" type="text/html" href="https://hedgedocs.com/index.php?title=MediaWiki:Vector-2022.css&amp;diff=437"/>
		<updated>2025-03-26T08:54:59Z</updated>

		<summary type="html">&lt;p&gt;PTKay: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;/* HEDDGEDOCS COLOR PALETTES */&lt;br /&gt;
&lt;br /&gt;
:root {&lt;br /&gt;
    --hedgedocs-accent-color: #3e7e9e;&lt;br /&gt;
    --hedgedocs-accent-color-secondary: #4d9ec7;&lt;br /&gt;
    &lt;br /&gt;
    --hedgedocs-base-border-color: #adb5c2;&lt;br /&gt;
&lt;br /&gt;
    --hedgedocs-frame-bg-color: #e9ebec;&lt;br /&gt;
&lt;br /&gt;
    --hedgedocs-scrollbar-color: #888888;&lt;br /&gt;
&lt;br /&gt;
    --hedgedocs-bg-color: #f0f3f4;&lt;br /&gt;
    --hedgedocs-bg-color-secondary: #dddddd;&lt;br /&gt;
&lt;br /&gt;
    --hedgedocs-header-color: var(--hedgedocs-accent-color);&lt;br /&gt;
    --hedgedocs-header-fg-color: #f2f8f8;&lt;br /&gt;
&lt;br /&gt;
    --hedgedocs-fg-color-light: #333333;&lt;br /&gt;
    --hedgedocs-fg-color: #202122;&lt;br /&gt;
&lt;br /&gt;
    --hedgedocs-link-color: #36c;&lt;br /&gt;
    --hedgedocs-link-hover: #757575;&lt;br /&gt;
    --hedgedocs-link-active-color: #00aedf;&lt;br /&gt;
    --hedgedocs-new-link-color: #d73333;&lt;br /&gt;
&lt;br /&gt;
    --hedgedocs-input-bg-color: #ffffff;&lt;br /&gt;
    --hedgedocs-input-fg-color: #202122;&lt;br /&gt;
    --hedgedocs-input-border-color: var(--hedgedocs-input-bg-color);&lt;br /&gt;
&lt;br /&gt;
    --hedgedocs-button-bg-color: #bbbbbb;&lt;br /&gt;
    --hedgedocs-button-bg-color-hover: #999999;&lt;br /&gt;
    --hedgedocs-button-check-fg-color: #ffffff;&lt;br /&gt;
    --hedgedocs-button-check-bg-color: var(--hedgedocs-accent-color);&lt;br /&gt;
    --hedgedocs-button-accent-bg-color: var(--hedgedocs-accent-color);&lt;br /&gt;
    --hedgedocs-button-accent-fg-color: #ffffff;&lt;br /&gt;
    --hedgedocs-button-accent-bg-color-hover: var(--hedgedocs-accent-color-secondary);&lt;br /&gt;
&lt;br /&gt;
    --hedgedocs-table-header-bg-color: var(--hedgedocs-bg-color-secondary);&lt;br /&gt;
    --hedgedocs-table-data-bg-color: var(--hedgedocs-frame-bg-color);&lt;br /&gt;
    --hedgedocs-table-header-fg-color: var(--hedgedocs-fg-color);&lt;br /&gt;
    --hedgedocs-table-border-color: #B2B2B2;&lt;br /&gt;
&lt;br /&gt;
    --hedgedocs-notice-note-header-color: rgba(68, 138, 255, 0.15);&lt;br /&gt;
    --hedgedocs-notice-note-border-color: rgba(68, 138, 255, 0.75);&lt;br /&gt;
    --hedgedocs-notice-info-header-color: rgba(0, 184, 212, 0.15);&lt;br /&gt;
    --hedgedocs-notice-info-border-color: rgba(0, 184, 212, 0.75);&lt;br /&gt;
    --hedgedocs-notice-warn-header-color: rgba(255, 145, 0, 0.15);&lt;br /&gt;
    --hedgedocs-notice-warn-border-color: rgba(255, 145, 0, 0.75);&lt;br /&gt;
    --hedgedocs-notice-example-header-color: rgba(118, 84, 250, 0.15);&lt;br /&gt;
    --hedgedocs-notice-example-border-color: rgba(118, 84, 250, 0.75);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.skin-theme-clientpref-night {&lt;br /&gt;
    --hedgedocs-accent-color: #0f3885;&lt;br /&gt;
    --hedgedocs-accent-color-secondary: #0d2a5f;&lt;br /&gt;
&lt;br /&gt;
    --hedgedocs-base-border-color: #414658;&lt;br /&gt;
&lt;br /&gt;
    --hedgedocs-frame-bg-color: #1a1c24;&lt;br /&gt;
    &lt;br /&gt;
    --hedgedocs-scrollbar-color: #888888;&lt;br /&gt;
&lt;br /&gt;
    --hedgedocs-bg-color: #151515;&lt;br /&gt;
    --hedgedocs-bg-color-secondary: #272a35;&lt;br /&gt;
&lt;br /&gt;
    --hedgedocs-header-fg-color: #f2f8f8;&lt;br /&gt;
&lt;br /&gt;
    --hedgedocs-fg-color-light: #e0e6e6;&lt;br /&gt;
    --hedgedocs-fg-color: #d2d2d2;&lt;br /&gt;
&lt;br /&gt;
    --hedgedocs-link-color: #88a3e8;&lt;br /&gt;
    --hedgedocs-link-hover: #4e67f0;&lt;br /&gt;
    --hedgedocs-link-active-color: #5082dc;&lt;br /&gt;
    --hedgedocs-new-link-color: #fd7865;&lt;br /&gt;
&lt;br /&gt;
    --hedgedocs-input-bg-color: #222222;&lt;br /&gt;
    --hedgedocs-input-fg-color: #d2d2d2;&lt;br /&gt;
    --hedgedocs-input-border-color: var(--hedgedocs-input-bg-color);&lt;br /&gt;
&lt;br /&gt;
    --hedgedocs-button-bg-color: #333333;&lt;br /&gt;
    --hedgedocs-button-bg-color-hover: #555555;&lt;br /&gt;
    --hedgedocs-button-check-fg-color: #ffffff;&lt;br /&gt;
    --hedgedocs-button-check-bg-color: var(--hedgedocs-accent-color);&lt;br /&gt;
&lt;br /&gt;
    --hedgedocs-table-header-bg-color: #252833;&lt;br /&gt;
    --hedgedocs-table-data-bg-color: var(--hedgedocs-frame-bg-color);&lt;br /&gt;
    --hedgedocs-table-header-fg-color: var(--hedgedocs-fg-color);&lt;br /&gt;
    --hedgedocs-table-border-color: #3A3A3A;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
:root, .skin-theme-clientpref-night, html.skin-theme-clientpref-night {&lt;br /&gt;
    --background-color-base: var(--hedgedocs-bg-color);&lt;br /&gt;
    --background-color-interactive: var(--hedgedocs-bg-color-secondary);&lt;br /&gt;
    --background-color-interactive-subtle: var(--hedgedocs-bg-color-secondary);&lt;br /&gt;
    --background-color-neutral-subtle: var(--hedgedocs-bg-color);&lt;br /&gt;
    --border-color-base: var(--hedgedocs-base-border-color);&lt;br /&gt;
}&lt;br /&gt;
body {&lt;br /&gt;
    background-color: var(--hedgedocs-bg-color) !important;&lt;br /&gt;
    color: var(--hedgedocs-fg-color) !important;&lt;br /&gt;
}&lt;br /&gt;
.mw-page-container {&lt;br /&gt;
    background-color: transparent !important;&lt;br /&gt;
}&lt;br /&gt;
.mw-heading, h1, h2:not(.vector-pinnable-header-label), h3, h4, h5, h6 {&lt;br /&gt;
    color: var(--hedgedocs-fg-color) !important;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* HEDDGEDOCS DARK THEME TWEAKS */&lt;br /&gt;
&lt;br /&gt;
html.skin-theme-clientpref-night, .skin-theme-clientpref-night * {&lt;br /&gt;
    filter: none !important;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.skin-theme-clientpref-night {&lt;br /&gt;
    .mw-page-container .vector-icon {&lt;br /&gt;
        filter: invert() !important;&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    .vector-icon.mw-ui-icon-listBullet {&lt;br /&gt;
        filter: none !important;&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    .vector-icon.mw-ui-icon-wikimedia-unStar, .vector-icon.mw-ui-icon-wikimedia-star, .vector-icon.mw-ui-icon-wikimedia-expand {&lt;br /&gt;
        filter: none !important;&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    #vector-page-tools-dropdown-label {&lt;br /&gt;
        color: var(--hedgedocs-fg-color);&lt;br /&gt;
        transition: color 0s;&lt;br /&gt;
    }&lt;br /&gt;
    &lt;br /&gt;
    .vector-header-container .vector-icon:not(.vector-dropdown-content .vector-icon) {&lt;br /&gt;
        filter: brightness(2) !important;&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    .ext-darkmode-link::after {&lt;br /&gt;
        content: &#039;\263C&#039;;&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    .mw-list-item span#skin-theme-beta-notice {&lt;br /&gt;
        display: none !important;&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    #searchInput, .cdx-text-input__input:enabled, .cdx-text-input__input {&lt;br /&gt;
        background-color: var(--hedgedocs-input-bg-color) !important;&lt;br /&gt;
        border-color: var(--hedgedocs-input-border-color) !important;&lt;br /&gt;
        color: var(--hedgedocs-input-fg-color) !important;&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    .oo-ui-iconElement-icon:not(.oo-ui-checkboxInputWidget-checkIcon, .oo-ui-image-progressive, .oo-ui-icon-error), .oo-ui-indicatorElement-indicator {&lt;br /&gt;
        filter: invert() !important;&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.ext-darkmode-link::after {&lt;br /&gt;
    content: &#039;\263E&#039;;&lt;br /&gt;
    display: inline-block;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
span#skin-theme-beta-notice {&lt;br /&gt;
    display: none !important;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
#skin-client-prefs-skin-theme .cdx-radio:first-child {&lt;br /&gt;
    display: none;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* HEDDGEDOCS FONTS */&lt;br /&gt;
@import url(&#039;https://fonts.googleapis.com/css2?family=Roboto:ital,wdth,wght@0,75..100,100..900;1,75..100,100..900&amp;amp;display=swap&#039;);&lt;br /&gt;
@import url(&#039;https://fonts.googleapis.com/css2?family=Roboto+Mono:ital,wght@0,100..700;1,100..700&amp;amp;display=swap&#039;);&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
:root {&lt;br /&gt;
    --font-size-medium: var(--hedgedocs-font-size);&lt;br /&gt;
&lt;br /&gt;
    --hedgedocs-font-size: 16px;&lt;br /&gt;
    --hedgedocs-font-size-sidebars: 16px;&lt;br /&gt;
    --hedgedocs-font-size-sidebars-pin-button: 13px; &lt;br /&gt;
&lt;br /&gt;
    --hedgedocs-font: &#039;Roboto&#039;, -apple-system, BlinkMacSystemFont, Helvetica, Arial, sans-serif;&lt;br /&gt;
    --hedgedocs-code-font: &#039;Roboto Mono&#039;, SFMono-Regular, Consolas, Menlo, monospace;&lt;br /&gt;
}&lt;br /&gt;
body {&lt;br /&gt;
    -webkit-font-smoothing: antialiased;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
body, .mw-body, h1, h2, .mw-createacct-benefits-heading, .oo-ui-menuToolGroup-tools .oo-ui-tool-title, .vector-sticky-header-context-bar-primary, .mw-body-content .mw-number-text span {&lt;br /&gt;
    font-family: var(--hedgedocs-font) !important;&lt;br /&gt;
}&lt;br /&gt;
body .oo-ui-tool-name-preformatted .oo-ui-tool-link .oo-ui-tool-title, pre, code, tt, kbd, samp, .mw-code {&lt;br /&gt;
    font-family: var(--hedgedocs-code-font) !important;&lt;br /&gt;
}&lt;br /&gt;
h1 {&lt;br /&gt;
    font-weight: bold;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* HEDGEDOCS PAGE STYLING CSS */&lt;br /&gt;
&lt;br /&gt;
.mw-logo-wordmark {&lt;br /&gt;
    font-size: 17pt;&lt;br /&gt;
}&lt;br /&gt;
.mw-logo-icon {&lt;br /&gt;
    font-size: 7pt;&lt;br /&gt;
    padding-left: 1.5em;&lt;br /&gt;
}&lt;br /&gt;
.mw-logo {&lt;br /&gt;
    transition: opacity .25s;&lt;br /&gt;
}&lt;br /&gt;
.mw-logo:hover {&lt;br /&gt;
    opacity: 0.7;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
div.vector-pinnable-header-label, h2.vector-pinnable-header-label {&lt;br /&gt;
    background: var(--hedgedocs-header-color);&lt;br /&gt;
    color: var(--hedgedocs-header-fg-color);&lt;br /&gt;
    padding: 2px 10px 2px 10px;&lt;br /&gt;
    cursor: default;&lt;br /&gt;
    margin: 0em !important;&lt;br /&gt;
}&lt;br /&gt;
button.vector-pinnable-header-toggle-button {&lt;br /&gt;
    width: 100%;&lt;br /&gt;
    text-align: center;&lt;br /&gt;
    font-size: var(--hedgedocs-font-size-sidebars-pin-button);&lt;br /&gt;
    background-color: var(--hedgedocs-button-bg-color);&lt;br /&gt;
    padding: 2px 10px 2px 10px;&lt;br /&gt;
    transition: background-color 0.1s;&lt;br /&gt;
    margin-bottom: 0.5rem;&lt;br /&gt;
}&lt;br /&gt;
button.vector-pinnable-header-toggle-button:hover {&lt;br /&gt;
    background-color: var(--hedgedocs-button-bg-color-hover);&lt;br /&gt;
}&lt;br /&gt;
div.vector-pinnable-header {&lt;br /&gt;
    padding-bottom: 0;&lt;br /&gt;
    margin-bottom: 0;&lt;br /&gt;
    border-bottom: none;&lt;br /&gt;
    display: flex;&lt;br /&gt;
    flex-direction: column;&lt;br /&gt;
    justify-content: center;&lt;br /&gt;
}&lt;br /&gt;
div.vector-pinnable-element div.vector-menu-heading {&lt;br /&gt;
    color: var(--hedgedocs-fg-color-light);&lt;br /&gt;
    font-weight: bold;&lt;br /&gt;
    cursor: default;&lt;br /&gt;
    padding: 6px 0;&lt;br /&gt;
    border-bottom: none;&lt;br /&gt;
}&lt;br /&gt;
#vector-main-menu .vector-menu-content .mw-list-item:hover {&lt;br /&gt;
}&lt;br /&gt;
#vector-main-menu .vector-menu-content .mw-list-item a {&lt;br /&gt;
    font-weight: bold;&lt;br /&gt;
    text-decoration: none !important;&lt;br /&gt;
}&lt;br /&gt;
#vector-main-menu .vector-menu-content .mw-list-item a:hover {&lt;br /&gt;
    text-decoration: none !important;&lt;br /&gt;
}&lt;br /&gt;
#vector-main-menu .vector-menu-content .mw-list-item {&lt;br /&gt;
    margin-bottom: 0;&lt;br /&gt;
}&lt;br /&gt;
.mw-list-item a, .vector-toc-link {&lt;br /&gt;
    color: var(--hedgedocs-fg-color) !important;&lt;br /&gt;
    transition: color 125ms;&lt;br /&gt;
}&lt;br /&gt;
.mw-list-item a:hover, .vector-toc-link:hover {&lt;br /&gt;
    color: var(--hedgedocs-link-hover) !important;&lt;br /&gt;
    text-decoration: none;&lt;br /&gt;
}&lt;br /&gt;
.vector-toc .vector-toc-list-item-active &amp;gt; a.vector-toc-link, .vector-toc .vector-toc-level-1-active:not(.vector-toc-list-item-expanded) &amp;gt; a.vector-toc-link, .vector-toc .vector-toc-list-item-active.vector-toc-level-1-active &amp;gt; a.vector-toc-link {&lt;br /&gt;
    color: var(--hedgedocs-link-active-color) !important;&lt;br /&gt;
    font-weight: inherit;&lt;br /&gt;
}&lt;br /&gt;
.vector-pinnable-element, .vector-pinnable-header-label {&lt;br /&gt;
    font-size: var(--hedgedocs-font-size-sidebars) !important;&lt;br /&gt;
}&lt;br /&gt;
.vector-pinned-container {&lt;br /&gt;
    background-color: var(--hedgedocs-bg-color) !important;&lt;br /&gt;
}&lt;br /&gt;
.vector-sticky-pinned-container::after {&lt;br /&gt;
    background: linear-gradient(rgba(255, 255, 255, 0), var(--hedgedocs-bg-color)) !important;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
#toc-mw-content-text {&lt;br /&gt;
    display: none;&lt;br /&gt;
}&lt;br /&gt;
div.vector-toc-pinnable-header {&lt;br /&gt;
    margin-bottom: .25rem;&lt;br /&gt;
}&lt;br /&gt;
.vector-toc .vector-toc-toggle {&lt;br /&gt;
    top: 4px !important;&lt;br /&gt;
}&lt;br /&gt;
.vector-toc button.vector-pinnable-header-toggle-button {&lt;br /&gt;
    display: none !important;&lt;br /&gt;
}&lt;br /&gt;
.vector-toc .vector-toc-list-item-active &amp;gt; a.vector-toc-link span, .vector-toc .vector-toc-level-1-active:not(.vector-toc-list-item-expanded) &amp;gt; a.vector-toc-link span, .vector-toc .vector-toc-list-item-active.vector-toc-level-1-active &amp;gt; a.vector-toc-link span {&lt;br /&gt;
    border-left: .25em solid;&lt;br /&gt;
    padding-left: .5em;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.vector-page-titlebar .firstHeading {&lt;br /&gt;
    padding-bottom: 6px !important;&lt;br /&gt;
}&lt;br /&gt;
.firstHeading.mw-first-heading {&lt;br /&gt;
    font-size: 2.2rem;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.vector-menu-tabs .mw-list-item.vector-tab-noicon &amp;gt; a, #vector-page-tools-dropdown-label {&lt;br /&gt;
    padding: 9px 0 7px 0 !important;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.vector-header-container header.mw-header, .vector-header-container div.vector-sticky-header {&lt;br /&gt;
    background-color: transparent;&lt;br /&gt;
    max-width: 99.75rem;&lt;br /&gt;
}&lt;br /&gt;
.vector-sticky-header-context-bar .mw-page-title-main {&lt;br /&gt;
    font-weight: bold;&lt;br /&gt;
}&lt;br /&gt;
.vector-header-container {&lt;br /&gt;
    background-color: var(--hedgedocs-header-color);&lt;br /&gt;
    box-shadow: 0 0 2rem rgba(0, 0, 0, 0.3), 0 0.4rem 4rem rgba(0, 0, 0, 0.15);&lt;br /&gt;
    align-items: center;&lt;br /&gt;
    justify-content: center;&lt;br /&gt;
    min-height: 5rem;&lt;br /&gt;
    margin-bottom: 1rem;&lt;br /&gt;
}&lt;br /&gt;
.vector-header-container div.vector-sticky-header {&lt;br /&gt;
    color: var(--hedgedocs-header-fg-color);&lt;br /&gt;
    border: none;&lt;br /&gt;
}&lt;br /&gt;
.vector-header-container .vector-button-flush-left {&lt;br /&gt;
    margin-right: -24px;&lt;br /&gt;
}&lt;br /&gt;
.vector-header-container .vector-header-start .vector-button-flush-right {&lt;br /&gt;
    margin-right: -24px;&lt;br /&gt;
}&lt;br /&gt;
.vector-header-container .vector-header-end .vector-button-flush-right {&lt;br /&gt;
    margin-right: -6px;&lt;br /&gt;
}&lt;br /&gt;
.vector-header-container div.vector-sticky-header .vector-icon {&lt;br /&gt;
    filter: invert();&lt;br /&gt;
}&lt;br /&gt;
.mw-header a:not(.vector-menu-content a, a.cdx-typeahead-search__search-footer), .mw-header a:visited:not(.vector-menu-content a), .user-links-collapsible-item a:not(.vector-dropdown-content .user-links-collapsible-item a) {&lt;br /&gt;
    color: var(--hedgedocs-header-fg-color) !important;&lt;br /&gt;
}&lt;br /&gt;
.mw-header a:not(.vector-menu-content a, a.cdx-typeahead-search__search-footer):hover, .mw-header a:visited:not(.vector-menu-content a):hover, .user-links-collapsible-item a:not(.vector-dropdown-content .user-links-collapsible-item a):hover {&lt;br /&gt;
    color: var(--hedgedocs-header-fg-color) !important;&lt;br /&gt;
}&lt;br /&gt;
.vector-dropdown div.vector-dropdown-content {&lt;br /&gt;
    background-color: var(--hedgedocs-bg-color);&lt;br /&gt;
}&lt;br /&gt;
.mw-header .vector-icon:not(.vector-dropdown-content .vector-icon ) {&lt;br /&gt;
    filter: invert();&lt;br /&gt;
}&lt;br /&gt;
.vector-user-menu-logged-in .vector-dropdown-label::after {&lt;br /&gt;
    background-color: var(--hedgedocs-header-fg-color) !important;&lt;br /&gt;
}&lt;br /&gt;
.vector-header-container .vector-icon:not(.vector-dropdown-content .vector-icon) {&lt;br /&gt;
    filter: invert() brightness(2);&lt;br /&gt;
}&lt;br /&gt;
.vector-header .cdx-button.cdx-button--icon-only {&lt;br /&gt;
    min-width: 32px !important;&lt;br /&gt;
}&lt;br /&gt;
@media screen and (max-width: calc(639px)) {&lt;br /&gt;
    .vector-header {&lt;br /&gt;
        flex-flow: row !important;&lt;br /&gt;
    }&lt;br /&gt;
    .mw-logo {&lt;br /&gt;
        min-width: 11em !important;&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
.cdx-menu-item__text .cdx-search-result-title {&lt;br /&gt;
    color: var(--hedgedocs-fg-color);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
.cdx-menu {&lt;br /&gt;
    color: var(--hedgedocs-fg-color);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.mw-footer li {&lt;br /&gt;
    color: var(--hedgedocs-fg-color) !important;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
#searchInput, .cdx-text-input__input:enabled, .cdx-text-input__input {&lt;br /&gt;
    background-color: var(--hedgedocs-input-bg-color) !important;&lt;br /&gt;
    border-color: var(--hedgedocs-input-border-color) !important;&lt;br /&gt;
    color: var(--hedgedocs-input-fg-color) !important;&lt;br /&gt;
}&lt;br /&gt;
.oo-ui-checkboxInputWidget [type=&#039;checkbox&#039;] + span {&lt;br /&gt;
    background-color: var(--hedgedocs-input-bg-color);&lt;br /&gt;
    color: var(--hedgedocs-fg-color);&lt;br /&gt;
}&lt;br /&gt;
.oo-ui-textInputWidget input.oo-ui-inputWidget-input{&lt;br /&gt;
    background-color: var(--hedgedocs-input-bg-color);&lt;br /&gt;
}&lt;br /&gt;
.oo-ui-textInputWidget .oo-ui-inputWidget-input, .oo-ui-textInputWidget .oo-ui-inputWidget-input, .oo-ui-tagMultiselectWidget.oo-ui-widget-enabled {&lt;br /&gt;
    background-color: var(--hedgedocs-input-bg-color) !important;&lt;br /&gt;
    color: var(--hedgedocs-input-fg-color) !important;&lt;br /&gt;
}&lt;br /&gt;
.cdx-text-input__input:enabled~.cdx-text-input__icon-vue {&lt;br /&gt;
    color: var(--hedgedocs-input-fg-color) !important;&lt;br /&gt;
    opacity: 0.5 !important;&lt;br /&gt;
}&lt;br /&gt;
span.cdx-text-input__icon.cdx-text-input__start-icon {&lt;br /&gt;
    background-color: var(--hedgedocs-input-fg-color) !important;&lt;br /&gt;
    opacity: 0.5 !important;&lt;br /&gt;
}&lt;br /&gt;
textarea {&lt;br /&gt;
    background-color: var(--hedgedocs-bg-color);&lt;br /&gt;
}&lt;br /&gt;
button.cdx-button, button.cdx-button:enabled, .oo-ui-buttonElement-framed.oo-ui-widget-enabled &amp;gt; .oo-ui-buttonElement-button {&lt;br /&gt;
    background-color: var(--hedgedocs-button-bg-color);&lt;br /&gt;
    border: none;&lt;br /&gt;
    transition: background-color 0.1s;&lt;br /&gt;
}&lt;br /&gt;
button.cdx-button:hover, .oo-ui-buttonElement-framed.oo-ui-widget-enabled &amp;gt; .oo-ui-buttonElement-button:hover {&lt;br /&gt;
    background-color: var(--hedgedocs-button-bg-color-hover) !important;&lt;br /&gt;
}&lt;br /&gt;
.cdx-button.cdx-button--weight-primary.cdx-button--action-progressive, .oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive &amp;gt; .oo-ui-buttonElement-button, .oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive &amp;gt; .oo-ui-tool-link {&lt;br /&gt;
    background-color: var(--hedgedocs-button-accent-bg-color) !important;&lt;br /&gt;
    transition: background-color 0.1s;&lt;br /&gt;
}&lt;br /&gt;
.cdx-button.cdx-button--weight-primary.cdx-button--action-progressive:hover, .oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive &amp;gt; .oo-ui-buttonElement-button:hover, .oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive &amp;gt; .oo-ui-tool-link:hover {&lt;br /&gt;
    background-color: var(--hedgedocs-button-accent-bg-color-hover) !important;&lt;br /&gt;
}&lt;br /&gt;
.cdx-radio__icon {&lt;br /&gt;
    background-color: var(--hedgedocs-button-bg-color) !important;&lt;br /&gt;
}&lt;br /&gt;
.cdx-radio:hover .cdx-radio__icon {&lt;br /&gt;
    background-color: var(--hedgedocs-button-bg-color-hover) !important;&lt;br /&gt;
}&lt;br /&gt;
.cdx-radio__input:enabled:checked+.cdx-radio__icon {&lt;br /&gt;
    background-color: var(--hedgedocs-button-check-fg-color) !important;&lt;br /&gt;
    border-color: var(--hedgedocs-button-check-bg-color) !important;&lt;br /&gt;
}&lt;br /&gt;
.cdx-radio__input:enabled+.cdx-radio__icon {&lt;br /&gt;
    border-color: var(--hedgedocs-base-border-color) !important;&lt;br /&gt;
}&lt;br /&gt;
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type=&#039;checkbox&#039;]:checked + span, .oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type=&#039;checkbox&#039;]:indeterminate + span {&lt;br /&gt;
    background-color: var(--hedgedocs-button-check-bg-color) !important;&lt;br /&gt;
}&lt;br /&gt;
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-buttonElement-active &amp;gt; .oo-ui-buttonElement-button {&lt;br /&gt;
    background-color: var(--hedgedocs-button-accent-bg-color) !important;&lt;br /&gt;
    color: var(--hedgedocs-button-accent-fg-color) !important;&lt;br /&gt;
}&lt;br /&gt;
.tdg-templateDataParamWidget-param-alias:first-child {&lt;br /&gt;
    background-color: var(--hedgedocs-bg-color-secondary) !important;&lt;br /&gt;
    color: var(--hedgedocs-fg-color-light) !important;&lt;br /&gt;
    border-color: var(--hedgedocs-base-border-color);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
.oo-ui-toolbar-bar {&lt;br /&gt;
    background-color: var(--hedgedocs-bg-color-secondary) !important;&lt;br /&gt;
    color: var(--hedgedocs-fg-color) !important;&lt;br /&gt;
}&lt;br /&gt;
.oo-ui-menuToolGroup, .oo-ui-toolbar-position-top &amp;gt; .oo-ui-toolbar-bar {&lt;br /&gt;
    border-color: var(--hedgedocs-bg-color) !important;&lt;br /&gt;
}&lt;br /&gt;
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive &amp;gt; .oo-ui-tool-link {&lt;br /&gt;
    color: var(--hedgedocs-header-fg-color) !important;&lt;br /&gt;
    background-color: var(--hedgedocs-header-color) !important;&lt;br /&gt;
}&lt;br /&gt;
.editOptions {&lt;br /&gt;
    background-color: var(--hedgedocs-bg-color-secondary);&lt;br /&gt;
    color: var(--hedgedocs-fg-color);&lt;br /&gt;
}&lt;br /&gt;
.editCheckboxes {&lt;br /&gt;
    margin-bottom: .5rem;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.oo-ui-panelLayout-framed {&lt;br /&gt;
    border: none;&lt;br /&gt;
    background-color: var(--hedgedocs-frame-bg-color);&lt;br /&gt;
}&lt;br /&gt;
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-widget-enabled.oo-ui-optionWidget-selected {&lt;br /&gt;
    background-color: var(--hedgedocs-frame-bg-color) !important;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-widget-enabled.oo-ui-optionWidget-selected .oo-ui-labelElement-label, .oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget .oo-ui-labelElement-label {&lt;br /&gt;
    border: none !important;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.approved-revision {&lt;br /&gt;
    background-color: transparent !important;&lt;br /&gt;
    border: 3px solid;&lt;br /&gt;
    color: var(--hedgedocs-fg-color) !important;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
#mw-content-text {&lt;br /&gt;
    margin-top: 0 !important;&lt;br /&gt;
}&lt;br /&gt;
figure[typeof~=&#039;mw:File/Thumb&#039;] {&lt;br /&gt;
    background-color: transparent !important;&lt;br /&gt;
    border: none !important;&lt;br /&gt;
    margin-bottom: 0.5em !important;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
figure[typeof~=&#039;mw:File/Thumb&#039;].mw-halign-left {&lt;br /&gt;
    margin-bottom: 0.5em !important;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
figure[typeof~=&#039;mw:File/Thumb&#039;] &amp;gt; .mw-file-description &amp;gt; img {&lt;br /&gt;
    background-color: transparent !important;&lt;br /&gt;
    border: none !important;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
figure[typeof~=&#039;mw:File/Thumb&#039;] &amp;gt; .mw-file-description::after {&lt;br /&gt;
    display: none !important;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
figure[typeof~=&#039;mw:File/Thumb&#039;] &amp;gt; figcaption {&lt;br /&gt;
    background-color: transparent !important;&lt;br /&gt;
    border: none !important;&lt;br /&gt;
    padding: 5px !important;&lt;br /&gt;
}&lt;br /&gt;
.mw-body-content a {&lt;br /&gt;
    color: var(--hedgedocs-link-color);&lt;br /&gt;
}&lt;br /&gt;
.mw-body-content a:visited, .mw-body-content a:visited:hover{&lt;br /&gt;
    color: var(--hedgedocs-link-color);&lt;br /&gt;
}&lt;br /&gt;
.mw-body-content a.new {&lt;br /&gt;
    color: var(--hedgedocs-new-link-color);&lt;br /&gt;
}&lt;br /&gt;
.mw-body-content a.new:visited, .mw-body-content a.new:visited:hover{&lt;br /&gt;
    color: var(--hedgedocs-new-link-color);&lt;br /&gt;
}&lt;br /&gt;
.wikitable &amp;gt; tr &amp;gt; th, .wikitable &amp;gt; * &amp;gt; tr &amp;gt; th {&lt;br /&gt;
    background-color: var(--hedgedocs-table-header-bg-color) !important;&lt;br /&gt;
    color: var(--hedgedocs-table-header-fg-color) !important;&lt;br /&gt;
}&lt;br /&gt;
.wikitable &amp;gt; tr &amp;gt; th, .wikitable &amp;gt; tr &amp;gt; td, .wikitable &amp;gt; * &amp;gt; tr &amp;gt; th, .wikitable &amp;gt; * &amp;gt; tr &amp;gt; td {&lt;br /&gt;
    background-color: var(--hedgedocs-table-data-bg-color);&lt;br /&gt;
    color: var(--hedgedocs-fg-color);&lt;br /&gt;
}&lt;br /&gt;
.wikitable &amp;gt; tr &amp;gt; th, .wikitable &amp;gt; tr &amp;gt; td, .wikitable &amp;gt; * &amp;gt; tr &amp;gt; th, .wikitable &amp;gt; * &amp;gt; tr &amp;gt; td {&lt;br /&gt;
    border: 1px solid var(--hedgedocs-table-border-color) !important;&lt;br /&gt;
    padding: 5px 9px;&lt;br /&gt;
}&lt;br /&gt;
code, pre {&lt;br /&gt;
    background-color: var(--hedgedocs-frame-bg-color);&lt;br /&gt;
    border-color: var(--hedgedocs-base-border-color);&lt;br /&gt;
    color: var(--hedgedocs-fg-color-light);&lt;br /&gt;
    scrollbar-color: var(--hedgedocs-scrollbar-color) transparent;&lt;br /&gt;
}&lt;br /&gt;
pre {&lt;br /&gt;
    overflow: auto;&lt;br /&gt;
    white-space: pre;&lt;br /&gt;
}&lt;br /&gt;
figure.embedvideo, figure.embedvideo video {&lt;br /&gt;
    height: auto !important;&lt;br /&gt;
    width: 640px !important;&lt;br /&gt;
}&lt;br /&gt;
figure.embedvideo[data-service=&amp;quot;local-embed&amp;quot;] span.embedvideo-wrapper {&lt;br /&gt;
    height: auto !important;&lt;br /&gt;
    width: 640px !important;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* HEDGEDOCS CUSTOM ELEMENTS */&lt;br /&gt;
&lt;br /&gt;
.hedgedocs-card {&lt;br /&gt;
    display: grid;&lt;br /&gt;
    background-color: var(--hedgedocs-frame-bg-color);&lt;br /&gt;
    padding: 5px 20px 25px 20px;&lt;br /&gt;
    margin-bottom: 1rem;&lt;br /&gt;
    border-radius: 2px;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.hedgedocs-card-header p {&lt;br /&gt;
    margin: .5rem 0 0 0 !important;&lt;br /&gt;
    font-weight: bolder;&lt;br /&gt;
    font-size: 25px;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.hedgedocs-card-header {&lt;br /&gt;
    grid-column-start: 1;&lt;br /&gt;
    grid-column-end: 2;&lt;br /&gt;
    grid-row-start: 1;&lt;br /&gt;
    grid-row-end: 2;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.hedgedocs-card-description {&lt;br /&gt;
    grid-column-start: 1;&lt;br /&gt;
    grid-column-end: 2;&lt;br /&gt;
    grid-row-start: 2;&lt;br /&gt;
    grid-row-end: 3;&lt;br /&gt;
    text-align: justify;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.hedgedocs-card-button {&lt;br /&gt;
    grid-column-start: 2;&lt;br /&gt;
    grid-column-end: 3;&lt;br /&gt;
    grid-row-start: 3;&lt;br /&gt;
    grid-row-end: 4;&lt;br /&gt;
    text-align: right;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.hedgedocs-card-button a {&lt;br /&gt;
    background-color: var(--hedgedocs-button-accent-bg-color);&lt;br /&gt;
    color: var(--hedgedocs-button-accent-fg-color) !important;&lt;br /&gt;
    padding: 10px 30px !important;&lt;br /&gt;
    background-image: none !important;&lt;br /&gt;
    transition: background-color 0.1s;&lt;br /&gt;
    border-radius: 2px;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.hedgedocs-card-button a:hover {&lt;br /&gt;
    background-color: var(--hedgedocs-button-accent-bg-color-hover);&lt;br /&gt;
    text-decoration: none !important;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.hedgedocs-card-button p {&lt;br /&gt;
    margin: 0 !important;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.hedgedocs-home-links {&lt;br /&gt;
    display: flex;&lt;br /&gt;
    flex-direction: column;&lt;br /&gt;
    justify-content: center;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.hedgedocs-home-links a {&lt;br /&gt;
    display: inline-block;&lt;br /&gt;
    background-color: var(--hedgedocs-button-accent-bg-color);&lt;br /&gt;
    color: var(--hedgedocs-button-accent-fg-color) !important;&lt;br /&gt;
    padding: 10px 0px 10px 0px !important;&lt;br /&gt;
    text-align: center;&lt;br /&gt;
    margin-bottom: 10px;&lt;br /&gt;
    background-image: none !important;&lt;br /&gt;
    transition: background-color 0.1s;&lt;br /&gt;
    width: 100%;&lt;br /&gt;
    margin-left: 0;&lt;br /&gt;
    margin-right: 0;&lt;br /&gt;
    border-radius: 2px;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.hedgedocs-home-links a:hover {&lt;br /&gt;
    background-color: var(--hedgedocs-button-accent-bg-color-hover);&lt;br /&gt;
    text-decoration: none !important;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.hedgedocs-home-links p {&lt;br /&gt;
    margin: 0 0 1.5em 0 !important;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.hedgedocs-home-links a {&lt;br /&gt;
    margin-left: 0;&lt;br /&gt;
    margin-right: 0;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.hedgedocs-homepage-scripts {&lt;br /&gt;
    display: none;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
:root {&lt;br /&gt;
    --imagePreview-finalScale: 1.75;&lt;br /&gt;
    --imagePreview-finalScale-bounce: 1.765;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.imagePreview-background {&lt;br /&gt;
    background: #000000;&lt;br /&gt;
    visibility: visible;&lt;br /&gt;
    display: inherit;&lt;br /&gt;
    opacity: 85%;&lt;br /&gt;
    position: fixed;&lt;br /&gt;
    left: 0;&lt;br /&gt;
    top: 0;&lt;br /&gt;
    width: 100%;&lt;br /&gt;
    height: 100%;&lt;br /&gt;
    z-index: 9;&lt;br /&gt;
    transition: opacity 2s;&lt;br /&gt;
    animation: fadein 0.25s;&lt;br /&gt;
    cursor: default;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.imagePreview {&lt;br /&gt;
    text-align: center;&lt;br /&gt;
    opacity: 0;&lt;br /&gt;
    justify-content: center;&lt;br /&gt;
    display: none;&lt;br /&gt;
    z-index: 9;&lt;br /&gt;
    position: fixed;&lt;br /&gt;
    transition: opacity 0.25s;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.imagePreview-image {&lt;br /&gt;
    flex-direction: column;&lt;br /&gt;
    align-items: center;&lt;br /&gt;
    display: none;&lt;br /&gt;
    z-index: 9;&lt;br /&gt;
    position: fixed;&lt;br /&gt;
    margin: auto;&lt;br /&gt;
    top: 50%;&lt;br /&gt;
    left: 50%;&lt;br /&gt;
    transform: translate(-50%, -50%) scale(0);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.imagePreview-image-element {&lt;br /&gt;
    display: block;&lt;br /&gt;
    cursor: default !important;&lt;br /&gt;
    object-fit: contain;&lt;br /&gt;
    max-width: 20vw;&lt;br /&gt;
    max-height: 15vw;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
@media screen and (max-width: 76.25em) {&lt;br /&gt;
    .imagePreview-image-element {&lt;br /&gt;
        max-width: 50vw;&lt;br /&gt;
        max-height: 45vw;&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.imagePreview-image-caption {&lt;br /&gt;
    display: block;&lt;br /&gt;
    width: -moz-fit-content;&lt;br /&gt;
    width: 100%;&lt;br /&gt;
    color: #888888 !important;&lt;br /&gt;
    margin-top: .5rem;&lt;br /&gt;
    font-size: 10px;&lt;br /&gt;
    line-height: 12px;&lt;br /&gt;
    text-align: left;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.imagePreview-image-caption:hover {&lt;br /&gt;
    color: #CCCCCC !important;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.scaleup {&lt;br /&gt;
    animation: scaleup 0.25s forwards;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.scaledown {&lt;br /&gt;
    animation: scaledown 0.3s forwards;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
@keyframes scaleup {&lt;br /&gt;
    0% {&lt;br /&gt;
        opacity: 0%;&lt;br /&gt;
        transform: translate(-50%, -50%) scale(0);&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    100% {&lt;br /&gt;
        opacity: 100%;&lt;br /&gt;
        transform: translate(-50%, -50%) scale(var(--imagePreview-finalScale));&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
@keyframes scaledown {&lt;br /&gt;
    0% {&lt;br /&gt;
        opacity: 100%;&lt;br /&gt;
        transform: translate(-50%, -50%) scale(var(--imagePreview-finalScale));&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    80% {&lt;br /&gt;
        opacity: 0%;&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    100% {&lt;br /&gt;
        opacity: 0%;&lt;br /&gt;
        transform: translate(-50%, -50%) scale(0);&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.hedgedocs-infobox {&lt;br /&gt;
    display: flex;&lt;br /&gt;
    flex-direction: column;&lt;br /&gt;
    justify-content: center;&lt;br /&gt;
    border: 1px solid var(--hedgedocs-base-border-color);&lt;br /&gt;
    background-color: var(--hedgedocs-frame-bg-color);&lt;br /&gt;
    padding: 7px 13px 10px 13px;&lt;br /&gt;
    margin-bottom: 1em;&lt;br /&gt;
    font-size: 88%;&lt;br /&gt;
    float: right;&lt;br /&gt;
    clear: right;&lt;br /&gt;
    width: 17rem;&lt;br /&gt;
    margin-left: 1rem;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.hedgedocs-infobox tr {&lt;br /&gt;
    display: flex;&lt;br /&gt;
    align-items: center;&lt;br /&gt;
    justify-content: center;&lt;br /&gt;
    text-align: center;&lt;br /&gt;
    width: 100%;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.hedgedocs-infobox tbody {&lt;br /&gt;
    display: block;&lt;br /&gt;
    width: 100%;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
@media screen and (max-width: 76.25em) {&lt;br /&gt;
    .hedgedocs-infobox {&lt;br /&gt;
        float: none;&lt;br /&gt;
        clear: none;&lt;br /&gt;
        margin: auto;&lt;br /&gt;
        width: 20rem;&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.hedgedocs-infobox-title {&lt;br /&gt;
    font-size: 1.2em;&lt;br /&gt;
    font-weight: bold;&lt;br /&gt;
    text-align: center;&lt;br /&gt;
    padding-bottom: 0.2rem;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.hedgedocs-infobox-image {&lt;br /&gt;
    text-align: center;&lt;br /&gt;
    padding-bottom: 0.75rem;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.hedgedocs-infobox-image img {&lt;br /&gt;
    max-width: 100%;&lt;br /&gt;
    height: auto;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.hedgedocs-infobox-label {&lt;br /&gt;
    font-weight: bold;&lt;br /&gt;
    width: 50%;&lt;br /&gt;
    vertical-align: top;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.hedgedocs-infobox-data {&lt;br /&gt;
    width: 50%;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.hedgedocs-infobox-website,&lt;br /&gt;
.hedgedocs-infobox-download {&lt;br /&gt;
    padding-top: 0.25rem;&lt;br /&gt;
    width: 100%;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.hedgedocs-infobox .hedgedocs-infobox-links a {&lt;br /&gt;
    display: block;&lt;br /&gt;
    padding: .5em !important;&lt;br /&gt;
    background-color: var(--hedgedocs-button-accent-bg-color);&lt;br /&gt;
    color: var(--hedgedocs-button-accent-fg-color) !important;&lt;br /&gt;
    text-decoration: none;&lt;br /&gt;
    background-image: none !important;&lt;br /&gt;
    width: auto;&lt;br /&gt;
    transition: background-color 125ms;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.hedgedocs-infobox a:hover {&lt;br /&gt;
    background-color: var(--hedgedocs-button-accent-bg-color-hover);&lt;br /&gt;
    color: var(--hedgedocs-button-accent-fg-color);&lt;br /&gt;
    text-decoration: none;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.hedgedocs-notice {&lt;br /&gt;
    border: 1px solid;&lt;br /&gt;
    border-radius: 2px;&lt;br /&gt;
    color: var(--hedgedocs-fg-color);&lt;br /&gt;
    box-shadow: 0 0.2rem 0.5rem rgba(0, 0, 0, 0.051), 0 0 0.05rem rgba(0, 0, 0, 0.102);&lt;br /&gt;
    margin: 1.5rem 0;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.hedgedocs-notice-note {&lt;br /&gt;
    border-color: var(--hedgedocs-notice-note-border-color);&lt;br /&gt;
&lt;br /&gt;
    .hedgedocs-notice-header {&lt;br /&gt;
        background-color: var(--hedgedocs-notice-note-header-color);&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
.hedgedocs-notice-info {&lt;br /&gt;
    border-color: var(--hedgedocs-notice-info-border-color);&lt;br /&gt;
&lt;br /&gt;
    .hedgedocs-notice-header {&lt;br /&gt;
        background-color: var(--hedgedocs-notice-info-header-color);&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
.hedgedocs-notice-warn {&lt;br /&gt;
    border-color: var(--hedgedocs-notice-warn-border-color);&lt;br /&gt;
&lt;br /&gt;
    .hedgedocs-notice-header {&lt;br /&gt;
        background-color: var(--hedgedocs-notice-warn-header-color);&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
.hedgedocs-notice-example {&lt;br /&gt;
    border-color: var(--hedgedocs-notice-example-border-color);&lt;br /&gt;
&lt;br /&gt;
    .hedgedocs-notice-header {&lt;br /&gt;
        background-color: var(--hedgedocs-notice-example-header-color);&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.hedgedocs-notice .hedgedocs-notice-header {&lt;br /&gt;
    font-weight: bold;&lt;br /&gt;
    color: var(--hedgedocs-fg-color);&lt;br /&gt;
    padding: 7px 15px;&lt;br /&gt;
}&lt;br /&gt;
.hedgedocs-notice-content {&lt;br /&gt;
    padding: 15px;&lt;br /&gt;
    background-color: var(--hedgedocs-frame-bg-color);&lt;br /&gt;
    white-space: pre-wrap;&lt;br /&gt;
}&lt;br /&gt;
.hedgedocs-notice-content ul {&lt;br /&gt;
    margin-top: 0 !important;&lt;br /&gt;
    white-space: normal;&lt;br /&gt;
}&lt;br /&gt;
.hedgedocs-notice-content p {&lt;br /&gt;
    display: inline-block;&lt;br /&gt;
    padding: 0;&lt;br /&gt;
    margin: 0 !important;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.vector-main-menu-action-opt-out {&lt;br /&gt;
    display: none;&lt;br /&gt;
}&lt;br /&gt;
.vector-settings {&lt;br /&gt;
    display: none;&lt;br /&gt;
}&lt;br /&gt;
li#ca-talk, li#ca-nstab-main {&lt;br /&gt;
    display: none;&lt;br /&gt;
}&lt;br /&gt;
div.vector-page-toolbar-container {&lt;br /&gt;
    box-shadow: none;&lt;br /&gt;
    background-color: var(--hedgedocs-bg-color-secondary);&lt;br /&gt;
    padding: 0 10px;&lt;br /&gt;
}&lt;br /&gt;
.vector-page-titlebar::after {&lt;br /&gt;
    display: none !important;&lt;br /&gt;
}&lt;br /&gt;
.mw-portlet-skin-client-prefs-vector-feature-custom-font-size {&lt;br /&gt;
    display: none;&lt;br /&gt;
}&lt;br /&gt;
.mw-editsection { display:none; }&lt;br /&gt;
li#footer-places-disclaimers {&lt;br /&gt;
    display: none;&lt;br /&gt;
}&lt;/div&gt;</summary>
		<author><name>PTKay</name></author>
	</entry>
	<entry>
		<id>https://hedgedocs.com/index.php?title=MediaWiki:Vector-2022.css&amp;diff=436</id>
		<title>MediaWiki:Vector-2022.css</title>
		<link rel="alternate" type="text/html" href="https://hedgedocs.com/index.php?title=MediaWiki:Vector-2022.css&amp;diff=436"/>
		<updated>2025-03-26T08:53:38Z</updated>

		<summary type="html">&lt;p&gt;PTKay: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;/* HEDDGEDOCS COLOR PALETTES */&lt;br /&gt;
&lt;br /&gt;
:root {&lt;br /&gt;
    --hedgedocs-accent-color: #3e7e9e;&lt;br /&gt;
    --hedgedocs-accent-color-secondary: #4d9ec7;&lt;br /&gt;
    &lt;br /&gt;
    --hedgedocs-base-border-color: #adb5c2;&lt;br /&gt;
&lt;br /&gt;
    --hedgedocs-frame-bg-color: #e9ebec;&lt;br /&gt;
&lt;br /&gt;
    --hedgedocs-scrollbar-color: #888888;&lt;br /&gt;
&lt;br /&gt;
    --hedgedocs-bg-color: #f0f3f4;&lt;br /&gt;
    --hedgedocs-bg-color-secondary: #dddddd;&lt;br /&gt;
&lt;br /&gt;
    --hedgedocs-header-color: var(--hedgedocs-accent-color);&lt;br /&gt;
    --hedgedocs-header-fg-color: #f2f8f8;&lt;br /&gt;
&lt;br /&gt;
    --hedgedocs-fg-color-light: #333333;&lt;br /&gt;
    --hedgedocs-fg-color: #202122;&lt;br /&gt;
&lt;br /&gt;
    --hedgedocs-link-color: #36c;&lt;br /&gt;
    --hedgedocs-link-hover: #757575;&lt;br /&gt;
    --hedgedocs-link-active-color: #00aedf;&lt;br /&gt;
    --hedgedocs-new-link-color: #d73333;&lt;br /&gt;
&lt;br /&gt;
    --hedgedocs-input-bg-color: #ffffff;&lt;br /&gt;
    --hedgedocs-input-fg-color: #202122;&lt;br /&gt;
    --hedgedocs-input-border-color: var(--hedgedocs-input-bg-color);&lt;br /&gt;
&lt;br /&gt;
    --hedgedocs-button-bg-color: #bbbbbb;&lt;br /&gt;
    --hedgedocs-button-bg-color-hover: #999999;&lt;br /&gt;
    --hedgedocs-button-check-fg-color: #ffffff;&lt;br /&gt;
    --hedgedocs-button-check-bg-color: var(--hedgedocs-accent-color);&lt;br /&gt;
    --hedgedocs-button-accent-bg-color: var(--hedgedocs-accent-color);&lt;br /&gt;
    --hedgedocs-button-accent-fg-color: #ffffff;&lt;br /&gt;
    --hedgedocs-button-accent-bg-color-hover: var(--hedgedocs-accent-color-secondary);&lt;br /&gt;
&lt;br /&gt;
    --hedgedocs-table-header-bg-color: var(--hedgedocs-bg-color-secondary);&lt;br /&gt;
    --hedgedocs-table-data-bg-color: var(--hedgedocs-frame-bg-color);&lt;br /&gt;
    --hedgedocs-table-header-fg-color: var(--hedgedocs-fg-color);&lt;br /&gt;
    --hedgedocs-table-border-color: #B2B2B2;&lt;br /&gt;
&lt;br /&gt;
    --hedgedocs-notice-note-header-color: rgba(68, 138, 255, 0.15);&lt;br /&gt;
    --hedgedocs-notice-note-border-color: rgba(68, 138, 255, 0.75);&lt;br /&gt;
    --hedgedocs-notice-info-header-color: rgba(0, 184, 212, 0.15);&lt;br /&gt;
    --hedgedocs-notice-info-border-color: rgba(0, 184, 212, 0.75);&lt;br /&gt;
    --hedgedocs-notice-warn-header-color: rgba(255, 145, 0, 0.15);&lt;br /&gt;
    --hedgedocs-notice-warn-border-color: rgba(255, 145, 0, 0.75);&lt;br /&gt;
    --hedgedocs-notice-example-header-color: rgba(118, 84, 250, 0.15);&lt;br /&gt;
    --hedgedocs-notice-example-border-color: rgba(118, 84, 250, 0.75);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.skin-theme-clientpref-night {&lt;br /&gt;
    --hedgedocs-accent-color: #0f3885;&lt;br /&gt;
    --hedgedocs-accent-color-secondary: #0d2a5f;&lt;br /&gt;
&lt;br /&gt;
    --hedgedocs-base-border-color: #414658;&lt;br /&gt;
&lt;br /&gt;
    --hedgedocs-frame-bg-color: #1a1c24;&lt;br /&gt;
    &lt;br /&gt;
    --hedgedocs-scrollbar-color: #888888;&lt;br /&gt;
&lt;br /&gt;
    --hedgedocs-bg-color: #151515;&lt;br /&gt;
    --hedgedocs-bg-color-secondary: #272a35;&lt;br /&gt;
&lt;br /&gt;
    --hedgedocs-header-fg-color: #f2f8f8;&lt;br /&gt;
&lt;br /&gt;
    --hedgedocs-fg-color-light: #e0e6e6;&lt;br /&gt;
    --hedgedocs-fg-color: #d2d2d2;&lt;br /&gt;
&lt;br /&gt;
    --hedgedocs-link-color: #88a3e8;&lt;br /&gt;
    --hedgedocs-link-hover: #4e67f0;&lt;br /&gt;
    --hedgedocs-link-active-color: #5082dc;&lt;br /&gt;
    --hedgedocs-new-link-color: #fd7865;&lt;br /&gt;
&lt;br /&gt;
    --hedgedocs-input-bg-color: #222222;&lt;br /&gt;
    --hedgedocs-input-fg-color: #d2d2d2;&lt;br /&gt;
    --hedgedocs-input-border-color: var(--hedgedocs-input-bg-color);&lt;br /&gt;
&lt;br /&gt;
    --hedgedocs-button-bg-color: #333333;&lt;br /&gt;
    --hedgedocs-button-bg-color-hover: #555555;&lt;br /&gt;
    --hedgedocs-button-check-fg-color: #ffffff;&lt;br /&gt;
    --hedgedocs-button-check-bg-color: var(--hedgedocs-accent-color);&lt;br /&gt;
&lt;br /&gt;
    --hedgedocs-table-header-bg-color: #252833;&lt;br /&gt;
    --hedgedocs-table-data-bg-color: var(--hedgedocs-frame-bg-color);&lt;br /&gt;
    --hedgedocs-table-header-fg-color: var(--hedgedocs-fg-color);&lt;br /&gt;
    --hedgedocs-table-border-color: #3A3A3A;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
:root, .skin-theme-clientpref-night, html.skin-theme-clientpref-night {&lt;br /&gt;
    --background-color-base: var(--hedgedocs-bg-color);&lt;br /&gt;
    --background-color-interactive: var(--hedgedocs-bg-color-secondary);&lt;br /&gt;
    --background-color-interactive-subtle: var(--hedgedocs-bg-color-secondary);&lt;br /&gt;
    --background-color-neutral-subtle: var(--hedgedocs-bg-color);&lt;br /&gt;
    --border-color-base: var(--hedgedocs-base-border-color);&lt;br /&gt;
}&lt;br /&gt;
body {&lt;br /&gt;
    background-color: var(--hedgedocs-bg-color) !important;&lt;br /&gt;
    color: var(--hedgedocs-fg-color) !important;&lt;br /&gt;
}&lt;br /&gt;
.mw-page-container {&lt;br /&gt;
    background-color: transparent !important;&lt;br /&gt;
}&lt;br /&gt;
.mw-heading, h1, h2:not(.vector-pinnable-header-label), h3, h4, h5, h6 {&lt;br /&gt;
    color: var(--hedgedocs-fg-color) !important;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* HEDDGEDOCS DARK THEME TWEAKS */&lt;br /&gt;
&lt;br /&gt;
html.skin-theme-clientpref-night, .skin-theme-clientpref-night * {&lt;br /&gt;
    filter: none !important;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.skin-theme-clientpref-night {&lt;br /&gt;
    .mw-page-container .vector-icon {&lt;br /&gt;
        filter: invert() !important;&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    .vector-icon.mw-ui-icon-listBullet {&lt;br /&gt;
        filter: none !important;&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    .vector-icon.mw-ui-icon-wikimedia-unStar, .vector-icon.mw-ui-icon-wikimedia-star, .vector-icon.mw-ui-icon-wikimedia-expand {&lt;br /&gt;
        filter: none !important;&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    #vector-page-tools-dropdown-label {&lt;br /&gt;
        color: var(--hedgedocs-fg-color);&lt;br /&gt;
        transition: color 0s;&lt;br /&gt;
    }&lt;br /&gt;
    &lt;br /&gt;
    .mw-header .vector-icon:not(.vector-dropdown-content .vector-icon) {&lt;br /&gt;
        filter: brightness(2) !important;&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    .ext-darkmode-link::after {&lt;br /&gt;
        content: &#039;\263C&#039;;&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    .mw-list-item span#skin-theme-beta-notice {&lt;br /&gt;
        display: none !important;&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    #searchInput, .cdx-text-input__input:enabled, .cdx-text-input__input {&lt;br /&gt;
        background-color: var(--hedgedocs-input-bg-color) !important;&lt;br /&gt;
        border-color: var(--hedgedocs-input-border-color) !important;&lt;br /&gt;
        color: var(--hedgedocs-input-fg-color) !important;&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    .oo-ui-iconElement-icon:not(.oo-ui-checkboxInputWidget-checkIcon, .oo-ui-image-progressive, .oo-ui-icon-error), .oo-ui-indicatorElement-indicator {&lt;br /&gt;
        filter: invert() !important;&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.ext-darkmode-link::after {&lt;br /&gt;
    content: &#039;\263E&#039;;&lt;br /&gt;
    display: inline-block;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
span#skin-theme-beta-notice {&lt;br /&gt;
    display: none !important;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
#skin-client-prefs-skin-theme .cdx-radio:first-child {&lt;br /&gt;
    display: none;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* HEDDGEDOCS FONTS */&lt;br /&gt;
@import url(&#039;https://fonts.googleapis.com/css2?family=Roboto:ital,wdth,wght@0,75..100,100..900;1,75..100,100..900&amp;amp;display=swap&#039;);&lt;br /&gt;
@import url(&#039;https://fonts.googleapis.com/css2?family=Roboto+Mono:ital,wght@0,100..700;1,100..700&amp;amp;display=swap&#039;);&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
:root {&lt;br /&gt;
    --font-size-medium: var(--hedgedocs-font-size);&lt;br /&gt;
&lt;br /&gt;
    --hedgedocs-font-size: 16px;&lt;br /&gt;
    --hedgedocs-font-size-sidebars: 16px;&lt;br /&gt;
    --hedgedocs-font-size-sidebars-pin-button: 13px; &lt;br /&gt;
&lt;br /&gt;
    --hedgedocs-font: &#039;Roboto&#039;, -apple-system, BlinkMacSystemFont, Helvetica, Arial, sans-serif;&lt;br /&gt;
    --hedgedocs-code-font: &#039;Roboto Mono&#039;, SFMono-Regular, Consolas, Menlo, monospace;&lt;br /&gt;
}&lt;br /&gt;
body {&lt;br /&gt;
    -webkit-font-smoothing: antialiased;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
body, .mw-body, h1, h2, .mw-createacct-benefits-heading, .oo-ui-menuToolGroup-tools .oo-ui-tool-title, .vector-sticky-header-context-bar-primary, .mw-body-content .mw-number-text span {&lt;br /&gt;
    font-family: var(--hedgedocs-font) !important;&lt;br /&gt;
}&lt;br /&gt;
body .oo-ui-tool-name-preformatted .oo-ui-tool-link .oo-ui-tool-title, pre, code, tt, kbd, samp, .mw-code {&lt;br /&gt;
    font-family: var(--hedgedocs-code-font) !important;&lt;br /&gt;
}&lt;br /&gt;
h1 {&lt;br /&gt;
    font-weight: bold;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* HEDGEDOCS PAGE STYLING CSS */&lt;br /&gt;
&lt;br /&gt;
.mw-logo-wordmark {&lt;br /&gt;
    font-size: 17pt;&lt;br /&gt;
}&lt;br /&gt;
.mw-logo-icon {&lt;br /&gt;
    font-size: 7pt;&lt;br /&gt;
    padding-left: 1.5em;&lt;br /&gt;
}&lt;br /&gt;
.mw-logo {&lt;br /&gt;
    transition: opacity .25s;&lt;br /&gt;
}&lt;br /&gt;
.mw-logo:hover {&lt;br /&gt;
    opacity: 0.7;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
div.vector-pinnable-header-label, h2.vector-pinnable-header-label {&lt;br /&gt;
    background: var(--hedgedocs-header-color);&lt;br /&gt;
    color: var(--hedgedocs-header-fg-color);&lt;br /&gt;
    padding: 2px 10px 2px 10px;&lt;br /&gt;
    cursor: default;&lt;br /&gt;
    margin: 0em !important;&lt;br /&gt;
}&lt;br /&gt;
button.vector-pinnable-header-toggle-button {&lt;br /&gt;
    width: 100%;&lt;br /&gt;
    text-align: center;&lt;br /&gt;
    font-size: var(--hedgedocs-font-size-sidebars-pin-button);&lt;br /&gt;
    background-color: var(--hedgedocs-button-bg-color);&lt;br /&gt;
    padding: 2px 10px 2px 10px;&lt;br /&gt;
    transition: background-color 0.1s;&lt;br /&gt;
    margin-bottom: 0.5rem;&lt;br /&gt;
}&lt;br /&gt;
button.vector-pinnable-header-toggle-button:hover {&lt;br /&gt;
    background-color: var(--hedgedocs-button-bg-color-hover);&lt;br /&gt;
}&lt;br /&gt;
div.vector-pinnable-header {&lt;br /&gt;
    padding-bottom: 0;&lt;br /&gt;
    margin-bottom: 0;&lt;br /&gt;
    border-bottom: none;&lt;br /&gt;
    display: flex;&lt;br /&gt;
    flex-direction: column;&lt;br /&gt;
    justify-content: center;&lt;br /&gt;
}&lt;br /&gt;
div.vector-pinnable-element div.vector-menu-heading {&lt;br /&gt;
    color: var(--hedgedocs-fg-color-light);&lt;br /&gt;
    font-weight: bold;&lt;br /&gt;
    cursor: default;&lt;br /&gt;
    padding: 6px 0;&lt;br /&gt;
    border-bottom: none;&lt;br /&gt;
}&lt;br /&gt;
#vector-main-menu .vector-menu-content .mw-list-item:hover {&lt;br /&gt;
}&lt;br /&gt;
#vector-main-menu .vector-menu-content .mw-list-item a {&lt;br /&gt;
    font-weight: bold;&lt;br /&gt;
    text-decoration: none !important;&lt;br /&gt;
}&lt;br /&gt;
#vector-main-menu .vector-menu-content .mw-list-item a:hover {&lt;br /&gt;
    text-decoration: none !important;&lt;br /&gt;
}&lt;br /&gt;
#vector-main-menu .vector-menu-content .mw-list-item {&lt;br /&gt;
    margin-bottom: 0;&lt;br /&gt;
}&lt;br /&gt;
.mw-list-item a, .vector-toc-link {&lt;br /&gt;
    color: var(--hedgedocs-fg-color) !important;&lt;br /&gt;
    transition: color 125ms;&lt;br /&gt;
}&lt;br /&gt;
.mw-list-item a:hover, .vector-toc-link:hover {&lt;br /&gt;
    color: var(--hedgedocs-link-hover) !important;&lt;br /&gt;
    text-decoration: none;&lt;br /&gt;
}&lt;br /&gt;
.vector-toc .vector-toc-list-item-active &amp;gt; a.vector-toc-link, .vector-toc .vector-toc-level-1-active:not(.vector-toc-list-item-expanded) &amp;gt; a.vector-toc-link, .vector-toc .vector-toc-list-item-active.vector-toc-level-1-active &amp;gt; a.vector-toc-link {&lt;br /&gt;
    color: var(--hedgedocs-link-active-color) !important;&lt;br /&gt;
    font-weight: inherit;&lt;br /&gt;
}&lt;br /&gt;
.vector-pinnable-element, .vector-pinnable-header-label {&lt;br /&gt;
    font-size: var(--hedgedocs-font-size-sidebars) !important;&lt;br /&gt;
}&lt;br /&gt;
.vector-pinned-container {&lt;br /&gt;
    background-color: var(--hedgedocs-bg-color) !important;&lt;br /&gt;
}&lt;br /&gt;
.vector-sticky-pinned-container::after {&lt;br /&gt;
    background: linear-gradient(rgba(255, 255, 255, 0), var(--hedgedocs-bg-color)) !important;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
#toc-mw-content-text {&lt;br /&gt;
    display: none;&lt;br /&gt;
}&lt;br /&gt;
div.vector-toc-pinnable-header {&lt;br /&gt;
    margin-bottom: .25rem;&lt;br /&gt;
}&lt;br /&gt;
.vector-toc .vector-toc-toggle {&lt;br /&gt;
    top: 4px !important;&lt;br /&gt;
}&lt;br /&gt;
.vector-toc button.vector-pinnable-header-toggle-button {&lt;br /&gt;
    display: none !important;&lt;br /&gt;
}&lt;br /&gt;
.vector-toc .vector-toc-list-item-active &amp;gt; a.vector-toc-link span, .vector-toc .vector-toc-level-1-active:not(.vector-toc-list-item-expanded) &amp;gt; a.vector-toc-link span, .vector-toc .vector-toc-list-item-active.vector-toc-level-1-active &amp;gt; a.vector-toc-link span {&lt;br /&gt;
    border-left: .25em solid;&lt;br /&gt;
    padding-left: .5em;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.vector-page-titlebar .firstHeading {&lt;br /&gt;
    padding-bottom: 6px !important;&lt;br /&gt;
}&lt;br /&gt;
.firstHeading.mw-first-heading {&lt;br /&gt;
    font-size: 2.2rem;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.vector-menu-tabs .mw-list-item.vector-tab-noicon &amp;gt; a, #vector-page-tools-dropdown-label {&lt;br /&gt;
    padding: 9px 0 7px 0 !important;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.vector-header-container header.mw-header, .vector-header-container div.vector-sticky-header {&lt;br /&gt;
    background-color: transparent;&lt;br /&gt;
    max-width: 99.75rem;&lt;br /&gt;
}&lt;br /&gt;
.vector-sticky-header-context-bar .mw-page-title-main {&lt;br /&gt;
    font-weight: bold;&lt;br /&gt;
}&lt;br /&gt;
.vector-header-container {&lt;br /&gt;
    background-color: var(--hedgedocs-header-color);&lt;br /&gt;
    box-shadow: 0 0 2rem rgba(0, 0, 0, 0.3), 0 0.4rem 4rem rgba(0, 0, 0, 0.15);&lt;br /&gt;
    align-items: center;&lt;br /&gt;
    justify-content: center;&lt;br /&gt;
    min-height: 5rem;&lt;br /&gt;
    margin-bottom: 1rem;&lt;br /&gt;
}&lt;br /&gt;
.vector-header-container div.vector-sticky-header {&lt;br /&gt;
    color: var(--hedgedocs-header-fg-color);&lt;br /&gt;
    border: none;&lt;br /&gt;
}&lt;br /&gt;
.vector-header-container .vector-button-flush-left {&lt;br /&gt;
    margin-right: -24px;&lt;br /&gt;
}&lt;br /&gt;
.vector-header-container .vector-header-start .vector-button-flush-right {&lt;br /&gt;
    margin-right: -24px;&lt;br /&gt;
}&lt;br /&gt;
.vector-header-container .vector-header-end .vector-button-flush-right {&lt;br /&gt;
    margin-right: -6px;&lt;br /&gt;
}&lt;br /&gt;
.vector-header-container div.vector-sticky-header .vector-icon {&lt;br /&gt;
    filter: invert();&lt;br /&gt;
}&lt;br /&gt;
.mw-header a:not(.vector-menu-content a, a.cdx-typeahead-search__search-footer), .mw-header a:visited:not(.vector-menu-content a), .user-links-collapsible-item a:not(.vector-dropdown-content .user-links-collapsible-item a) {&lt;br /&gt;
    color: var(--hedgedocs-header-fg-color) !important;&lt;br /&gt;
}&lt;br /&gt;
.mw-header a:not(.vector-menu-content a, a.cdx-typeahead-search__search-footer):hover, .mw-header a:visited:not(.vector-menu-content a):hover, .user-links-collapsible-item a:not(.vector-dropdown-content .user-links-collapsible-item a):hover {&lt;br /&gt;
    color: var(--hedgedocs-header-fg-color) !important;&lt;br /&gt;
}&lt;br /&gt;
.vector-dropdown div.vector-dropdown-content {&lt;br /&gt;
    background-color: var(--hedgedocs-bg-color);&lt;br /&gt;
}&lt;br /&gt;
.mw-header .vector-icon:not(.vector-dropdown-content .vector-icon ) {&lt;br /&gt;
    filter: invert();&lt;br /&gt;
}&lt;br /&gt;
.vector-user-menu-logged-in .vector-dropdown-label::after {&lt;br /&gt;
    background-color: var(--hedgedocs-header-fg-color) !important;&lt;br /&gt;
}&lt;br /&gt;
.vector-header-container .vector-icon:not(.vector-dropdown-content .vector-icon) {&lt;br /&gt;
    filter: invert() brightness(2);&lt;br /&gt;
}&lt;br /&gt;
.vector-header .cdx-button.cdx-button--icon-only {&lt;br /&gt;
    min-width: 32px !important;&lt;br /&gt;
}&lt;br /&gt;
@media screen and (max-width: calc(639px)) {&lt;br /&gt;
    .vector-header {&lt;br /&gt;
        flex-flow: row !important;&lt;br /&gt;
    }&lt;br /&gt;
    .mw-logo {&lt;br /&gt;
        min-width: 11em !important;&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
.cdx-menu-item__text .cdx-search-result-title {&lt;br /&gt;
    color: var(--hedgedocs-fg-color);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
.cdx-menu {&lt;br /&gt;
    color: var(--hedgedocs-fg-color);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.mw-footer li {&lt;br /&gt;
    color: var(--hedgedocs-fg-color) !important;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
#searchInput, .cdx-text-input__input:enabled, .cdx-text-input__input {&lt;br /&gt;
    background-color: var(--hedgedocs-input-bg-color) !important;&lt;br /&gt;
    border-color: var(--hedgedocs-input-border-color) !important;&lt;br /&gt;
    color: var(--hedgedocs-input-fg-color) !important;&lt;br /&gt;
}&lt;br /&gt;
.oo-ui-checkboxInputWidget [type=&#039;checkbox&#039;] + span {&lt;br /&gt;
    background-color: var(--hedgedocs-input-bg-color);&lt;br /&gt;
    color: var(--hedgedocs-fg-color);&lt;br /&gt;
}&lt;br /&gt;
.oo-ui-textInputWidget input.oo-ui-inputWidget-input{&lt;br /&gt;
    background-color: var(--hedgedocs-input-bg-color);&lt;br /&gt;
}&lt;br /&gt;
.oo-ui-textInputWidget .oo-ui-inputWidget-input, .oo-ui-textInputWidget .oo-ui-inputWidget-input, .oo-ui-tagMultiselectWidget.oo-ui-widget-enabled {&lt;br /&gt;
    background-color: var(--hedgedocs-input-bg-color) !important;&lt;br /&gt;
    color: var(--hedgedocs-input-fg-color) !important;&lt;br /&gt;
}&lt;br /&gt;
.cdx-text-input__input:enabled~.cdx-text-input__icon-vue {&lt;br /&gt;
    color: var(--hedgedocs-input-fg-color) !important;&lt;br /&gt;
    opacity: 0.5 !important;&lt;br /&gt;
}&lt;br /&gt;
span.cdx-text-input__icon.cdx-text-input__start-icon {&lt;br /&gt;
    background-color: var(--hedgedocs-input-fg-color) !important;&lt;br /&gt;
    opacity: 0.5 !important;&lt;br /&gt;
}&lt;br /&gt;
textarea {&lt;br /&gt;
    background-color: var(--hedgedocs-bg-color);&lt;br /&gt;
}&lt;br /&gt;
button.cdx-button, button.cdx-button:enabled, .oo-ui-buttonElement-framed.oo-ui-widget-enabled &amp;gt; .oo-ui-buttonElement-button {&lt;br /&gt;
    background-color: var(--hedgedocs-button-bg-color);&lt;br /&gt;
    border: none;&lt;br /&gt;
    transition: background-color 0.1s;&lt;br /&gt;
}&lt;br /&gt;
button.cdx-button:hover, .oo-ui-buttonElement-framed.oo-ui-widget-enabled &amp;gt; .oo-ui-buttonElement-button:hover {&lt;br /&gt;
    background-color: var(--hedgedocs-button-bg-color-hover) !important;&lt;br /&gt;
}&lt;br /&gt;
.cdx-button.cdx-button--weight-primary.cdx-button--action-progressive, .oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive &amp;gt; .oo-ui-buttonElement-button, .oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive &amp;gt; .oo-ui-tool-link {&lt;br /&gt;
    background-color: var(--hedgedocs-button-accent-bg-color) !important;&lt;br /&gt;
    transition: background-color 0.1s;&lt;br /&gt;
}&lt;br /&gt;
.cdx-button.cdx-button--weight-primary.cdx-button--action-progressive:hover, .oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive &amp;gt; .oo-ui-buttonElement-button:hover, .oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive &amp;gt; .oo-ui-tool-link:hover {&lt;br /&gt;
    background-color: var(--hedgedocs-button-accent-bg-color-hover) !important;&lt;br /&gt;
}&lt;br /&gt;
.cdx-radio__icon {&lt;br /&gt;
    background-color: var(--hedgedocs-button-bg-color) !important;&lt;br /&gt;
}&lt;br /&gt;
.cdx-radio:hover .cdx-radio__icon {&lt;br /&gt;
    background-color: var(--hedgedocs-button-bg-color-hover) !important;&lt;br /&gt;
}&lt;br /&gt;
.cdx-radio__input:enabled:checked+.cdx-radio__icon {&lt;br /&gt;
    background-color: var(--hedgedocs-button-check-fg-color) !important;&lt;br /&gt;
    border-color: var(--hedgedocs-button-check-bg-color) !important;&lt;br /&gt;
}&lt;br /&gt;
.cdx-radio__input:enabled+.cdx-radio__icon {&lt;br /&gt;
    border-color: var(--hedgedocs-base-border-color) !important;&lt;br /&gt;
}&lt;br /&gt;
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type=&#039;checkbox&#039;]:checked + span, .oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type=&#039;checkbox&#039;]:indeterminate + span {&lt;br /&gt;
    background-color: var(--hedgedocs-button-check-bg-color) !important;&lt;br /&gt;
}&lt;br /&gt;
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-buttonElement-active &amp;gt; .oo-ui-buttonElement-button {&lt;br /&gt;
    background-color: var(--hedgedocs-button-accent-bg-color) !important;&lt;br /&gt;
    color: var(--hedgedocs-button-accent-fg-color) !important;&lt;br /&gt;
}&lt;br /&gt;
.tdg-templateDataParamWidget-param-alias:first-child {&lt;br /&gt;
    background-color: var(--hedgedocs-bg-color-secondary) !important;&lt;br /&gt;
    color: var(--hedgedocs-fg-color-light) !important;&lt;br /&gt;
    border-color: var(--hedgedocs-base-border-color);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
.oo-ui-toolbar-bar {&lt;br /&gt;
    background-color: var(--hedgedocs-bg-color-secondary) !important;&lt;br /&gt;
    color: var(--hedgedocs-fg-color) !important;&lt;br /&gt;
}&lt;br /&gt;
.oo-ui-menuToolGroup, .oo-ui-toolbar-position-top &amp;gt; .oo-ui-toolbar-bar {&lt;br /&gt;
    border-color: var(--hedgedocs-bg-color) !important;&lt;br /&gt;
}&lt;br /&gt;
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive &amp;gt; .oo-ui-tool-link {&lt;br /&gt;
    color: var(--hedgedocs-header-fg-color) !important;&lt;br /&gt;
    background-color: var(--hedgedocs-header-color) !important;&lt;br /&gt;
}&lt;br /&gt;
.editOptions {&lt;br /&gt;
    background-color: var(--hedgedocs-bg-color-secondary);&lt;br /&gt;
    color: var(--hedgedocs-fg-color);&lt;br /&gt;
}&lt;br /&gt;
.editCheckboxes {&lt;br /&gt;
    margin-bottom: .5rem;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.oo-ui-panelLayout-framed {&lt;br /&gt;
    border: none;&lt;br /&gt;
    background-color: var(--hedgedocs-frame-bg-color);&lt;br /&gt;
}&lt;br /&gt;
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-widget-enabled.oo-ui-optionWidget-selected {&lt;br /&gt;
    background-color: var(--hedgedocs-frame-bg-color) !important;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-widget-enabled.oo-ui-optionWidget-selected .oo-ui-labelElement-label, .oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget .oo-ui-labelElement-label {&lt;br /&gt;
    border: none !important;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.approved-revision {&lt;br /&gt;
    background-color: transparent !important;&lt;br /&gt;
    border: 3px solid;&lt;br /&gt;
    color: var(--hedgedocs-fg-color) !important;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
#mw-content-text {&lt;br /&gt;
    margin-top: 0 !important;&lt;br /&gt;
}&lt;br /&gt;
figure[typeof~=&#039;mw:File/Thumb&#039;] {&lt;br /&gt;
    background-color: transparent !important;&lt;br /&gt;
    border: none !important;&lt;br /&gt;
    margin-bottom: 0.5em !important;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
figure[typeof~=&#039;mw:File/Thumb&#039;].mw-halign-left {&lt;br /&gt;
    margin-bottom: 0.5em !important;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
figure[typeof~=&#039;mw:File/Thumb&#039;] &amp;gt; .mw-file-description &amp;gt; img {&lt;br /&gt;
    background-color: transparent !important;&lt;br /&gt;
    border: none !important;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
figure[typeof~=&#039;mw:File/Thumb&#039;] &amp;gt; .mw-file-description::after {&lt;br /&gt;
    display: none !important;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
figure[typeof~=&#039;mw:File/Thumb&#039;] &amp;gt; figcaption {&lt;br /&gt;
    background-color: transparent !important;&lt;br /&gt;
    border: none !important;&lt;br /&gt;
    padding: 5px !important;&lt;br /&gt;
}&lt;br /&gt;
.mw-body-content a {&lt;br /&gt;
    color: var(--hedgedocs-link-color);&lt;br /&gt;
}&lt;br /&gt;
.mw-body-content a:visited, .mw-body-content a:visited:hover{&lt;br /&gt;
    color: var(--hedgedocs-link-color);&lt;br /&gt;
}&lt;br /&gt;
.mw-body-content a.new {&lt;br /&gt;
    color: var(--hedgedocs-new-link-color);&lt;br /&gt;
}&lt;br /&gt;
.mw-body-content a.new:visited, .mw-body-content a.new:visited:hover{&lt;br /&gt;
    color: var(--hedgedocs-new-link-color);&lt;br /&gt;
}&lt;br /&gt;
.wikitable &amp;gt; tr &amp;gt; th, .wikitable &amp;gt; * &amp;gt; tr &amp;gt; th {&lt;br /&gt;
    background-color: var(--hedgedocs-table-header-bg-color) !important;&lt;br /&gt;
    color: var(--hedgedocs-table-header-fg-color) !important;&lt;br /&gt;
}&lt;br /&gt;
.wikitable &amp;gt; tr &amp;gt; th, .wikitable &amp;gt; tr &amp;gt; td, .wikitable &amp;gt; * &amp;gt; tr &amp;gt; th, .wikitable &amp;gt; * &amp;gt; tr &amp;gt; td {&lt;br /&gt;
    background-color: var(--hedgedocs-table-data-bg-color);&lt;br /&gt;
    color: var(--hedgedocs-fg-color);&lt;br /&gt;
}&lt;br /&gt;
.wikitable &amp;gt; tr &amp;gt; th, .wikitable &amp;gt; tr &amp;gt; td, .wikitable &amp;gt; * &amp;gt; tr &amp;gt; th, .wikitable &amp;gt; * &amp;gt; tr &amp;gt; td {&lt;br /&gt;
    border: 1px solid var(--hedgedocs-table-border-color) !important;&lt;br /&gt;
    padding: 5px 9px;&lt;br /&gt;
}&lt;br /&gt;
code, pre {&lt;br /&gt;
    background-color: var(--hedgedocs-frame-bg-color);&lt;br /&gt;
    border-color: var(--hedgedocs-base-border-color);&lt;br /&gt;
    color: var(--hedgedocs-fg-color-light);&lt;br /&gt;
    scrollbar-color: var(--hedgedocs-scrollbar-color) transparent;&lt;br /&gt;
}&lt;br /&gt;
pre {&lt;br /&gt;
    overflow: auto;&lt;br /&gt;
    white-space: pre;&lt;br /&gt;
}&lt;br /&gt;
figure.embedvideo, figure.embedvideo video {&lt;br /&gt;
    height: auto !important;&lt;br /&gt;
    width: 640px !important;&lt;br /&gt;
}&lt;br /&gt;
figure.embedvideo[data-service=&amp;quot;local-embed&amp;quot;] span.embedvideo-wrapper {&lt;br /&gt;
    height: auto !important;&lt;br /&gt;
    width: 640px !important;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* HEDGEDOCS CUSTOM ELEMENTS */&lt;br /&gt;
&lt;br /&gt;
.hedgedocs-card {&lt;br /&gt;
    display: grid;&lt;br /&gt;
    background-color: var(--hedgedocs-frame-bg-color);&lt;br /&gt;
    padding: 5px 20px 25px 20px;&lt;br /&gt;
    margin-bottom: 1rem;&lt;br /&gt;
    border-radius: 2px;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.hedgedocs-card-header p {&lt;br /&gt;
    margin: .5rem 0 0 0 !important;&lt;br /&gt;
    font-weight: bolder;&lt;br /&gt;
    font-size: 25px;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.hedgedocs-card-header {&lt;br /&gt;
    grid-column-start: 1;&lt;br /&gt;
    grid-column-end: 2;&lt;br /&gt;
    grid-row-start: 1;&lt;br /&gt;
    grid-row-end: 2;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.hedgedocs-card-description {&lt;br /&gt;
    grid-column-start: 1;&lt;br /&gt;
    grid-column-end: 2;&lt;br /&gt;
    grid-row-start: 2;&lt;br /&gt;
    grid-row-end: 3;&lt;br /&gt;
    text-align: justify;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.hedgedocs-card-button {&lt;br /&gt;
    grid-column-start: 2;&lt;br /&gt;
    grid-column-end: 3;&lt;br /&gt;
    grid-row-start: 3;&lt;br /&gt;
    grid-row-end: 4;&lt;br /&gt;
    text-align: right;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.hedgedocs-card-button a {&lt;br /&gt;
    background-color: var(--hedgedocs-button-accent-bg-color);&lt;br /&gt;
    color: var(--hedgedocs-button-accent-fg-color) !important;&lt;br /&gt;
    padding: 10px 30px !important;&lt;br /&gt;
    background-image: none !important;&lt;br /&gt;
    transition: background-color 0.1s;&lt;br /&gt;
    border-radius: 2px;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.hedgedocs-card-button a:hover {&lt;br /&gt;
    background-color: var(--hedgedocs-button-accent-bg-color-hover);&lt;br /&gt;
    text-decoration: none !important;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.hedgedocs-card-button p {&lt;br /&gt;
    margin: 0 !important;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.hedgedocs-home-links {&lt;br /&gt;
    display: flex;&lt;br /&gt;
    flex-direction: column;&lt;br /&gt;
    justify-content: center;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.hedgedocs-home-links a {&lt;br /&gt;
    display: inline-block;&lt;br /&gt;
    background-color: var(--hedgedocs-button-accent-bg-color);&lt;br /&gt;
    color: var(--hedgedocs-button-accent-fg-color) !important;&lt;br /&gt;
    padding: 10px 0px 10px 0px !important;&lt;br /&gt;
    text-align: center;&lt;br /&gt;
    margin-bottom: 10px;&lt;br /&gt;
    background-image: none !important;&lt;br /&gt;
    transition: background-color 0.1s;&lt;br /&gt;
    width: 100%;&lt;br /&gt;
    margin-left: 0;&lt;br /&gt;
    margin-right: 0;&lt;br /&gt;
    border-radius: 2px;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.hedgedocs-home-links a:hover {&lt;br /&gt;
    background-color: var(--hedgedocs-button-accent-bg-color-hover);&lt;br /&gt;
    text-decoration: none !important;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.hedgedocs-home-links p {&lt;br /&gt;
    margin: 0 0 1.5em 0 !important;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.hedgedocs-home-links a {&lt;br /&gt;
    margin-left: 0;&lt;br /&gt;
    margin-right: 0;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.hedgedocs-homepage-scripts {&lt;br /&gt;
    display: none;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
:root {&lt;br /&gt;
    --imagePreview-finalScale: 1.75;&lt;br /&gt;
    --imagePreview-finalScale-bounce: 1.765;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.imagePreview-background {&lt;br /&gt;
    background: #000000;&lt;br /&gt;
    visibility: visible;&lt;br /&gt;
    display: inherit;&lt;br /&gt;
    opacity: 85%;&lt;br /&gt;
    position: fixed;&lt;br /&gt;
    left: 0;&lt;br /&gt;
    top: 0;&lt;br /&gt;
    width: 100%;&lt;br /&gt;
    height: 100%;&lt;br /&gt;
    z-index: 9;&lt;br /&gt;
    transition: opacity 2s;&lt;br /&gt;
    animation: fadein 0.25s;&lt;br /&gt;
    cursor: default;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.imagePreview {&lt;br /&gt;
    text-align: center;&lt;br /&gt;
    opacity: 0;&lt;br /&gt;
    justify-content: center;&lt;br /&gt;
    display: none;&lt;br /&gt;
    z-index: 9;&lt;br /&gt;
    position: fixed;&lt;br /&gt;
    transition: opacity 0.25s;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.imagePreview-image {&lt;br /&gt;
    flex-direction: column;&lt;br /&gt;
    align-items: center;&lt;br /&gt;
    display: none;&lt;br /&gt;
    z-index: 9;&lt;br /&gt;
    position: fixed;&lt;br /&gt;
    margin: auto;&lt;br /&gt;
    top: 50%;&lt;br /&gt;
    left: 50%;&lt;br /&gt;
    transform: translate(-50%, -50%) scale(0);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.imagePreview-image-element {&lt;br /&gt;
    display: block;&lt;br /&gt;
    cursor: default !important;&lt;br /&gt;
    object-fit: contain;&lt;br /&gt;
    max-width: 20vw;&lt;br /&gt;
    max-height: 15vw;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
@media screen and (max-width: 76.25em) {&lt;br /&gt;
    .imagePreview-image-element {&lt;br /&gt;
        max-width: 50vw;&lt;br /&gt;
        max-height: 45vw;&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.imagePreview-image-caption {&lt;br /&gt;
    display: block;&lt;br /&gt;
    width: -moz-fit-content;&lt;br /&gt;
    width: 100%;&lt;br /&gt;
    color: #888888 !important;&lt;br /&gt;
    margin-top: .5rem;&lt;br /&gt;
    font-size: 10px;&lt;br /&gt;
    line-height: 12px;&lt;br /&gt;
    text-align: left;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.imagePreview-image-caption:hover {&lt;br /&gt;
    color: #CCCCCC !important;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.scaleup {&lt;br /&gt;
    animation: scaleup 0.25s forwards;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.scaledown {&lt;br /&gt;
    animation: scaledown 0.3s forwards;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
@keyframes scaleup {&lt;br /&gt;
    0% {&lt;br /&gt;
        opacity: 0%;&lt;br /&gt;
        transform: translate(-50%, -50%) scale(0);&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    100% {&lt;br /&gt;
        opacity: 100%;&lt;br /&gt;
        transform: translate(-50%, -50%) scale(var(--imagePreview-finalScale));&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
@keyframes scaledown {&lt;br /&gt;
    0% {&lt;br /&gt;
        opacity: 100%;&lt;br /&gt;
        transform: translate(-50%, -50%) scale(var(--imagePreview-finalScale));&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    80% {&lt;br /&gt;
        opacity: 0%;&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    100% {&lt;br /&gt;
        opacity: 0%;&lt;br /&gt;
        transform: translate(-50%, -50%) scale(0);&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.hedgedocs-infobox {&lt;br /&gt;
    display: flex;&lt;br /&gt;
    flex-direction: column;&lt;br /&gt;
    justify-content: center;&lt;br /&gt;
    border: 1px solid var(--hedgedocs-base-border-color);&lt;br /&gt;
    background-color: var(--hedgedocs-frame-bg-color);&lt;br /&gt;
    padding: 7px 13px 10px 13px;&lt;br /&gt;
    margin-bottom: 1em;&lt;br /&gt;
    font-size: 88%;&lt;br /&gt;
    float: right;&lt;br /&gt;
    clear: right;&lt;br /&gt;
    width: 17rem;&lt;br /&gt;
    margin-left: 1rem;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.hedgedocs-infobox tr {&lt;br /&gt;
    display: flex;&lt;br /&gt;
    align-items: center;&lt;br /&gt;
    justify-content: center;&lt;br /&gt;
    text-align: center;&lt;br /&gt;
    width: 100%;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.hedgedocs-infobox tbody {&lt;br /&gt;
    display: block;&lt;br /&gt;
    width: 100%;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
@media screen and (max-width: 76.25em) {&lt;br /&gt;
    .hedgedocs-infobox {&lt;br /&gt;
        float: none;&lt;br /&gt;
        clear: none;&lt;br /&gt;
        margin: auto;&lt;br /&gt;
        width: 20rem;&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.hedgedocs-infobox-title {&lt;br /&gt;
    font-size: 1.2em;&lt;br /&gt;
    font-weight: bold;&lt;br /&gt;
    text-align: center;&lt;br /&gt;
    padding-bottom: 0.2rem;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.hedgedocs-infobox-image {&lt;br /&gt;
    text-align: center;&lt;br /&gt;
    padding-bottom: 0.75rem;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.hedgedocs-infobox-image img {&lt;br /&gt;
    max-width: 100%;&lt;br /&gt;
    height: auto;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.hedgedocs-infobox-label {&lt;br /&gt;
    font-weight: bold;&lt;br /&gt;
    width: 50%;&lt;br /&gt;
    vertical-align: top;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.hedgedocs-infobox-data {&lt;br /&gt;
    width: 50%;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.hedgedocs-infobox-website,&lt;br /&gt;
.hedgedocs-infobox-download {&lt;br /&gt;
    padding-top: 0.25rem;&lt;br /&gt;
    width: 100%;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.hedgedocs-infobox .hedgedocs-infobox-links a {&lt;br /&gt;
    display: block;&lt;br /&gt;
    padding: .5em !important;&lt;br /&gt;
    background-color: var(--hedgedocs-button-accent-bg-color);&lt;br /&gt;
    color: var(--hedgedocs-button-accent-fg-color) !important;&lt;br /&gt;
    text-decoration: none;&lt;br /&gt;
    background-image: none !important;&lt;br /&gt;
    width: auto;&lt;br /&gt;
    transition: background-color 125ms;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.hedgedocs-infobox a:hover {&lt;br /&gt;
    background-color: var(--hedgedocs-button-accent-bg-color-hover);&lt;br /&gt;
    color: var(--hedgedocs-button-accent-fg-color);&lt;br /&gt;
    text-decoration: none;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.hedgedocs-notice {&lt;br /&gt;
    border: 1px solid;&lt;br /&gt;
    border-radius: 2px;&lt;br /&gt;
    color: var(--hedgedocs-fg-color);&lt;br /&gt;
    box-shadow: 0 0.2rem 0.5rem rgba(0, 0, 0, 0.051), 0 0 0.05rem rgba(0, 0, 0, 0.102);&lt;br /&gt;
    margin: 1.5rem 0;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.hedgedocs-notice-note {&lt;br /&gt;
    border-color: var(--hedgedocs-notice-note-border-color);&lt;br /&gt;
&lt;br /&gt;
    .hedgedocs-notice-header {&lt;br /&gt;
        background-color: var(--hedgedocs-notice-note-header-color);&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
.hedgedocs-notice-info {&lt;br /&gt;
    border-color: var(--hedgedocs-notice-info-border-color);&lt;br /&gt;
&lt;br /&gt;
    .hedgedocs-notice-header {&lt;br /&gt;
        background-color: var(--hedgedocs-notice-info-header-color);&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
.hedgedocs-notice-warn {&lt;br /&gt;
    border-color: var(--hedgedocs-notice-warn-border-color);&lt;br /&gt;
&lt;br /&gt;
    .hedgedocs-notice-header {&lt;br /&gt;
        background-color: var(--hedgedocs-notice-warn-header-color);&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
.hedgedocs-notice-example {&lt;br /&gt;
    border-color: var(--hedgedocs-notice-example-border-color);&lt;br /&gt;
&lt;br /&gt;
    .hedgedocs-notice-header {&lt;br /&gt;
        background-color: var(--hedgedocs-notice-example-header-color);&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.hedgedocs-notice .hedgedocs-notice-header {&lt;br /&gt;
    font-weight: bold;&lt;br /&gt;
    color: var(--hedgedocs-fg-color);&lt;br /&gt;
    padding: 7px 15px;&lt;br /&gt;
}&lt;br /&gt;
.hedgedocs-notice-content {&lt;br /&gt;
    padding: 15px;&lt;br /&gt;
    background-color: var(--hedgedocs-frame-bg-color);&lt;br /&gt;
    white-space: pre-wrap;&lt;br /&gt;
}&lt;br /&gt;
.hedgedocs-notice-content ul {&lt;br /&gt;
    margin-top: 0 !important;&lt;br /&gt;
    white-space: normal;&lt;br /&gt;
}&lt;br /&gt;
.hedgedocs-notice-content p {&lt;br /&gt;
    display: inline-block;&lt;br /&gt;
    padding: 0;&lt;br /&gt;
    margin: 0 !important;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.vector-main-menu-action-opt-out {&lt;br /&gt;
    display: none;&lt;br /&gt;
}&lt;br /&gt;
.vector-settings {&lt;br /&gt;
    display: none;&lt;br /&gt;
}&lt;br /&gt;
li#ca-talk, li#ca-nstab-main {&lt;br /&gt;
    display: none;&lt;br /&gt;
}&lt;br /&gt;
div.vector-page-toolbar-container {&lt;br /&gt;
    box-shadow: none;&lt;br /&gt;
    background-color: var(--hedgedocs-bg-color-secondary);&lt;br /&gt;
    padding: 0 10px;&lt;br /&gt;
}&lt;br /&gt;
.vector-page-titlebar::after {&lt;br /&gt;
    display: none !important;&lt;br /&gt;
}&lt;br /&gt;
.mw-portlet-skin-client-prefs-vector-feature-custom-font-size {&lt;br /&gt;
    display: none;&lt;br /&gt;
}&lt;br /&gt;
.mw-editsection { display:none; }&lt;br /&gt;
li#footer-places-disclaimers {&lt;br /&gt;
    display: none;&lt;br /&gt;
}&lt;/div&gt;</summary>
		<author><name>PTKay</name></author>
	</entry>
	<entry>
		<id>https://hedgedocs.com/index.php?title=MediaWiki:Vector-2022.css&amp;diff=435</id>
		<title>MediaWiki:Vector-2022.css</title>
		<link rel="alternate" type="text/html" href="https://hedgedocs.com/index.php?title=MediaWiki:Vector-2022.css&amp;diff=435"/>
		<updated>2025-03-25T10:56:43Z</updated>

		<summary type="html">&lt;p&gt;PTKay: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;/* HEDDGEDOCS COLOR PALETTES */&lt;br /&gt;
&lt;br /&gt;
:root {&lt;br /&gt;
    --hedgedocs-accent-color: #3e7e9e;&lt;br /&gt;
    --hedgedocs-accent-color-secondary: #4d9ec7;&lt;br /&gt;
    &lt;br /&gt;
    --hedgedocs-base-border-color: #adb5c2;&lt;br /&gt;
&lt;br /&gt;
    --hedgedocs-frame-bg-color: #e9ebec;&lt;br /&gt;
&lt;br /&gt;
    --hedgedocs-scrollbar-color: #888888;&lt;br /&gt;
&lt;br /&gt;
    --hedgedocs-bg-color: #f0f3f4;&lt;br /&gt;
    --hedgedocs-bg-color-secondary: #dddddd;&lt;br /&gt;
&lt;br /&gt;
    --hedgedocs-header-color: var(--hedgedocs-accent-color);&lt;br /&gt;
    --hedgedocs-header-fg-color: #f2f8f8;&lt;br /&gt;
&lt;br /&gt;
    --hedgedocs-fg-color-light: #333333;&lt;br /&gt;
    --hedgedocs-fg-color: #202122;&lt;br /&gt;
&lt;br /&gt;
    --hedgedocs-link-color: #36c;&lt;br /&gt;
    --hedgedocs-link-hover: #757575;&lt;br /&gt;
    --hedgedocs-link-active-color: #00aedf;&lt;br /&gt;
    --hedgedocs-new-link-color: #d73333;&lt;br /&gt;
&lt;br /&gt;
    --hedgedocs-input-bg-color: #ffffff;&lt;br /&gt;
    --hedgedocs-input-fg-color: #202122;&lt;br /&gt;
    --hedgedocs-input-border-color: var(--hedgedocs-input-bg-color);&lt;br /&gt;
&lt;br /&gt;
    --hedgedocs-button-bg-color: #bbbbbb;&lt;br /&gt;
    --hedgedocs-button-bg-color-hover: #999999;&lt;br /&gt;
    --hedgedocs-button-check-fg-color: #ffffff;&lt;br /&gt;
    --hedgedocs-button-check-bg-color: var(--hedgedocs-accent-color);&lt;br /&gt;
    --hedgedocs-button-accent-bg-color: var(--hedgedocs-accent-color);&lt;br /&gt;
    --hedgedocs-button-accent-fg-color: #ffffff;&lt;br /&gt;
    --hedgedocs-button-accent-bg-color-hover: var(--hedgedocs-accent-color-secondary);&lt;br /&gt;
&lt;br /&gt;
    --hedgedocs-table-header-bg-color: var(--hedgedocs-bg-color-secondary);&lt;br /&gt;
    --hedgedocs-table-data-bg-color: var(--hedgedocs-frame-bg-color);&lt;br /&gt;
    --hedgedocs-table-header-fg-color: var(--hedgedocs-fg-color);&lt;br /&gt;
    --hedgedocs-table-border-color: #B2B2B2;&lt;br /&gt;
&lt;br /&gt;
    --hedgedocs-notice-note-header-color: rgba(68, 138, 255, 0.15);&lt;br /&gt;
    --hedgedocs-notice-note-border-color: rgba(68, 138, 255, 0.75);&lt;br /&gt;
    --hedgedocs-notice-info-header-color: rgba(0, 184, 212, 0.15);&lt;br /&gt;
    --hedgedocs-notice-info-border-color: rgba(0, 184, 212, 0.75);&lt;br /&gt;
    --hedgedocs-notice-warn-header-color: rgba(255, 145, 0, 0.15);&lt;br /&gt;
    --hedgedocs-notice-warn-border-color: rgba(255, 145, 0, 0.75);&lt;br /&gt;
    --hedgedocs-notice-example-header-color: rgba(118, 84, 250, 0.15);&lt;br /&gt;
    --hedgedocs-notice-example-border-color: rgba(118, 84, 250, 0.75);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.skin-theme-clientpref-night {&lt;br /&gt;
    --hedgedocs-accent-color: #0f3885;&lt;br /&gt;
    --hedgedocs-accent-color-secondary: #0d2a5f;&lt;br /&gt;
&lt;br /&gt;
    --hedgedocs-base-border-color: #414658;&lt;br /&gt;
&lt;br /&gt;
    --hedgedocs-frame-bg-color: #1a1c24;&lt;br /&gt;
    &lt;br /&gt;
    --hedgedocs-scrollbar-color: #888888;&lt;br /&gt;
&lt;br /&gt;
    --hedgedocs-bg-color: #151515;&lt;br /&gt;
    --hedgedocs-bg-color-secondary: #272a35;&lt;br /&gt;
&lt;br /&gt;
    --hedgedocs-header-fg-color: #f2f8f8;&lt;br /&gt;
&lt;br /&gt;
    --hedgedocs-fg-color-light: #e0e6e6;&lt;br /&gt;
    --hedgedocs-fg-color: #d2d2d2;&lt;br /&gt;
&lt;br /&gt;
    --hedgedocs-link-color: #88a3e8;&lt;br /&gt;
    --hedgedocs-link-hover: #4e67f0;&lt;br /&gt;
    --hedgedocs-link-active-color: #5082dc;&lt;br /&gt;
    --hedgedocs-new-link-color: #fd7865;&lt;br /&gt;
&lt;br /&gt;
    --hedgedocs-input-bg-color: #222222;&lt;br /&gt;
    --hedgedocs-input-fg-color: #d2d2d2;&lt;br /&gt;
    --hedgedocs-input-border-color: var(--hedgedocs-input-bg-color);&lt;br /&gt;
&lt;br /&gt;
    --hedgedocs-button-bg-color: #333333;&lt;br /&gt;
    --hedgedocs-button-bg-color-hover: #555555;&lt;br /&gt;
    --hedgedocs-button-check-fg-color: #ffffff;&lt;br /&gt;
    --hedgedocs-button-check-bg-color: var(--hedgedocs-accent-color);&lt;br /&gt;
&lt;br /&gt;
    --hedgedocs-table-header-bg-color: #252833;&lt;br /&gt;
    --hedgedocs-table-data-bg-color: var(--hedgedocs-frame-bg-color);&lt;br /&gt;
    --hedgedocs-table-header-fg-color: var(--hedgedocs-fg-color);&lt;br /&gt;
    --hedgedocs-table-border-color: #3A3A3A;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
:root, .skin-theme-clientpref-night, html.skin-theme-clientpref-night {&lt;br /&gt;
    --background-color-base: var(--hedgedocs-bg-color);&lt;br /&gt;
    --background-color-interactive: var(--hedgedocs-bg-color-secondary);&lt;br /&gt;
    --background-color-interactive-subtle: var(--hedgedocs-bg-color-secondary);&lt;br /&gt;
    --background-color-neutral-subtle: var(--hedgedocs-bg-color);&lt;br /&gt;
    --border-color-base: var(--hedgedocs-base-border-color);&lt;br /&gt;
}&lt;br /&gt;
body {&lt;br /&gt;
    background-color: var(--hedgedocs-bg-color) !important;&lt;br /&gt;
    color: var(--hedgedocs-fg-color) !important;&lt;br /&gt;
}&lt;br /&gt;
.mw-page-container {&lt;br /&gt;
    background-color: transparent !important;&lt;br /&gt;
}&lt;br /&gt;
.mw-heading, h1, h2:not(.vector-pinnable-header-label), h3, h4, h5, h6 {&lt;br /&gt;
    color: var(--hedgedocs-fg-color) !important;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* HEDDGEDOCS DARK THEME TWEAKS */&lt;br /&gt;
&lt;br /&gt;
html.skin-theme-clientpref-night, .skin-theme-clientpref-night * {&lt;br /&gt;
    filter: none !important;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.skin-theme-clientpref-night {&lt;br /&gt;
    .mw-page-container .vector-icon {&lt;br /&gt;
        filter: invert() !important;&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    .vector-icon.mw-ui-icon-listBullet {&lt;br /&gt;
        filter: none !important;&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    .vector-icon.mw-ui-icon-wikimedia-unStar, .vector-icon.mw-ui-icon-wikimedia-star, .vector-icon.mw-ui-icon-wikimedia-expand {&lt;br /&gt;
        filter: none !important;&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    #vector-page-tools-dropdown-label {&lt;br /&gt;
        color: var(--hedgedocs-fg-color);&lt;br /&gt;
        transition: color 0s;&lt;br /&gt;
    }&lt;br /&gt;
    &lt;br /&gt;
    .mw-header .vector-icon:not(.vector-dropdown-content .vector-icon) {&lt;br /&gt;
        filter: brightness(2) !important;&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    .ext-darkmode-link::after {&lt;br /&gt;
        content: &#039;\263C&#039;;&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    .mw-list-item span#skin-theme-beta-notice {&lt;br /&gt;
        display: none !important;&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    #searchInput, .cdx-text-input__input:enabled, .cdx-text-input__input {&lt;br /&gt;
        background-color: var(--hedgedocs-input-bg-color) !important;&lt;br /&gt;
        border-color: var(--hedgedocs-input-border-color) !important;&lt;br /&gt;
        color: var(--hedgedocs-input-fg-color) !important;&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    .oo-ui-iconElement-icon:not(.oo-ui-checkboxInputWidget-checkIcon, .oo-ui-image-progressive, .oo-ui-icon-error), .oo-ui-indicatorElement-indicator {&lt;br /&gt;
        filter: invert() !important;&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.ext-darkmode-link::after {&lt;br /&gt;
    content: &#039;\263E&#039;;&lt;br /&gt;
    display: inline-block;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
span#skin-theme-beta-notice {&lt;br /&gt;
    display: none !important;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
#skin-client-prefs-skin-theme .cdx-radio:first-child {&lt;br /&gt;
    display: none;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* HEDDGEDOCS FONTS */&lt;br /&gt;
@import url(&#039;https://fonts.googleapis.com/css2?family=Roboto:ital,wdth,wght@0,75..100,100..900;1,75..100,100..900&amp;amp;display=swap&#039;);&lt;br /&gt;
@import url(&#039;https://fonts.googleapis.com/css2?family=Roboto+Mono:ital,wght@0,100..700;1,100..700&amp;amp;display=swap&#039;);&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
:root {&lt;br /&gt;
    --font-size-medium: var(--hedgedocs-font-size);&lt;br /&gt;
&lt;br /&gt;
    --hedgedocs-font-size: 16px;&lt;br /&gt;
    --hedgedocs-font-size-sidebars: 16px;&lt;br /&gt;
    --hedgedocs-font-size-sidebars-pin-button: 13px; &lt;br /&gt;
&lt;br /&gt;
    --hedgedocs-font: &#039;Roboto&#039;, -apple-system, BlinkMacSystemFont, Helvetica, Arial, sans-serif;&lt;br /&gt;
    --hedgedocs-code-font: &#039;Roboto Mono&#039;, SFMono-Regular, Consolas, Menlo, monospace;&lt;br /&gt;
}&lt;br /&gt;
body {&lt;br /&gt;
    -webkit-font-smoothing: antialiased;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
body, .mw-body, h1, h2, .mw-createacct-benefits-heading, .oo-ui-menuToolGroup-tools .oo-ui-tool-title, .vector-sticky-header-context-bar-primary, .mw-body-content .mw-number-text span {&lt;br /&gt;
    font-family: var(--hedgedocs-font) !important;&lt;br /&gt;
}&lt;br /&gt;
body .oo-ui-tool-name-preformatted .oo-ui-tool-link .oo-ui-tool-title, pre, code, tt, kbd, samp, .mw-code {&lt;br /&gt;
    font-family: var(--hedgedocs-code-font) !important;&lt;br /&gt;
}&lt;br /&gt;
h1 {&lt;br /&gt;
    font-weight: bold;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* HEDGEDOCS PAGE STYLING CSS */&lt;br /&gt;
&lt;br /&gt;
.mw-logo-wordmark {&lt;br /&gt;
    font-size: 17pt;&lt;br /&gt;
}&lt;br /&gt;
.mw-logo-icon {&lt;br /&gt;
    font-size: 7pt;&lt;br /&gt;
    padding-left: 1.5em;&lt;br /&gt;
}&lt;br /&gt;
.mw-logo {&lt;br /&gt;
    transition: opacity .25s;&lt;br /&gt;
}&lt;br /&gt;
.mw-logo:hover {&lt;br /&gt;
    opacity: 0.7;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
div.vector-pinnable-header-label, h2.vector-pinnable-header-label {&lt;br /&gt;
    background: var(--hedgedocs-header-color);&lt;br /&gt;
    color: var(--hedgedocs-header-fg-color);&lt;br /&gt;
    padding: 2px 10px 2px 10px;&lt;br /&gt;
    cursor: default;&lt;br /&gt;
    margin: 0em !important;&lt;br /&gt;
}&lt;br /&gt;
button.vector-pinnable-header-toggle-button {&lt;br /&gt;
    width: 100%;&lt;br /&gt;
    text-align: center;&lt;br /&gt;
    font-size: var(--hedgedocs-font-size-sidebars-pin-button);&lt;br /&gt;
    background-color: var(--hedgedocs-button-bg-color);&lt;br /&gt;
    padding: 2px 10px 2px 10px;&lt;br /&gt;
    transition: background-color 0.1s;&lt;br /&gt;
    margin-bottom: 0.5rem;&lt;br /&gt;
}&lt;br /&gt;
button.vector-pinnable-header-toggle-button:hover {&lt;br /&gt;
    background-color: var(--hedgedocs-button-bg-color-hover);&lt;br /&gt;
}&lt;br /&gt;
div.vector-pinnable-header {&lt;br /&gt;
    padding-bottom: 0;&lt;br /&gt;
    margin-bottom: 0;&lt;br /&gt;
    border-bottom: none;&lt;br /&gt;
    display: flex;&lt;br /&gt;
    flex-direction: column;&lt;br /&gt;
    justify-content: center;&lt;br /&gt;
}&lt;br /&gt;
div.vector-pinnable-element div.vector-menu-heading {&lt;br /&gt;
    color: var(--hedgedocs-fg-color-light);&lt;br /&gt;
    font-weight: bold;&lt;br /&gt;
    cursor: default;&lt;br /&gt;
    padding: 6px 0;&lt;br /&gt;
    border-bottom: none;&lt;br /&gt;
}&lt;br /&gt;
#vector-main-menu .vector-menu-content .mw-list-item:hover {&lt;br /&gt;
}&lt;br /&gt;
#vector-main-menu .vector-menu-content .mw-list-item a {&lt;br /&gt;
    font-weight: bold;&lt;br /&gt;
    text-decoration: none !important;&lt;br /&gt;
}&lt;br /&gt;
#vector-main-menu .vector-menu-content .mw-list-item a:hover {&lt;br /&gt;
    text-decoration: none !important;&lt;br /&gt;
}&lt;br /&gt;
#vector-main-menu .vector-menu-content .mw-list-item {&lt;br /&gt;
    margin-bottom: 0;&lt;br /&gt;
}&lt;br /&gt;
.mw-list-item a, .vector-toc-link {&lt;br /&gt;
    color: var(--hedgedocs-fg-color) !important;&lt;br /&gt;
    transition: color 125ms;&lt;br /&gt;
}&lt;br /&gt;
.mw-list-item a:hover, .vector-toc-link:hover {&lt;br /&gt;
    color: var(--hedgedocs-link-hover) !important;&lt;br /&gt;
    text-decoration: none;&lt;br /&gt;
}&lt;br /&gt;
.vector-toc .vector-toc-list-item-active &amp;gt; a.vector-toc-link, .vector-toc .vector-toc-level-1-active:not(.vector-toc-list-item-expanded) &amp;gt; a.vector-toc-link, .vector-toc .vector-toc-list-item-active.vector-toc-level-1-active &amp;gt; a.vector-toc-link {&lt;br /&gt;
    color: var(--hedgedocs-link-active-color) !important;&lt;br /&gt;
    font-weight: inherit;&lt;br /&gt;
}&lt;br /&gt;
.vector-pinnable-element, .vector-pinnable-header-label {&lt;br /&gt;
    font-size: var(--hedgedocs-font-size-sidebars) !important;&lt;br /&gt;
}&lt;br /&gt;
.vector-pinned-container {&lt;br /&gt;
    background-color: var(--hedgedocs-bg-color) !important;&lt;br /&gt;
}&lt;br /&gt;
.vector-sticky-pinned-container::after {&lt;br /&gt;
    background: linear-gradient(rgba(255, 255, 255, 0), var(--hedgedocs-bg-color)) !important;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
#toc-mw-content-text {&lt;br /&gt;
    display: none;&lt;br /&gt;
}&lt;br /&gt;
div.vector-toc-pinnable-header {&lt;br /&gt;
    margin-bottom: .25rem;&lt;br /&gt;
}&lt;br /&gt;
.vector-toc .vector-toc-toggle {&lt;br /&gt;
    top: 4px !important;&lt;br /&gt;
}&lt;br /&gt;
.vector-toc button.vector-pinnable-header-toggle-button {&lt;br /&gt;
    display: none !important;&lt;br /&gt;
}&lt;br /&gt;
.vector-toc .vector-toc-list-item-active &amp;gt; a.vector-toc-link span, .vector-toc .vector-toc-level-1-active:not(.vector-toc-list-item-expanded) &amp;gt; a.vector-toc-link span, .vector-toc .vector-toc-list-item-active.vector-toc-level-1-active &amp;gt; a.vector-toc-link span {&lt;br /&gt;
    border-left: .25em solid;&lt;br /&gt;
    padding-left: .5em;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.vector-page-titlebar .firstHeading {&lt;br /&gt;
    padding-bottom: 6px !important;&lt;br /&gt;
}&lt;br /&gt;
.firstHeading.mw-first-heading {&lt;br /&gt;
    font-size: 2.2rem;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.vector-menu-tabs .mw-list-item.vector-tab-noicon &amp;gt; a, #vector-page-tools-dropdown-label {&lt;br /&gt;
    padding: 9px 0 7px 0 !important;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.vector-header-container header.mw-header, .vector-header-container div.vector-sticky-header {&lt;br /&gt;
    background-color: transparent;&lt;br /&gt;
    max-width: 99.75rem;&lt;br /&gt;
}&lt;br /&gt;
.vector-sticky-header-context-bar .mw-page-title-main {&lt;br /&gt;
    font-weight: bold;&lt;br /&gt;
}&lt;br /&gt;
.vector-header-container {&lt;br /&gt;
    background-color: var(--hedgedocs-header-color);&lt;br /&gt;
    box-shadow: 0 0 2rem rgba(0, 0, 0, 0.3), 0 0.4rem 4rem rgba(0, 0, 0, 0.15);&lt;br /&gt;
    align-items: center;&lt;br /&gt;
    justify-content: center;&lt;br /&gt;
    min-height: 5rem;&lt;br /&gt;
    margin-bottom: 1rem;&lt;br /&gt;
}&lt;br /&gt;
.vector-header-container div.vector-sticky-header {&lt;br /&gt;
    color: var(--hedgedocs-header-fg-color);&lt;br /&gt;
    border: none;&lt;br /&gt;
}&lt;br /&gt;
.vector-header-container .vector-button-flush-left {&lt;br /&gt;
    margin-right: -24px;&lt;br /&gt;
}&lt;br /&gt;
.vector-header-container .vector-header-start .vector-button-flush-right {&lt;br /&gt;
    margin-right: -24px;&lt;br /&gt;
}&lt;br /&gt;
.vector-header-container .vector-header-end .vector-button-flush-right {&lt;br /&gt;
    margin-right: -6px;&lt;br /&gt;
}&lt;br /&gt;
.vector-header-container div.vector-sticky-header .vector-icon {&lt;br /&gt;
    filter: invert();&lt;br /&gt;
}&lt;br /&gt;
.mw-header a:not(.vector-menu-content a, a.cdx-typeahead-search__search-footer), .mw-header a:visited:not(.vector-menu-content a), .user-links-collapsible-item a:not(.vector-dropdown-content .user-links-collapsible-item a) {&lt;br /&gt;
    color: var(--hedgedocs-header-fg-color) !important;&lt;br /&gt;
}&lt;br /&gt;
.mw-header a:not(.vector-menu-content a, a.cdx-typeahead-search__search-footer):hover, .mw-header a:visited:not(.vector-menu-content a):hover, .user-links-collapsible-item a:not(.vector-dropdown-content .user-links-collapsible-item a):hover {&lt;br /&gt;
    color: var(--hedgedocs-header-fg-color) !important;&lt;br /&gt;
}&lt;br /&gt;
.vector-dropdown div.vector-dropdown-content {&lt;br /&gt;
    background-color: var(--hedgedocs-bg-color);&lt;br /&gt;
}&lt;br /&gt;
.mw-header .vector-icon:not(.vector-dropdown-content .vector-icon ) {&lt;br /&gt;
    filter: invert();&lt;br /&gt;
}&lt;br /&gt;
.vector-user-menu-logged-in .vector-dropdown-label::after {&lt;br /&gt;
    background-color: var(--hedgedocs-header-fg-color) !important;&lt;br /&gt;
}&lt;br /&gt;
.mw-header .vector-icon:not(.vector-dropdown-content .vector-icon) {&lt;br /&gt;
    filter: invert() brightness(2);&lt;br /&gt;
}&lt;br /&gt;
.vector-header .cdx-button.cdx-button--icon-only {&lt;br /&gt;
    min-width: 32px !important;&lt;br /&gt;
}&lt;br /&gt;
@media screen and (max-width: calc(639px)) {&lt;br /&gt;
    .vector-header {&lt;br /&gt;
        flex-flow: row !important;&lt;br /&gt;
    }&lt;br /&gt;
    .mw-logo {&lt;br /&gt;
        min-width: 11em !important;&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
.cdx-menu-item__text .cdx-search-result-title {&lt;br /&gt;
    color: var(--hedgedocs-fg-color);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
.cdx-menu {&lt;br /&gt;
    color: var(--hedgedocs-fg-color);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.mw-footer li {&lt;br /&gt;
    color: var(--hedgedocs-fg-color) !important;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
#searchInput, .cdx-text-input__input:enabled, .cdx-text-input__input {&lt;br /&gt;
    background-color: var(--hedgedocs-input-bg-color) !important;&lt;br /&gt;
    border-color: var(--hedgedocs-input-border-color) !important;&lt;br /&gt;
    color: var(--hedgedocs-input-fg-color) !important;&lt;br /&gt;
}&lt;br /&gt;
.oo-ui-checkboxInputWidget [type=&#039;checkbox&#039;] + span {&lt;br /&gt;
    background-color: var(--hedgedocs-input-bg-color);&lt;br /&gt;
    color: var(--hedgedocs-fg-color);&lt;br /&gt;
}&lt;br /&gt;
.oo-ui-textInputWidget input.oo-ui-inputWidget-input{&lt;br /&gt;
    background-color: var(--hedgedocs-input-bg-color);&lt;br /&gt;
}&lt;br /&gt;
.oo-ui-textInputWidget .oo-ui-inputWidget-input, .oo-ui-textInputWidget .oo-ui-inputWidget-input, .oo-ui-tagMultiselectWidget.oo-ui-widget-enabled {&lt;br /&gt;
    background-color: var(--hedgedocs-input-bg-color) !important;&lt;br /&gt;
    color: var(--hedgedocs-input-fg-color) !important;&lt;br /&gt;
}&lt;br /&gt;
.cdx-text-input__input:enabled~.cdx-text-input__icon-vue {&lt;br /&gt;
    color: var(--hedgedocs-input-fg-color) !important;&lt;br /&gt;
    opacity: 0.5 !important;&lt;br /&gt;
}&lt;br /&gt;
span.cdx-text-input__icon.cdx-text-input__start-icon {&lt;br /&gt;
    background-color: var(--hedgedocs-input-fg-color) !important;&lt;br /&gt;
    opacity: 0.5 !important;&lt;br /&gt;
}&lt;br /&gt;
textarea {&lt;br /&gt;
    background-color: var(--hedgedocs-bg-color);&lt;br /&gt;
}&lt;br /&gt;
button.cdx-button, button.cdx-button:enabled, .oo-ui-buttonElement-framed.oo-ui-widget-enabled &amp;gt; .oo-ui-buttonElement-button {&lt;br /&gt;
    background-color: var(--hedgedocs-button-bg-color);&lt;br /&gt;
    border: none;&lt;br /&gt;
    transition: background-color 0.1s;&lt;br /&gt;
}&lt;br /&gt;
button.cdx-button:hover, .oo-ui-buttonElement-framed.oo-ui-widget-enabled &amp;gt; .oo-ui-buttonElement-button:hover {&lt;br /&gt;
    background-color: var(--hedgedocs-button-bg-color-hover) !important;&lt;br /&gt;
}&lt;br /&gt;
.cdx-button.cdx-button--weight-primary.cdx-button--action-progressive, .oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive &amp;gt; .oo-ui-buttonElement-button, .oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive &amp;gt; .oo-ui-tool-link {&lt;br /&gt;
    background-color: var(--hedgedocs-button-accent-bg-color) !important;&lt;br /&gt;
    transition: background-color 0.1s;&lt;br /&gt;
}&lt;br /&gt;
.cdx-button.cdx-button--weight-primary.cdx-button--action-progressive:hover, .oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive &amp;gt; .oo-ui-buttonElement-button:hover, .oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive &amp;gt; .oo-ui-tool-link:hover {&lt;br /&gt;
    background-color: var(--hedgedocs-button-accent-bg-color-hover) !important;&lt;br /&gt;
}&lt;br /&gt;
.cdx-radio__icon {&lt;br /&gt;
    background-color: var(--hedgedocs-button-bg-color) !important;&lt;br /&gt;
}&lt;br /&gt;
.cdx-radio:hover .cdx-radio__icon {&lt;br /&gt;
    background-color: var(--hedgedocs-button-bg-color-hover) !important;&lt;br /&gt;
}&lt;br /&gt;
.cdx-radio__input:enabled:checked+.cdx-radio__icon {&lt;br /&gt;
    background-color: var(--hedgedocs-button-check-fg-color) !important;&lt;br /&gt;
    border-color: var(--hedgedocs-button-check-bg-color) !important;&lt;br /&gt;
}&lt;br /&gt;
.cdx-radio__input:enabled+.cdx-radio__icon {&lt;br /&gt;
    border-color: var(--hedgedocs-base-border-color) !important;&lt;br /&gt;
}&lt;br /&gt;
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type=&#039;checkbox&#039;]:checked + span, .oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type=&#039;checkbox&#039;]:indeterminate + span {&lt;br /&gt;
    background-color: var(--hedgedocs-button-check-bg-color) !important;&lt;br /&gt;
}&lt;br /&gt;
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-buttonElement-active &amp;gt; .oo-ui-buttonElement-button {&lt;br /&gt;
    background-color: var(--hedgedocs-button-accent-bg-color) !important;&lt;br /&gt;
    color: var(--hedgedocs-button-accent-fg-color) !important;&lt;br /&gt;
}&lt;br /&gt;
.tdg-templateDataParamWidget-param-alias:first-child {&lt;br /&gt;
    background-color: var(--hedgedocs-bg-color-secondary) !important;&lt;br /&gt;
    color: var(--hedgedocs-fg-color-light) !important;&lt;br /&gt;
    border-color: var(--hedgedocs-base-border-color);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
.oo-ui-toolbar-bar {&lt;br /&gt;
    background-color: var(--hedgedocs-bg-color-secondary) !important;&lt;br /&gt;
    color: var(--hedgedocs-fg-color) !important;&lt;br /&gt;
}&lt;br /&gt;
.oo-ui-menuToolGroup, .oo-ui-toolbar-position-top &amp;gt; .oo-ui-toolbar-bar {&lt;br /&gt;
    border-color: var(--hedgedocs-bg-color) !important;&lt;br /&gt;
}&lt;br /&gt;
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive &amp;gt; .oo-ui-tool-link {&lt;br /&gt;
    color: var(--hedgedocs-header-fg-color) !important;&lt;br /&gt;
    background-color: var(--hedgedocs-header-color) !important;&lt;br /&gt;
}&lt;br /&gt;
.editOptions {&lt;br /&gt;
    background-color: var(--hedgedocs-bg-color-secondary);&lt;br /&gt;
    color: var(--hedgedocs-fg-color);&lt;br /&gt;
}&lt;br /&gt;
.editCheckboxes {&lt;br /&gt;
    margin-bottom: .5rem;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.oo-ui-panelLayout-framed {&lt;br /&gt;
    border: none;&lt;br /&gt;
    background-color: var(--hedgedocs-frame-bg-color);&lt;br /&gt;
}&lt;br /&gt;
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-widget-enabled.oo-ui-optionWidget-selected {&lt;br /&gt;
    background-color: var(--hedgedocs-frame-bg-color) !important;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-widget-enabled.oo-ui-optionWidget-selected .oo-ui-labelElement-label, .oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget .oo-ui-labelElement-label {&lt;br /&gt;
    border: none !important;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.approved-revision {&lt;br /&gt;
    background-color: transparent !important;&lt;br /&gt;
    border: 3px solid;&lt;br /&gt;
    color: var(--hedgedocs-fg-color) !important;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
#mw-content-text {&lt;br /&gt;
    margin-top: 0 !important;&lt;br /&gt;
}&lt;br /&gt;
figure[typeof~=&#039;mw:File/Thumb&#039;] {&lt;br /&gt;
    background-color: transparent !important;&lt;br /&gt;
    border: none !important;&lt;br /&gt;
    margin-bottom: 0.5em !important;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
figure[typeof~=&#039;mw:File/Thumb&#039;].mw-halign-left {&lt;br /&gt;
    margin-bottom: 0.5em !important;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
figure[typeof~=&#039;mw:File/Thumb&#039;] &amp;gt; .mw-file-description &amp;gt; img {&lt;br /&gt;
    background-color: transparent !important;&lt;br /&gt;
    border: none !important;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
figure[typeof~=&#039;mw:File/Thumb&#039;] &amp;gt; .mw-file-description::after {&lt;br /&gt;
    display: none !important;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
figure[typeof~=&#039;mw:File/Thumb&#039;] &amp;gt; figcaption {&lt;br /&gt;
    background-color: transparent !important;&lt;br /&gt;
    border: none !important;&lt;br /&gt;
    padding: 5px !important;&lt;br /&gt;
}&lt;br /&gt;
.mw-body-content a {&lt;br /&gt;
    color: var(--hedgedocs-link-color);&lt;br /&gt;
}&lt;br /&gt;
.mw-body-content a:visited, .mw-body-content a:visited:hover{&lt;br /&gt;
    color: var(--hedgedocs-link-color);&lt;br /&gt;
}&lt;br /&gt;
.mw-body-content a.new {&lt;br /&gt;
    color: var(--hedgedocs-new-link-color);&lt;br /&gt;
}&lt;br /&gt;
.mw-body-content a.new:visited, .mw-body-content a.new:visited:hover{&lt;br /&gt;
    color: var(--hedgedocs-new-link-color);&lt;br /&gt;
}&lt;br /&gt;
.wikitable &amp;gt; tr &amp;gt; th, .wikitable &amp;gt; * &amp;gt; tr &amp;gt; th {&lt;br /&gt;
    background-color: var(--hedgedocs-table-header-bg-color) !important;&lt;br /&gt;
    color: var(--hedgedocs-table-header-fg-color) !important;&lt;br /&gt;
}&lt;br /&gt;
.wikitable &amp;gt; tr &amp;gt; th, .wikitable &amp;gt; tr &amp;gt; td, .wikitable &amp;gt; * &amp;gt; tr &amp;gt; th, .wikitable &amp;gt; * &amp;gt; tr &amp;gt; td {&lt;br /&gt;
    background-color: var(--hedgedocs-table-data-bg-color);&lt;br /&gt;
    color: var(--hedgedocs-fg-color);&lt;br /&gt;
}&lt;br /&gt;
.wikitable &amp;gt; tr &amp;gt; th, .wikitable &amp;gt; tr &amp;gt; td, .wikitable &amp;gt; * &amp;gt; tr &amp;gt; th, .wikitable &amp;gt; * &amp;gt; tr &amp;gt; td {&lt;br /&gt;
    border: 1px solid var(--hedgedocs-table-border-color) !important;&lt;br /&gt;
    padding: 5px 9px;&lt;br /&gt;
}&lt;br /&gt;
code, pre {&lt;br /&gt;
    background-color: var(--hedgedocs-frame-bg-color);&lt;br /&gt;
    border-color: var(--hedgedocs-base-border-color);&lt;br /&gt;
    color: var(--hedgedocs-fg-color-light);&lt;br /&gt;
    scrollbar-color: var(--hedgedocs-scrollbar-color) transparent;&lt;br /&gt;
}&lt;br /&gt;
pre {&lt;br /&gt;
    overflow: auto;&lt;br /&gt;
    white-space: pre;&lt;br /&gt;
}&lt;br /&gt;
figure.embedvideo, figure.embedvideo video {&lt;br /&gt;
    height: auto !important;&lt;br /&gt;
    width: 640px !important;&lt;br /&gt;
}&lt;br /&gt;
figure.embedvideo[data-service=&amp;quot;local-embed&amp;quot;] span.embedvideo-wrapper {&lt;br /&gt;
    height: auto !important;&lt;br /&gt;
    width: 640px !important;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* HEDGEDOCS CUSTOM ELEMENTS */&lt;br /&gt;
&lt;br /&gt;
.hedgedocs-card {&lt;br /&gt;
    display: grid;&lt;br /&gt;
    background-color: var(--hedgedocs-frame-bg-color);&lt;br /&gt;
    padding: 5px 20px 25px 20px;&lt;br /&gt;
    margin-bottom: 1rem;&lt;br /&gt;
    border-radius: 2px;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.hedgedocs-card-header p {&lt;br /&gt;
    margin: .5rem 0 0 0 !important;&lt;br /&gt;
    font-weight: bolder;&lt;br /&gt;
    font-size: 25px;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.hedgedocs-card-header {&lt;br /&gt;
    grid-column-start: 1;&lt;br /&gt;
    grid-column-end: 2;&lt;br /&gt;
    grid-row-start: 1;&lt;br /&gt;
    grid-row-end: 2;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.hedgedocs-card-description {&lt;br /&gt;
    grid-column-start: 1;&lt;br /&gt;
    grid-column-end: 2;&lt;br /&gt;
    grid-row-start: 2;&lt;br /&gt;
    grid-row-end: 3;&lt;br /&gt;
    text-align: justify;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.hedgedocs-card-button {&lt;br /&gt;
    grid-column-start: 2;&lt;br /&gt;
    grid-column-end: 3;&lt;br /&gt;
    grid-row-start: 3;&lt;br /&gt;
    grid-row-end: 4;&lt;br /&gt;
    text-align: right;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.hedgedocs-card-button a {&lt;br /&gt;
    background-color: var(--hedgedocs-button-accent-bg-color);&lt;br /&gt;
    color: var(--hedgedocs-button-accent-fg-color) !important;&lt;br /&gt;
    padding: 10px 30px !important;&lt;br /&gt;
    background-image: none !important;&lt;br /&gt;
    transition: background-color 0.1s;&lt;br /&gt;
    border-radius: 2px;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.hedgedocs-card-button a:hover {&lt;br /&gt;
    background-color: var(--hedgedocs-button-accent-bg-color-hover);&lt;br /&gt;
    text-decoration: none !important;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.hedgedocs-card-button p {&lt;br /&gt;
    margin: 0 !important;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.hedgedocs-home-links {&lt;br /&gt;
    display: flex;&lt;br /&gt;
    flex-direction: column;&lt;br /&gt;
    justify-content: center;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.hedgedocs-home-links a {&lt;br /&gt;
    display: inline-block;&lt;br /&gt;
    background-color: var(--hedgedocs-button-accent-bg-color);&lt;br /&gt;
    color: var(--hedgedocs-button-accent-fg-color) !important;&lt;br /&gt;
    padding: 10px 0px 10px 0px !important;&lt;br /&gt;
    text-align: center;&lt;br /&gt;
    margin-bottom: 10px;&lt;br /&gt;
    background-image: none !important;&lt;br /&gt;
    transition: background-color 0.1s;&lt;br /&gt;
    width: 100%;&lt;br /&gt;
    margin-left: 0;&lt;br /&gt;
    margin-right: 0;&lt;br /&gt;
    border-radius: 2px;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.hedgedocs-home-links a:hover {&lt;br /&gt;
    background-color: var(--hedgedocs-button-accent-bg-color-hover);&lt;br /&gt;
    text-decoration: none !important;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.hedgedocs-home-links p {&lt;br /&gt;
    margin: 0 0 1.5em 0 !important;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.hedgedocs-home-links a {&lt;br /&gt;
    margin-left: 0;&lt;br /&gt;
    margin-right: 0;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.hedgedocs-homepage-scripts {&lt;br /&gt;
    display: none;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
:root {&lt;br /&gt;
    --imagePreview-finalScale: 1.75;&lt;br /&gt;
    --imagePreview-finalScale-bounce: 1.765;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.imagePreview-background {&lt;br /&gt;
    background: #000000;&lt;br /&gt;
    visibility: visible;&lt;br /&gt;
    display: inherit;&lt;br /&gt;
    opacity: 85%;&lt;br /&gt;
    position: fixed;&lt;br /&gt;
    left: 0;&lt;br /&gt;
    top: 0;&lt;br /&gt;
    width: 100%;&lt;br /&gt;
    height: 100%;&lt;br /&gt;
    z-index: 9;&lt;br /&gt;
    transition: opacity 2s;&lt;br /&gt;
    animation: fadein 0.25s;&lt;br /&gt;
    cursor: default;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.imagePreview {&lt;br /&gt;
    text-align: center;&lt;br /&gt;
    opacity: 0;&lt;br /&gt;
    justify-content: center;&lt;br /&gt;
    display: none;&lt;br /&gt;
    z-index: 9;&lt;br /&gt;
    position: fixed;&lt;br /&gt;
    transition: opacity 0.25s;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.imagePreview-image {&lt;br /&gt;
    flex-direction: column;&lt;br /&gt;
    align-items: center;&lt;br /&gt;
    display: none;&lt;br /&gt;
    z-index: 9;&lt;br /&gt;
    position: fixed;&lt;br /&gt;
    margin: auto;&lt;br /&gt;
    top: 50%;&lt;br /&gt;
    left: 50%;&lt;br /&gt;
    transform: translate(-50%, -50%) scale(0);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.imagePreview-image-element {&lt;br /&gt;
    display: block;&lt;br /&gt;
    cursor: default !important;&lt;br /&gt;
    object-fit: contain;&lt;br /&gt;
    max-width: 20vw;&lt;br /&gt;
    max-height: 15vw;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
@media screen and (max-width: 76.25em) {&lt;br /&gt;
    .imagePreview-image-element {&lt;br /&gt;
        max-width: 50vw;&lt;br /&gt;
        max-height: 45vw;&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.imagePreview-image-caption {&lt;br /&gt;
    display: block;&lt;br /&gt;
    width: -moz-fit-content;&lt;br /&gt;
    width: 100%;&lt;br /&gt;
    color: #888888 !important;&lt;br /&gt;
    margin-top: .5rem;&lt;br /&gt;
    font-size: 10px;&lt;br /&gt;
    line-height: 12px;&lt;br /&gt;
    text-align: left;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.imagePreview-image-caption:hover {&lt;br /&gt;
    color: #CCCCCC !important;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.scaleup {&lt;br /&gt;
    animation: scaleup 0.25s forwards;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.scaledown {&lt;br /&gt;
    animation: scaledown 0.3s forwards;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
@keyframes scaleup {&lt;br /&gt;
    0% {&lt;br /&gt;
        opacity: 0%;&lt;br /&gt;
        transform: translate(-50%, -50%) scale(0);&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    100% {&lt;br /&gt;
        opacity: 100%;&lt;br /&gt;
        transform: translate(-50%, -50%) scale(var(--imagePreview-finalScale));&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
@keyframes scaledown {&lt;br /&gt;
    0% {&lt;br /&gt;
        opacity: 100%;&lt;br /&gt;
        transform: translate(-50%, -50%) scale(var(--imagePreview-finalScale));&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    80% {&lt;br /&gt;
        opacity: 0%;&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    100% {&lt;br /&gt;
        opacity: 0%;&lt;br /&gt;
        transform: translate(-50%, -50%) scale(0);&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.hedgedocs-infobox {&lt;br /&gt;
    display: flex;&lt;br /&gt;
    flex-direction: column;&lt;br /&gt;
    justify-content: center;&lt;br /&gt;
    border: 1px solid var(--hedgedocs-base-border-color);&lt;br /&gt;
    background-color: var(--hedgedocs-frame-bg-color);&lt;br /&gt;
    padding: 7px 13px 10px 13px;&lt;br /&gt;
    margin-bottom: 1em;&lt;br /&gt;
    font-size: 88%;&lt;br /&gt;
    float: right;&lt;br /&gt;
    clear: right;&lt;br /&gt;
    width: 17rem;&lt;br /&gt;
    margin-left: 1rem;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.hedgedocs-infobox tr {&lt;br /&gt;
    display: flex;&lt;br /&gt;
    align-items: center;&lt;br /&gt;
    justify-content: center;&lt;br /&gt;
    text-align: center;&lt;br /&gt;
    width: 100%;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.hedgedocs-infobox tbody {&lt;br /&gt;
    display: block;&lt;br /&gt;
    width: 100%;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
@media screen and (max-width: 76.25em) {&lt;br /&gt;
    .hedgedocs-infobox {&lt;br /&gt;
        float: none;&lt;br /&gt;
        clear: none;&lt;br /&gt;
        margin: auto;&lt;br /&gt;
        width: 20rem;&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.hedgedocs-infobox-title {&lt;br /&gt;
    font-size: 1.2em;&lt;br /&gt;
    font-weight: bold;&lt;br /&gt;
    text-align: center;&lt;br /&gt;
    padding-bottom: 0.2rem;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.hedgedocs-infobox-image {&lt;br /&gt;
    text-align: center;&lt;br /&gt;
    padding-bottom: 0.75rem;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.hedgedocs-infobox-image img {&lt;br /&gt;
    max-width: 100%;&lt;br /&gt;
    height: auto;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.hedgedocs-infobox-label {&lt;br /&gt;
    font-weight: bold;&lt;br /&gt;
    width: 50%;&lt;br /&gt;
    vertical-align: top;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.hedgedocs-infobox-data {&lt;br /&gt;
    width: 50%;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.hedgedocs-infobox-website,&lt;br /&gt;
.hedgedocs-infobox-download {&lt;br /&gt;
    padding-top: 0.25rem;&lt;br /&gt;
    width: 100%;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.hedgedocs-infobox .hedgedocs-infobox-links a {&lt;br /&gt;
    display: block;&lt;br /&gt;
    padding: .5em !important;&lt;br /&gt;
    background-color: var(--hedgedocs-button-accent-bg-color);&lt;br /&gt;
    color: var(--hedgedocs-button-accent-fg-color) !important;&lt;br /&gt;
    text-decoration: none;&lt;br /&gt;
    background-image: none !important;&lt;br /&gt;
    width: auto;&lt;br /&gt;
    transition: background-color 125ms;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.hedgedocs-infobox a:hover {&lt;br /&gt;
    background-color: var(--hedgedocs-button-accent-bg-color-hover);&lt;br /&gt;
    color: var(--hedgedocs-button-accent-fg-color);&lt;br /&gt;
    text-decoration: none;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.hedgedocs-notice {&lt;br /&gt;
    border: 1px solid;&lt;br /&gt;
    border-radius: 2px;&lt;br /&gt;
    color: var(--hedgedocs-fg-color);&lt;br /&gt;
    box-shadow: 0 0.2rem 0.5rem rgba(0, 0, 0, 0.051), 0 0 0.05rem rgba(0, 0, 0, 0.102);&lt;br /&gt;
    margin: 1.5rem 0;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.hedgedocs-notice-note {&lt;br /&gt;
    border-color: var(--hedgedocs-notice-note-border-color);&lt;br /&gt;
&lt;br /&gt;
    .hedgedocs-notice-header {&lt;br /&gt;
        background-color: var(--hedgedocs-notice-note-header-color);&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
.hedgedocs-notice-info {&lt;br /&gt;
    border-color: var(--hedgedocs-notice-info-border-color);&lt;br /&gt;
&lt;br /&gt;
    .hedgedocs-notice-header {&lt;br /&gt;
        background-color: var(--hedgedocs-notice-info-header-color);&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
.hedgedocs-notice-warn {&lt;br /&gt;
    border-color: var(--hedgedocs-notice-warn-border-color);&lt;br /&gt;
&lt;br /&gt;
    .hedgedocs-notice-header {&lt;br /&gt;
        background-color: var(--hedgedocs-notice-warn-header-color);&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
.hedgedocs-notice-example {&lt;br /&gt;
    border-color: var(--hedgedocs-notice-example-border-color);&lt;br /&gt;
&lt;br /&gt;
    .hedgedocs-notice-header {&lt;br /&gt;
        background-color: var(--hedgedocs-notice-example-header-color);&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.hedgedocs-notice .hedgedocs-notice-header {&lt;br /&gt;
    font-weight: bold;&lt;br /&gt;
    color: var(--hedgedocs-fg-color);&lt;br /&gt;
    padding: 7px 15px;&lt;br /&gt;
}&lt;br /&gt;
.hedgedocs-notice-content {&lt;br /&gt;
    padding: 15px;&lt;br /&gt;
    background-color: var(--hedgedocs-frame-bg-color);&lt;br /&gt;
    white-space: pre-wrap;&lt;br /&gt;
}&lt;br /&gt;
.hedgedocs-notice-content ul {&lt;br /&gt;
    margin-top: 0 !important;&lt;br /&gt;
    white-space: normal;&lt;br /&gt;
}&lt;br /&gt;
.hedgedocs-notice-content p {&lt;br /&gt;
    display: inline-block;&lt;br /&gt;
    padding: 0;&lt;br /&gt;
    margin: 0 !important;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.vector-main-menu-action-opt-out {&lt;br /&gt;
    display: none;&lt;br /&gt;
}&lt;br /&gt;
.vector-settings {&lt;br /&gt;
    display: none;&lt;br /&gt;
}&lt;br /&gt;
li#ca-talk, li#ca-nstab-main {&lt;br /&gt;
    display: none;&lt;br /&gt;
}&lt;br /&gt;
div.vector-page-toolbar-container {&lt;br /&gt;
    box-shadow: none;&lt;br /&gt;
    background-color: var(--hedgedocs-bg-color-secondary);&lt;br /&gt;
    padding: 0 10px;&lt;br /&gt;
}&lt;br /&gt;
.vector-page-titlebar::after {&lt;br /&gt;
    display: none !important;&lt;br /&gt;
}&lt;br /&gt;
.mw-portlet-skin-client-prefs-vector-feature-custom-font-size {&lt;br /&gt;
    display: none;&lt;br /&gt;
}&lt;br /&gt;
.mw-editsection { display:none; }&lt;br /&gt;
li#footer-places-disclaimers {&lt;br /&gt;
    display: none;&lt;br /&gt;
}&lt;/div&gt;</summary>
		<author><name>PTKay</name></author>
	</entry>
	<entry>
		<id>https://hedgedocs.com/index.php?title=HedgeDocs:About&amp;diff=433</id>
		<title>HedgeDocs:About</title>
		<link rel="alternate" type="text/html" href="https://hedgedocs.com/index.php?title=HedgeDocs:About&amp;diff=433"/>
		<updated>2025-03-25T10:52:50Z</updated>

		<summary type="html">&lt;p&gt;PTKay: Protected &amp;quot;HedgeDocs:About&amp;quot; ([Edit=Allow only administrators] (indefinite) [Move=Allow only administrators] (indefinite))&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;HedgeDocs is a MediaWiki powered webpage that contains several guides, tools and documentation pages meant to help users creating modifications for Sonic the Hedgehog games.&lt;br /&gt;
&lt;br /&gt;
== Creating Pages ==&lt;br /&gt;
When creating new pages in the wiki, please try to make it fit with the pages that already exist. Try to follow their style as closely as possible.&lt;br /&gt;
&lt;br /&gt;
=== Templates ===&lt;br /&gt;
HedgeDocs provides you custom templates that help you when creating specific pages in the wiki. They are listed in the table below, alongside their purpose:&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|[[Template:Notice|Notice]]&lt;br /&gt;
|Presents a warning, a note or a tip in a coloured container.&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
|[[Template:ToolInfobox|ToolInfoBox]]&lt;br /&gt;
|An information container used for tool pages.&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>PTKay</name></author>
	</entry>
	<entry>
		<id>https://hedgedocs.com/index.php?title=HedgeDocs:About&amp;diff=432</id>
		<title>HedgeDocs:About</title>
		<link rel="alternate" type="text/html" href="https://hedgedocs.com/index.php?title=HedgeDocs:About&amp;diff=432"/>
		<updated>2025-03-25T10:52:43Z</updated>

		<summary type="html">&lt;p&gt;PTKay: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;HedgeDocs is a MediaWiki powered webpage that contains several guides, tools and documentation pages meant to help users creating modifications for Sonic the Hedgehog games.&lt;br /&gt;
&lt;br /&gt;
== Creating Pages ==&lt;br /&gt;
When creating new pages in the wiki, please try to make it fit with the pages that already exist. Try to follow their style as closely as possible.&lt;br /&gt;
&lt;br /&gt;
=== Templates ===&lt;br /&gt;
HedgeDocs provides you custom templates that help you when creating specific pages in the wiki. They are listed in the table below, alongside their purpose:&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|[[Template:Notice|Notice]]&lt;br /&gt;
|Presents a warning, a note or a tip in a coloured container.&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
|[[Template:ToolInfobox|ToolInfoBox]]&lt;br /&gt;
|An information container used for tool pages.&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>PTKay</name></author>
	</entry>
	<entry>
		<id>https://hedgedocs.com/index.php?title=HedgeDocs:About&amp;diff=431</id>
		<title>HedgeDocs:About</title>
		<link rel="alternate" type="text/html" href="https://hedgedocs.com/index.php?title=HedgeDocs:About&amp;diff=431"/>
		<updated>2025-03-25T10:52:11Z</updated>

		<summary type="html">&lt;p&gt;PTKay: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;HedgeDocs is a MediaWiki powered webpage that contains several guides, tools and documentation pages meant to help users creating modifications for Sonic the Hedgehog games.&lt;br /&gt;
&lt;br /&gt;
== Creating Pages ==&lt;br /&gt;
When creating new pages in the wiki, please try to make it fit with the pages that already exist. Try to follow their style as closely as possible.&lt;br /&gt;
&lt;br /&gt;
=== Templates ===&lt;br /&gt;
HedgeDocs provides you custom templates that help you when creating specific pages in the wiki. They are listed in the table below, alongside their purpose&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|[[Template:Notice|Notice]]&lt;br /&gt;
|Presents a warning, a note or a tip in a coloured container.&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
|[[Template:ToolInfobox|ToolInfoBox]]&lt;br /&gt;
|An information container used for tool pages.&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>PTKay</name></author>
	</entry>
	<entry>
		<id>https://hedgedocs.com/index.php?title=HedgeDocs:About&amp;diff=430</id>
		<title>HedgeDocs:About</title>
		<link rel="alternate" type="text/html" href="https://hedgedocs.com/index.php?title=HedgeDocs:About&amp;diff=430"/>
		<updated>2025-03-25T10:47:08Z</updated>

		<summary type="html">&lt;p&gt;PTKay: Created page with &amp;quot;HedgeDocs is a MediaWiki powered webpage that contains several guides, tools and documentation pages meant to help users creating modifications for Sonic the Hedgehog games.&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;HedgeDocs is a MediaWiki powered webpage that contains several guides, tools and documentation pages meant to help users creating modifications for Sonic the Hedgehog games.&lt;/div&gt;</summary>
		<author><name>PTKay</name></author>
	</entry>
	<entry>
		<id>https://hedgedocs.com/index.php?title=Documentation&amp;diff=429</id>
		<title>Documentation</title>
		<link rel="alternate" type="text/html" href="https://hedgedocs.com/index.php?title=Documentation&amp;diff=429"/>
		<updated>2025-03-25T10:45:11Z</updated>

		<summary type="html">&lt;p&gt;PTKay: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This section lists documentation pages for resources you&#039;ll find in Sonic games. You&#039;ll find information about certain file formats and other general game resources.&lt;br /&gt;
&lt;br /&gt;
== Set-Data ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
!Extension&lt;br /&gt;
!Tools&lt;br /&gt;
|-&lt;br /&gt;
|[[HSON Format|HSON]] (Hedgehog Set Object Notation)&lt;br /&gt;
|Universal object placement representation format.&lt;br /&gt;
|.hson&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== User Interface ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
!Extension&lt;br /&gt;
!Tools&lt;br /&gt;
|-&lt;br /&gt;
|[[NCP File Format|NCP]] (Ninja CellSpriteDraw Project)&lt;br /&gt;
|Describes a user interface in most Hedgehog Engine games.&lt;br /&gt;
|.[x/y/g/s]ncp&lt;br /&gt;
|&lt;br /&gt;
* [[Kunai]]&lt;br /&gt;
* [[Shuriken]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Archives ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
!Extension&lt;br /&gt;
!Tools&lt;br /&gt;
|-&lt;br /&gt;
|[[NN Chunk Format|NN Chunk]]&lt;br /&gt;
|Generic container format.&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>PTKay</name></author>
	</entry>
	<entry>
		<id>https://hedgedocs.com/index.php?title=Documentation&amp;diff=428</id>
		<title>Documentation</title>
		<link rel="alternate" type="text/html" href="https://hedgedocs.com/index.php?title=Documentation&amp;diff=428"/>
		<updated>2025-03-25T10:29:49Z</updated>

		<summary type="html">&lt;p&gt;PTKay: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This section contains documentation that isn&#039;t specific to any game. You&#039;ll find information about certain file formats and other general game resources.&lt;br /&gt;
&lt;br /&gt;
== Set-Data ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
!Extension&lt;br /&gt;
!Tools&lt;br /&gt;
|-&lt;br /&gt;
|[[HSON Format|HSON]] (Hedgehog Set Object Notation)&lt;br /&gt;
|Universal object placement representation format.&lt;br /&gt;
|.hson&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== User Interface ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
!Extension&lt;br /&gt;
!Tools&lt;br /&gt;
|-&lt;br /&gt;
|[[NCP File Format|NCP]] (Ninja CellSpriteDraw Project)&lt;br /&gt;
|Describes a user interface in most Hedgehog Engine games.&lt;br /&gt;
|.[x/y/g/s]ncp&lt;br /&gt;
|&lt;br /&gt;
* [[Kunai]]&lt;br /&gt;
* [[Shuriken]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Archives ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
!Extension&lt;br /&gt;
!Tools&lt;br /&gt;
|-&lt;br /&gt;
|[[NN Chunk Format|NN Chunk]]&lt;br /&gt;
|Generic container format.&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>PTKay</name></author>
	</entry>
	<entry>
		<id>https://hedgedocs.com/index.php?title=Documentation&amp;diff=427</id>
		<title>Documentation</title>
		<link rel="alternate" type="text/html" href="https://hedgedocs.com/index.php?title=Documentation&amp;diff=427"/>
		<updated>2025-03-25T10:28:50Z</updated>

		<summary type="html">&lt;p&gt;PTKay: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This section contains documentation that isn&#039;t specific to any game. You&#039;ll find information about certain file formats and other general game resources.&lt;br /&gt;
&lt;br /&gt;
== Set-Data ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
!Extension&lt;br /&gt;
!Tools&lt;br /&gt;
|-&lt;br /&gt;
|[[HSON Format|HSON]]&lt;br /&gt;
|Universal object placement representation format.&lt;br /&gt;
|.hson&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== User Interface ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
!Extension&lt;br /&gt;
!Tools&lt;br /&gt;
|-&lt;br /&gt;
|[[NCP File Format|NCP]]&lt;br /&gt;
|Describes a user interface in most Hedgehog Engine games.&lt;br /&gt;
|.[x/y/g/s]ncp&lt;br /&gt;
|&lt;br /&gt;
* [[Kunai]]&lt;br /&gt;
* [[Shuriken]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Archives ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
!Extension&lt;br /&gt;
!Tools&lt;br /&gt;
|-&lt;br /&gt;
|[[NN Chunk Format|NN Chunk]]&lt;br /&gt;
|Generic container format.&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>PTKay</name></author>
	</entry>
	<entry>
		<id>https://hedgedocs.com/index.php?title=HedgeArchiveEditor&amp;diff=426</id>
		<title>HedgeArchiveEditor</title>
		<link rel="alternate" type="text/html" href="https://hedgedocs.com/index.php?title=HedgeArchiveEditor&amp;diff=426"/>
		<updated>2025-03-25T10:27:38Z</updated>

		<summary type="html">&lt;p&gt;PTKay: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ToolInfobox|title=HedgeArchiveEditor|author=Radfordhound, PTKay|download=https://github.com/HedgeDocs/HedgeDocs.github.io/releases/download/CompiledTools/HedgeArchiveEditor.7z}}&lt;br /&gt;
&lt;br /&gt;
HedgeArchiveEditor is a user interface for [[HedgeArcPack]].&lt;/div&gt;</summary>
		<author><name>PTKay</name></author>
	</entry>
	<entry>
		<id>https://hedgedocs.com/index.php?title=Documentation&amp;diff=425</id>
		<title>Documentation</title>
		<link rel="alternate" type="text/html" href="https://hedgedocs.com/index.php?title=Documentation&amp;diff=425"/>
		<updated>2025-03-25T10:22:07Z</updated>

		<summary type="html">&lt;p&gt;PTKay: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This section contains documentation that isn&#039;t specific to any game. You&#039;ll find information about certain file formats and other general game resources.&lt;br /&gt;
&lt;br /&gt;
== Set-Data ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
!Extension&lt;br /&gt;
!Tools&lt;br /&gt;
|-&lt;br /&gt;
|[[HSON Format|HSON]]&lt;br /&gt;
|Universal object placement representation format.&lt;br /&gt;
|.hson&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== User Interface ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
!Extension&lt;br /&gt;
!Tools&lt;br /&gt;
|-&lt;br /&gt;
|[[NCP File Format|NCP]]&lt;br /&gt;
|Describes a user interface in most Hedgehog Engine games.&lt;br /&gt;
|.[x/y/g/s]ncp&lt;br /&gt;
|&lt;br /&gt;
* [[Kunai]]&lt;br /&gt;
* [[Shuriken]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Archives ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
!Extension&lt;br /&gt;
!Tools&lt;br /&gt;
|-&lt;br /&gt;
|[[NN Chunk Format|NN Chunk]]&lt;br /&gt;
|Generic container format&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>PTKay</name></author>
	</entry>
	<entry>
		<id>https://hedgedocs.com/index.php?title=Documentation&amp;diff=424</id>
		<title>Documentation</title>
		<link rel="alternate" type="text/html" href="https://hedgedocs.com/index.php?title=Documentation&amp;diff=424"/>
		<updated>2025-03-25T10:21:45Z</updated>

		<summary type="html">&lt;p&gt;PTKay: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This section contains documentation that isn&#039;t specific to any game. You&#039;ll find information about certain file formats and other general game resources.&lt;br /&gt;
&lt;br /&gt;
== Set-Data ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
!Extension&lt;br /&gt;
!Tools&lt;br /&gt;
|-&lt;br /&gt;
|[[HSON Format|HSON]]&lt;br /&gt;
|Universal object placement representation format.&lt;br /&gt;
|.hson&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== User Interface ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
!Extension&lt;br /&gt;
!Tools&lt;br /&gt;
|-&lt;br /&gt;
|[[NCP File Format|NCP]]&lt;br /&gt;
|Describes a user interface in most Hedgehog Engine games.&lt;br /&gt;
|.[x/y/g/s]ncp&lt;br /&gt;
|[[Kunai]]&lt;br /&gt;
[[Shuriken]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Archives ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
!Extension&lt;br /&gt;
!Tools&lt;br /&gt;
|-&lt;br /&gt;
|[[NN Chunk Format|NN Chunk]]&lt;br /&gt;
|Generic container format&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>PTKay</name></author>
	</entry>
	<entry>
		<id>https://hedgedocs.com/index.php?title=Documentation&amp;diff=423</id>
		<title>Documentation</title>
		<link rel="alternate" type="text/html" href="https://hedgedocs.com/index.php?title=Documentation&amp;diff=423"/>
		<updated>2025-03-25T10:21:37Z</updated>

		<summary type="html">&lt;p&gt;PTKay: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This section contains documentation that isn&#039;t specific to any game. You&#039;ll find information about certain file formats and other general game resources.&lt;br /&gt;
&lt;br /&gt;
== Set-Data ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
!Extension&lt;br /&gt;
!Tools&lt;br /&gt;
|-&lt;br /&gt;
|[[HSON Format|HSON]]&lt;br /&gt;
|Universal object placement representation format.&lt;br /&gt;
|.hson&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== User Interface ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
!Extension&lt;br /&gt;
!Tools&lt;br /&gt;
|-&lt;br /&gt;
|[[NCP File Format|NCP]]&lt;br /&gt;
|Describes a user interface in most Hedgehog Engine games.&lt;br /&gt;
|.[x/y/g/s]ncp&lt;br /&gt;
|[[Kunai]] [[Shuriken]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Archives ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
!Extension&lt;br /&gt;
!Tools&lt;br /&gt;
|-&lt;br /&gt;
|[[NN Chunk Format|NN Chunk]]&lt;br /&gt;
|Generic container format&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>PTKay</name></author>
	</entry>
	<entry>
		<id>https://hedgedocs.com/index.php?title=Documentation&amp;diff=422</id>
		<title>Documentation</title>
		<link rel="alternate" type="text/html" href="https://hedgedocs.com/index.php?title=Documentation&amp;diff=422"/>
		<updated>2025-03-25T10:17:47Z</updated>

		<summary type="html">&lt;p&gt;PTKay: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This section contains documentation that isn&#039;t specific to any game. You&#039;ll find information about certain file formats and other general game resources.&lt;br /&gt;
&lt;br /&gt;
== Set-Data ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
!Extension&lt;br /&gt;
!Tools&lt;br /&gt;
|-&lt;br /&gt;
|[[HSON Format|HSON]]&lt;br /&gt;
|Universal object placement representation format.&lt;br /&gt;
|.hson&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== User Interface ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
!Extension&lt;br /&gt;
!Tools&lt;br /&gt;
|-&lt;br /&gt;
|[[NCP File Format|NCP]]&lt;br /&gt;
|Describes a user interface in most Hedgehog Engine games.&lt;br /&gt;
|.[x/y/g/s]ncp&lt;br /&gt;
|[[Kunai]]&lt;br /&gt;
[[Shuriken]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Archives ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
!Extension&lt;br /&gt;
!Tools&lt;br /&gt;
|-&lt;br /&gt;
|[[NN Chunk Format|NN Chunk]]&lt;br /&gt;
|Generic container format&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>PTKay</name></author>
	</entry>
	<entry>
		<id>https://hedgedocs.com/index.php?title=Documentation&amp;diff=421</id>
		<title>Documentation</title>
		<link rel="alternate" type="text/html" href="https://hedgedocs.com/index.php?title=Documentation&amp;diff=421"/>
		<updated>2025-03-25T10:17:34Z</updated>

		<summary type="html">&lt;p&gt;PTKay: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This section contains documentation that isn&#039;t specific to any game. You&#039;ll find information about certain file formats and other general game resources.&lt;br /&gt;
&lt;br /&gt;
== Set Data ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
!Extension&lt;br /&gt;
!Tools&lt;br /&gt;
|-&lt;br /&gt;
|[[HSON Format|HSON]]&lt;br /&gt;
|Universal object placement representation format.&lt;br /&gt;
|.hson&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== User Interface ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
!Extension&lt;br /&gt;
!Tools&lt;br /&gt;
|-&lt;br /&gt;
|[[NCP File Format|NCP]]&lt;br /&gt;
|Describes a user interface in most Hedgehog Engine games.&lt;br /&gt;
|.[x/y/g/s]ncp&lt;br /&gt;
|[[Kunai]]&lt;br /&gt;
[[Shuriken]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Archives ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
!Extension&lt;br /&gt;
!Tools&lt;br /&gt;
|-&lt;br /&gt;
|[[NN Chunk Format|NN Chunk]]&lt;br /&gt;
|Generic container format&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>PTKay</name></author>
	</entry>
	<entry>
		<id>https://hedgedocs.com/index.php?title=Documentation&amp;diff=420</id>
		<title>Documentation</title>
		<link rel="alternate" type="text/html" href="https://hedgedocs.com/index.php?title=Documentation&amp;diff=420"/>
		<updated>2025-03-25T10:10:52Z</updated>

		<summary type="html">&lt;p&gt;PTKay: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This section contains documentation that isn&#039;t specific to any game. You&#039;ll find information about certain file formats and other general game resources.&lt;br /&gt;
&lt;br /&gt;
== File Formats ==&lt;br /&gt;
&lt;br /&gt;
* [[HSON Format]]&lt;br /&gt;
* [[NCP File Format]]&lt;br /&gt;
* [[NN Chunk Format]]&lt;/div&gt;</summary>
		<author><name>PTKay</name></author>
	</entry>
	<entry>
		<id>https://hedgedocs.com/index.php?title=Sonic_Generations&amp;diff=419</id>
		<title>Sonic Generations</title>
		<link rel="alternate" type="text/html" href="https://hedgedocs.com/index.php?title=Sonic_Generations&amp;diff=419"/>
		<updated>2025-03-25T09:45:03Z</updated>

		<summary type="html">&lt;p&gt;PTKay: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Tools ==&lt;br /&gt;
&lt;br /&gt;
==== Animation ====&lt;br /&gt;
&lt;br /&gt;
* [[evsxml]] (.evs)&lt;br /&gt;
&lt;br /&gt;
==== Lighting ====&lt;br /&gt;
&lt;br /&gt;
* [[cropGIA]]&lt;br /&gt;
* [[SeparateGIA]]&lt;br /&gt;
* [[FxPipelineResolutionChanger]]&lt;br /&gt;
&lt;br /&gt;
==== Collision ====&lt;br /&gt;
&lt;br /&gt;
* [[Collision2fbx (Sonic Generations)|collision2fbx]] (.phy.hkx)&lt;br /&gt;
&lt;br /&gt;
==== Models ====&lt;br /&gt;
&lt;br /&gt;
* [[Unleashed2Generations]] (*.model / *.terrain-model / *.material)&lt;br /&gt;
* [[slwModel2Gens]] (*.model)&lt;br /&gt;
* [[TuringFixer]]&lt;br /&gt;
&lt;br /&gt;
==== Stages ====&lt;br /&gt;
&lt;br /&gt;
* [[TransformGensStage]]&lt;br /&gt;
* [[Sonic GLvl]]&lt;br /&gt;
&lt;br /&gt;
==== Text ====&lt;br /&gt;
&lt;br /&gt;
* [[fcoEditor]] (.fco / .fte)&lt;br /&gt;
&lt;br /&gt;
==== Other ====&lt;br /&gt;
&lt;br /&gt;
* [[BscPack]]&lt;br /&gt;
&lt;br /&gt;
== Guides ==&lt;br /&gt;
&lt;br /&gt;
=== Level Editing ===&lt;br /&gt;
&lt;br /&gt;
* [[How To Use Sonic GLvl with Sonic Generations|Sonic GLvl]]&lt;br /&gt;
* [[How To Import Custom Terrain in Sonic Generations|Importing Terrain]]&lt;br /&gt;
* [[How To Import Custom Collision in Sonic Generations|Importing Collision]]&lt;br /&gt;
* [[How To Specify Custom Rank Times for Sonic Generations|Custom Rank Times]]&lt;br /&gt;
* [[Troubleshooting Custom Level Issues in Sonic Generations|Troubleshooting]]&lt;br /&gt;
&lt;br /&gt;
== Documentation ==&lt;br /&gt;
&lt;br /&gt;
* [[Sonic Generations Stage IDs|Stage IDs]]&lt;br /&gt;
* [[Sonic Generations Event List|Set Object Event List]]&lt;br /&gt;
* [[Sonic Generations Camera Types|Camera Types]]&lt;br /&gt;
* [[Unleashed-Generations Havok Collision Attributes|Havok Collision Attributes]]&lt;br /&gt;
* [[Sound File Locations]]&lt;br /&gt;
&lt;br /&gt;
== Discoveries ==&lt;br /&gt;
&lt;br /&gt;
=== Common (2011/2024) ===&lt;br /&gt;
&lt;br /&gt;
==== HUD ====&lt;br /&gt;
&lt;br /&gt;
* [[Unused Time Eater Gauge]]&lt;br /&gt;
&lt;br /&gt;
==== Code ====&lt;br /&gt;
&lt;br /&gt;
* [[Leftover code from Unleashed in Generations|Unleashed Leftovers]]&lt;br /&gt;
&lt;br /&gt;
=== 2024 ===&lt;br /&gt;
&lt;br /&gt;
==== Stages ====&lt;br /&gt;
&lt;br /&gt;
* [[TestCourse]]&lt;/div&gt;</summary>
		<author><name>PTKay</name></author>
	</entry>
	<entry>
		<id>https://hedgedocs.com/index.php?title=Sonic_Lost_World&amp;diff=418</id>
		<title>Sonic Lost World</title>
		<link rel="alternate" type="text/html" href="https://hedgedocs.com/index.php?title=Sonic_Lost_World&amp;diff=418"/>
		<updated>2025-03-25T09:43:21Z</updated>

		<summary type="html">&lt;p&gt;PTKay: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Tools ==&lt;br /&gt;
&lt;br /&gt;
=== General ===&lt;br /&gt;
&lt;br /&gt;
* [[hhdxml]] (*.hhd)&lt;br /&gt;
&lt;br /&gt;
=== Collision ===&lt;br /&gt;
&lt;br /&gt;
* [[Collision2fbx (Sonic Lost World)|collision2fbx]] (*.hkx)&lt;br /&gt;
&lt;br /&gt;
=== Materials ===&lt;br /&gt;
&lt;br /&gt;
* [[GensMaterial2Slw]] (*.material)&lt;br /&gt;
&lt;br /&gt;
=== Models ===&lt;br /&gt;
&lt;br /&gt;
* [[Shadow Model Converter]] (*.model)&lt;br /&gt;
&lt;br /&gt;
== Guides ==&lt;br /&gt;
N/A&lt;br /&gt;
&lt;br /&gt;
== Documentation ==&lt;br /&gt;
N/A&lt;br /&gt;
&lt;br /&gt;
== Discoveries ==&lt;br /&gt;
&lt;br /&gt;
=== Cutscenes ===&lt;br /&gt;
&lt;br /&gt;
* [[Real-Time Cutscene Levels in Sonic Lost World|Real-Time Cutscene Levels]]&lt;br /&gt;
&lt;br /&gt;
=== Levels ===&lt;br /&gt;
&lt;br /&gt;
* [[Sonic Colors Leftover Levels in Sonic Lost World|Colors Leftovers]]&lt;br /&gt;
* [[Sonic Lost World Test Levels|Test Levels]]&lt;br /&gt;
* [[Sonic Lost World Deleted Levels|Deleted Levels]]&lt;br /&gt;
* [[Sonic Lost World Original Level Order|Original Level Order]]&lt;/div&gt;</summary>
		<author><name>PTKay</name></author>
	</entry>
	<entry>
		<id>https://hedgedocs.com/index.php?title=Sonic_Lost_World&amp;diff=417</id>
		<title>Sonic Lost World</title>
		<link rel="alternate" type="text/html" href="https://hedgedocs.com/index.php?title=Sonic_Lost_World&amp;diff=417"/>
		<updated>2025-03-25T09:42:55Z</updated>

		<summary type="html">&lt;p&gt;PTKay: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Tools ==&lt;br /&gt;
[[hhdxml]]&lt;br /&gt;
&lt;br /&gt;
=== Collision ===&lt;br /&gt;
&lt;br /&gt;
* [[Collision2fbx (Sonic Lost World)|collision2fbx]] (*.hkx)&lt;br /&gt;
&lt;br /&gt;
=== Materials ===&lt;br /&gt;
&lt;br /&gt;
* [[GensMaterial2Slw]] (*.material)&lt;br /&gt;
&lt;br /&gt;
=== Models ===&lt;br /&gt;
&lt;br /&gt;
* [[Shadow Model Converter]] (*.model)&lt;br /&gt;
&lt;br /&gt;
== Guides ==&lt;br /&gt;
N/A&lt;br /&gt;
&lt;br /&gt;
== Documentation ==&lt;br /&gt;
N/A&lt;br /&gt;
&lt;br /&gt;
== Discoveries ==&lt;br /&gt;
&lt;br /&gt;
=== Cutscenes ===&lt;br /&gt;
&lt;br /&gt;
* [[Real-Time Cutscene Levels in Sonic Lost World|Real-Time Cutscene Levels]]&lt;br /&gt;
&lt;br /&gt;
=== Levels ===&lt;br /&gt;
&lt;br /&gt;
* [[Sonic Colors Leftover Levels in Sonic Lost World|Colors Leftovers]]&lt;br /&gt;
* [[Sonic Lost World Test Levels|Test Levels]]&lt;br /&gt;
* [[Sonic Lost World Deleted Levels|Deleted Levels]]&lt;br /&gt;
* [[Sonic Lost World Original Level Order|Original Level Order]]&lt;/div&gt;</summary>
		<author><name>PTKay</name></author>
	</entry>
	<entry>
		<id>https://hedgedocs.com/index.php?title=Sonic_Generations&amp;diff=416</id>
		<title>Sonic Generations</title>
		<link rel="alternate" type="text/html" href="https://hedgedocs.com/index.php?title=Sonic_Generations&amp;diff=416"/>
		<updated>2025-03-25T09:42:32Z</updated>

		<summary type="html">&lt;p&gt;PTKay: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Tools ==&lt;br /&gt;
&lt;br /&gt;
==== Animation ====&lt;br /&gt;
&lt;br /&gt;
* [[evsxml]] (.evs)&lt;br /&gt;
&lt;br /&gt;
==== Lighting ====&lt;br /&gt;
&lt;br /&gt;
* [[cropGIA]]&lt;br /&gt;
* [[SeparateGIA]]&lt;br /&gt;
* [[FxPipelineResolutionChanger]]&lt;br /&gt;
&lt;br /&gt;
==== Collision ====&lt;br /&gt;
&lt;br /&gt;
* [[Collision2fbx (Sonic Generations)|collision2fbx]] (.phy.hkx)&lt;br /&gt;
&lt;br /&gt;
==== Models ====&lt;br /&gt;
&lt;br /&gt;
* [[Unleashed2Generations]]&lt;br /&gt;
* [[slwModel2Gens]] (*.model)&lt;br /&gt;
* [[TuringFixer]]&lt;br /&gt;
&lt;br /&gt;
==== Stages ====&lt;br /&gt;
&lt;br /&gt;
* [[TransformGensStage]]&lt;br /&gt;
* [[Sonic GLvl]]&lt;br /&gt;
&lt;br /&gt;
==== Text ====&lt;br /&gt;
&lt;br /&gt;
* [[fcoEditor]] (.fco / .fte)&lt;br /&gt;
&lt;br /&gt;
==== Other ====&lt;br /&gt;
&lt;br /&gt;
* [[BscPack]]&lt;br /&gt;
&lt;br /&gt;
== Guides ==&lt;br /&gt;
&lt;br /&gt;
=== Level Editing ===&lt;br /&gt;
&lt;br /&gt;
* [[How To Use Sonic GLvl with Sonic Generations|Sonic GLvl]]&lt;br /&gt;
* [[How To Import Custom Terrain in Sonic Generations|Importing Terrain]]&lt;br /&gt;
* [[How To Import Custom Collision in Sonic Generations|Importing Collision]]&lt;br /&gt;
* [[How To Specify Custom Rank Times for Sonic Generations|Custom Rank Times]]&lt;br /&gt;
* [[Troubleshooting Custom Level Issues in Sonic Generations|Troubleshooting]]&lt;br /&gt;
&lt;br /&gt;
== Documentation ==&lt;br /&gt;
&lt;br /&gt;
* [[Sonic Generations Stage IDs|Stage IDs]]&lt;br /&gt;
* [[Sonic Generations Event List|Set Object Event List]]&lt;br /&gt;
* [[Sonic Generations Camera Types|Camera Types]]&lt;br /&gt;
* [[Unleashed-Generations Havok Collision Attributes|Havok Collision Attributes]]&lt;br /&gt;
* [[Sound File Locations]]&lt;br /&gt;
&lt;br /&gt;
== Discoveries ==&lt;br /&gt;
&lt;br /&gt;
=== Common (2011/2024) ===&lt;br /&gt;
&lt;br /&gt;
==== HUD ====&lt;br /&gt;
&lt;br /&gt;
* [[Unused Time Eater Gauge]]&lt;br /&gt;
&lt;br /&gt;
==== Code ====&lt;br /&gt;
&lt;br /&gt;
* [[Leftover code from Unleashed in Generations|Unleashed Leftovers]]&lt;br /&gt;
&lt;br /&gt;
=== 2024 ===&lt;br /&gt;
&lt;br /&gt;
==== Stages ====&lt;br /&gt;
&lt;br /&gt;
* [[TestCourse]]&lt;/div&gt;</summary>
		<author><name>PTKay</name></author>
	</entry>
	<entry>
		<id>https://hedgedocs.com/index.php?title=Tools&amp;diff=415</id>
		<title>Tools</title>
		<link rel="alternate" type="text/html" href="https://hedgedocs.com/index.php?title=Tools&amp;diff=415"/>
		<updated>2025-03-25T09:42:07Z</updated>

		<summary type="html">&lt;p&gt;PTKay: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This section contains tools that aren&#039;t specific to any Sonic game. Below you can see the tools divided by the engine they target and their purpose.&lt;br /&gt;
&lt;br /&gt;
== Various Engines ==&lt;br /&gt;
&lt;br /&gt;
=== Audio ===&lt;br /&gt;
&lt;br /&gt;
* [[SonicAudioTools]]&lt;br /&gt;
&lt;br /&gt;
== Hedgehog Engine ==&lt;br /&gt;
&lt;br /&gt;
=== Common ===&lt;br /&gt;
&lt;br /&gt;
* [[PackCpk]] (.cpk)&lt;br /&gt;
* [[terrain2fbx]] (.terrain-model)&lt;br /&gt;
* [[terrain2fbx-png]] (.terrain-model)&lt;br /&gt;
&lt;br /&gt;
=== Archives (.ar, .pfd, .pac) ===&lt;br /&gt;
* [[HedgeArchiveEditor]]&lt;br /&gt;
* [[HedgeArcPack]]&lt;br /&gt;
* [[ar0pack-ar0unpack]]&lt;br /&gt;
&lt;br /&gt;
=== Lighting ===&lt;br /&gt;
* [[HedgeGI]]&lt;br /&gt;
* [[SonicLightTools]]&lt;br /&gt;
&lt;br /&gt;
=== UI ===&lt;br /&gt;
* [[Shuriken]] (.xncp / .yncp)&lt;br /&gt;
* [[Kunai]] (.xncp / .yncp / .gncp / .sncp)&lt;br /&gt;
&lt;br /&gt;
=== Collision ===&lt;br /&gt;
* [[Havok Converter]] (*.hkx)&lt;br /&gt;
&lt;br /&gt;
=== Text ===&lt;br /&gt;
* [[Converse]] (.fco / .fte)&lt;/div&gt;</summary>
		<author><name>PTKay</name></author>
	</entry>
	<entry>
		<id>https://hedgedocs.com/index.php?title=Tools&amp;diff=414</id>
		<title>Tools</title>
		<link rel="alternate" type="text/html" href="https://hedgedocs.com/index.php?title=Tools&amp;diff=414"/>
		<updated>2025-03-25T09:41:46Z</updated>

		<summary type="html">&lt;p&gt;PTKay: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This section contains tools that aren&#039;t specific to any Sonic game. Below you can see the tools divided by the engine they target and their purpose.&lt;br /&gt;
&lt;br /&gt;
== Various Engines ==&lt;br /&gt;
&lt;br /&gt;
=== Audio ===&lt;br /&gt;
&lt;br /&gt;
* [[SonicAudioTools]]&lt;br /&gt;
&lt;br /&gt;
== Hedgehog Engine ==&lt;br /&gt;
&lt;br /&gt;
=== Common ===&lt;br /&gt;
&lt;br /&gt;
* [[PackCpk]] (.cpk)&lt;br /&gt;
* [[terrain2fbx]] (.terrain-model)&lt;br /&gt;
* [[terrain2fbx-png]] (.terrain-model)&lt;br /&gt;
&lt;br /&gt;
=== Archives (.ar, .pfd, .pac) ===&lt;br /&gt;
* [[HedgeArchiveEditor]]&lt;br /&gt;
* [[HedgeArcPack]]&lt;br /&gt;
* [[ar0pack-ar0unpack]]&lt;br /&gt;
&lt;br /&gt;
=== Lighting ===&lt;br /&gt;
* [[HedgeGI]]&lt;br /&gt;
* [[SonicLightTools]]&lt;br /&gt;
&lt;br /&gt;
=== UI ===&lt;br /&gt;
* [[Shuriken]] (.xncp / .yncp)&lt;br /&gt;
* [[Kunai]] (.xncp / .yncp / .gncp / .sncp)&lt;br /&gt;
&lt;br /&gt;
=== Collision ===&lt;br /&gt;
* [[Havok Converter]]&lt;br /&gt;
&lt;br /&gt;
=== Text ===&lt;br /&gt;
* [[Converse]] (.fco / .fte)&lt;/div&gt;</summary>
		<author><name>PTKay</name></author>
	</entry>
	<entry>
		<id>https://hedgedocs.com/index.php?title=Documentation&amp;diff=413</id>
		<title>Documentation</title>
		<link rel="alternate" type="text/html" href="https://hedgedocs.com/index.php?title=Documentation&amp;diff=413"/>
		<updated>2025-03-25T09:40:46Z</updated>

		<summary type="html">&lt;p&gt;PTKay: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This section contains documentation that isn&#039;t specific to any game. You&#039;ll find information about certain file formats and other general game elements.&lt;br /&gt;
&lt;br /&gt;
== File Formats ==&lt;br /&gt;
&lt;br /&gt;
* [[HSON Format]]&lt;br /&gt;
* [[NCP File Format]]&lt;br /&gt;
* [[NN Chunk Format]]&lt;/div&gt;</summary>
		<author><name>PTKay</name></author>
	</entry>
	<entry>
		<id>https://hedgedocs.com/index.php?title=NCP_File_Format&amp;diff=412</id>
		<title>NCP File Format</title>
		<link rel="alternate" type="text/html" href="https://hedgedocs.com/index.php?title=NCP_File_Format&amp;diff=412"/>
		<updated>2025-03-25T09:21:19Z</updated>

		<summary type="html">&lt;p&gt;PTKay: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Notice|type=info|content=This page is written as a guide on how to go through an NCP file using 010 Editor with the [https://github.com/tge-was-taken/010-Editor-Templates/blob/master/templates/sonic_xncp_yncp.bt XNCP Template]}}&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;NCP&#039;&#039;&#039; (Ninja CellSpriteDraw Project) is a file format used to specify user interfaces in most Hedgehog Engine games. There are several variants of this file format, each with it&#039;s own target platform:&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;&amp;lt;u&amp;gt;X&amp;lt;/u&amp;gt;&#039;&#039;&#039;NCP - Used on PC / Xbox&lt;br /&gt;
* &#039;&#039;&#039;&amp;lt;u&amp;gt;Y&amp;lt;/u&amp;gt;&#039;&#039;&#039;NCP - Used on PlayStation 3&lt;br /&gt;
* &#039;&#039;&#039;&amp;lt;u&amp;gt;G&amp;lt;/u&amp;gt;&#039;&#039;&#039;NCP - Used on GameCube / Wii&lt;br /&gt;
* &#039;&#039;&#039;&amp;lt;u&amp;gt;S&amp;lt;/u&amp;gt;&#039;&#039;&#039;NCP - Used on PlayStation 2&lt;br /&gt;
&lt;br /&gt;
In this page, you will read about how to open an NCP file in 010 editor and how this file is structured.&lt;br /&gt;
&lt;br /&gt;
== Requirements ==&lt;br /&gt;
First of all, you will need to download the [https://www.sweetscape.com/010editor/ 010 Editor]. This program is used for hex editing, and in our case, to modify XNCP files. You&#039;ll also need to download the [https://github.com/tge-was-taken/010-Editor-Templates/blob/master/templates/sonic_xncp_yncp.bthttps://github.com/tge-was-taken/010-Editor-Templates/blob/master/templates/sonic_xncp_yncp.bt XNCP Template]. Essentially, this file will make it so that you can read and understand the XNCP file&#039;s contents, otherwise you&#039;d only see hex numbers, and that&#039;s not exactly readable.&lt;br /&gt;
&lt;br /&gt;
== Opening an XNCP file ==&lt;br /&gt;
After installing the 010 Editor, and downloaded the XNCP Template, it&#039;s time to open a file.&lt;br /&gt;
&lt;br /&gt;
Open the 010 Editor and click on &#039;&#039;&#039;File &amp;gt; Open File...&#039;&#039;&#039;, and open the file that you need to edit.&lt;br /&gt;
[[File:010 Editor open file.png|center|thumb|397x397px]]&lt;br /&gt;
After opening the file, you&#039;ll see a bunch of numbers. Don&#039;t get freaked out, this is normal. These are the contents of the XNCP file.&lt;br /&gt;
[[File:010 editor xncp hex.png|center|thumb|702x702px]]&lt;br /&gt;
Now, you need to go to &#039;&#039;&#039;Templates &amp;gt; Open Template...&#039;&#039;&#039;, and open the file that we downloaded before. It&#039;s called &#039;&#039;&#039;sonic_xncp_yncp.bt&#039;&#039;&#039;.&lt;br /&gt;
[[File:010 Editor open template.png|center|thumb|343x343px]]&lt;br /&gt;
After opening the file, a window should pop up with the template&#039;s code. You can just ignore this window and hide it wherever you&#039;d like, you won&#039;t need to modify this.&lt;br /&gt;
&lt;br /&gt;
Now, go back to &#039;&#039;&#039;Templates&#039;&#039;&#039; and click on &#039;&#039;&#039;Run Template&#039;&#039;&#039;. This should now make the numbers have colorful backgrounds, and a new window will appear below the hex view.&lt;br /&gt;
[[File:010 Editor xncp template executed.png|center|thumb|944x944px]]&lt;br /&gt;
This new window that has appeared will be your workspace. This&#039;ll be the way in which you edit all aspects of a UI file. Click on the &#039;&#039;&#039;struct TFAPC File&#039;&#039;&#039; dropdown, then &#039;&#039;&#039;struct TFAPCEmbeddedRes Resources[0]&#039;&#039;&#039;, then &#039;&#039;&#039;struct TNNNCPJChunk CsdmProject&#039;&#039;&#039;, and then on &#039;&#039;&#039;struct TCSDNode Root&#039;&#039;&#039;. Now you&#039;ll have a few variables here; I&#039;ll explain what some of them mean!&lt;br /&gt;
&lt;br /&gt;
== The structure of an XNCP file (Resource 0) ==&lt;br /&gt;
&#039;&#039;&#039;Scenes&#039;&#039;&#039; are essentially the containers for a specific group of UI elements, think of it like a folder inside a folder, and you&#039;ll need &#039;&#039;&#039;SceneIDTable&#039;&#039;&#039; to understand which Scene is what. This table contains the name and index of each Scene (e.g: Scene &amp;quot;gauge&amp;quot; in ui_gameplay.xncp is the &amp;quot;folder&amp;quot; that contains all elements of the boost bar in the HUD). Scenes also have a few variables that may be of interest, like:&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;ZIndex&#039;&#039;&#039;, this is essentially the layer in which the UI elements (known as &#039;&#039;&#039;Casts&#039;&#039;&#039;) will render&lt;br /&gt;
* &#039;&#039;&#039;Groups&#039;&#039;&#039;, are exactly what they are called, they are groups of &#039;&#039;&#039;Casts&#039;&#039;&#039;&lt;br /&gt;
* &#039;&#039;&#039;SubImages&#039;&#039;&#039;, these are essentially textures that have been cut in specific portions to be used by Casts&lt;br /&gt;
* &#039;&#039;&#039;CastDictionary&#039;&#039;&#039;, this will be one of the most useful variables when editing XNCP files, these contain all the names, indexes, and group indexes needed to find a specific Cast in the scene.&lt;br /&gt;
* &#039;&#039;&#039;AnimationKeyFrameDataList&#039;&#039;&#039;, &#039;&#039;&#039;AnimationDictionary&#039;&#039;&#039;, &#039;&#039;&#039;AnimationFrameDataList&#039;&#039;&#039;, &#039;&#039;&#039;AnimationData2List&#039;&#039;&#039;, all of these control animations. You can read more about them here&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;And the most important one of all:&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Casts&#039;&#039;&#039;, these are the UI elements of XNCP files, these contain the necessary data to display text, move other elements, or display an image.&lt;br /&gt;
&lt;br /&gt;
== The structure of a Cast ==&lt;br /&gt;
The Cast has several variables that you can change:&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Field04&#039;&#039;&#039; controls the type of the cast, these types can be:&lt;br /&gt;
&lt;br /&gt;
 0 - No Draw (invisible)&lt;br /&gt;
 1 - Sprite&lt;br /&gt;
 2 - Font&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;IsEnabled&#039;&#039;&#039; will enable and disable a cast. 0 for disabled and 1 for enabled&lt;br /&gt;
** &#039;&#039;&#039;NOTE&#039;&#039;&#039;: If you&#039;re disabling a cast, make sure that it does not have children, or it might make the UI look weird!&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Field0C&#039;&#039;&#039;, &#039;&#039;&#039;Field14&#039;&#039;&#039;, &#039;&#039;&#039;Field1C&#039;&#039;&#039;, &#039;&#039;&#039;Field24&#039;&#039;&#039; change the positions of the corners of the cast, Top Left, Bottom Left, Top Right, Bottom Right respectively. These only really affect casts that render sprites&lt;br /&gt;
* &#039;&#039;&#039;Offset&#039;&#039;&#039; changes the position of the element relative to its parent. This is useful for moving elements around, although it&#039;s not used much.&lt;br /&gt;
* &#039;&#039;&#039;Field30Data&#039;&#039;&#039; contains most of the fun things that you can edit in a Cast, like:&lt;br /&gt;
&lt;br /&gt;
 Translation&lt;br /&gt;
 Rotation&lt;br /&gt;
 Scale&lt;br /&gt;
 Color - where the variable &amp;quot;Color&amp;quot; will change the main color of the image, and GradientTopLeft,BottomLeft,TopRight,BottomRight will change the colors of the corners of the image&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Field40Data&#039;&#039;&#039; contains data about a cast&#039;s subimages. If the cast is a nodraw or font type, this will be all set to -1 most of the time. Each of these variables is a holder for a specific index of a subimage. However, only the first one is used all the time, all of the other ones are for animations.&lt;br /&gt;
&lt;br /&gt;
== The structure of an XNCP file (Resource 1) ==&lt;br /&gt;
Before, I wrote that you needed to go into Resource 0. This is because Resource 0 has most of the cool stuff that you can edit, while Resource 1 contains data about image file locations.&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;TextureList&#039;&#039;&#039;, this is a list of all the textures used by the UI... this is pretty much it. Each texture will have a name, and it&#039;s index will be the number specified next to the &amp;quot;Textures&amp;quot; name.&lt;br /&gt;
[[File:010 Editor xncp texture list.png|center|thumb|813x813px]]&lt;br /&gt;
&lt;br /&gt;
== XNCP Animations ==&lt;br /&gt;
XNCP animations for a specific scene are listed in &#039;&#039;&#039;AnimationDictionary&#039;&#039;&#039;, which behaves the same way as the CastDictionary:&lt;br /&gt;
[[File:XNCP Animation Dictionary.png|center|thumb|658x658px]]&lt;br /&gt;
In &#039;&#039;&#039;AnimationFrameDataList&#039;&#039;&#039;, it’s possible to control the amount of keyframes that a specific animation has:&lt;br /&gt;
[[File:XNCP Animation Frame Data List.png|center|thumb|503x503px]]&lt;br /&gt;
To control the speed of these animations, we have a single field in the scene that controls the frame rate:&lt;br /&gt;
[[File:XNCP Animation Framerate.png|center|thumb|694x694px]]&lt;br /&gt;
&#039;&#039;&#039;AnimationKeyFrameDataList&#039;&#039;&#039; contains the information for all the keyframes in the animation, as well as the casts that belong in that animation.&lt;br /&gt;
[[File:XNCP Animation Key Frame Data List.png|center|thumb|628x628px]]&lt;br /&gt;
In the screenshot above, we’re seeing the data referring to Animation 0 (&#039;&#039;&#039;Intro_Anim&#039;&#039;&#039; when following the dictionary). XNCPs usually follow this naming scheme for animations:&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Intro_Anim&#039;&#039;&#039; - Animation that plays when the scene appears&lt;br /&gt;
* &#039;&#039;&#039;Usual_Anim&#039;&#039;&#039; - Normally a looping animation, is used during the scenes visible state&lt;br /&gt;
* &#039;&#039;&#039;Outro_Anim&#039;&#039;&#039; - Played before the scene disappears They can obviously store other animations, and those have their own names.&lt;br /&gt;
&lt;br /&gt;
So, in Intro_Anim, we have several &#039;&#039;&#039;CastAnimationData&#039;&#039;&#039;. These control what happens to each cast in this animation. Let’s see what happens to Cast 0 (position, which usually is the parent of all casts in a scene and controls their position)...&lt;br /&gt;
[[File:XNCP Cast Animation Data.png|center|thumb|511x511px]]&lt;br /&gt;
Seems like we have flags! It’s a bitfield, and it controls what actually animates in this cast. Here’s the meaning of each bit:&lt;br /&gt;
 0000 0000(0)   - Nothing&lt;br /&gt;
 0000 0001(1)   - Hide Flag&lt;br /&gt;
 0000 0010(2)   - X Position&lt;br /&gt;
 0000 0100(4)   - Y Position&lt;br /&gt;
 0000 1000(8)   - Rotation&lt;br /&gt;
 0001 0000(16)  - X Scale&lt;br /&gt;
 0010 0000(32)  - Y Scale&lt;br /&gt;
 0100 0000(64)  - SubImage&lt;br /&gt;
 1000 0000(128) - Colour Mask&lt;br /&gt;
So, with this info, we now know what animates in the position cast: It is its X Position. The &#039;&#039;&#039;CastAnimationDataSubData1List&#039;&#039;&#039; is what stores the actual animation data. The amount of entries in this list depends on the number of bits signaled in the &#039;&#039;&#039;Flags&#039;&#039;&#039; field. The first entry in the list is referring to the first bit signaled from right to left. So by that logic, the list only has one entry.&lt;br /&gt;
[[File:XNCP Cast Animation Data Sub Data 1 List.png|center|thumb|500x500px]]&lt;br /&gt;
And there we go. This entry is what stores the actual &#039;&#039;&#039;KeyFrames&#039;&#039;&#039;. Let’s open one up to see how it is.&lt;br /&gt;
[[File:XNCP Key Frame.png|center|thumb|410x410px]]&lt;br /&gt;
Scary right? I don’t understand much of what’s going on here, but here we go.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Frame&#039;&#039;&#039; defines which global frame this keyframe is in. Remember &#039;&#039;&#039;AnimationFrameDataList&#039;&#039;&#039;? Yeah, this animation has a total of 10 frames, and is played at 60 FPS. For each frame, you define the global frame that it refers to. So, since this cast controls the position of the entire scene, and this is the intro animation, maybe the other keyframe has the frame field set to 10? We’ll see about that shortly.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Data&#039;&#039;&#039; store the data of this keyframe. The meaning of data changes depending on the flags. Data can be:&lt;br /&gt;
&lt;br /&gt;
* A position&lt;br /&gt;
* An angle (for rotation)&lt;br /&gt;
* A size (for X and Y scale)&lt;br /&gt;
* An index (for SubImage)&lt;br /&gt;
* A colour (for ColorMask)&lt;br /&gt;
&lt;br /&gt;
According to the flags of this specific cast, these keyframes are supposed to control the X Position, which means that “Data” actually represents the X Position of the cast in this frame.&lt;br /&gt;
&lt;br /&gt;
The &#039;&#039;&#039;Offset&#039;&#039;&#039; and &#039;&#039;&#039;Offset2&#039;&#039;&#039; fields control the casts&#039; Offset position value, where &amp;quot;Offset&amp;quot; is X, while &amp;quot;Offset2&amp;quot; is Y. For example, the buttons in the title screen of Sonic Generations use these values to stay in place when they&#039;re clicked since they get scaled up and down. Let’s look at the second keyframe:&lt;br /&gt;
[[File:XNCP Key Frame 2.png|center|thumb|356x356px]]&lt;br /&gt;
As we suspected, the &#039;&#039;&#039;Frame&#039;&#039;&#039; field is now set to 10, meaning this is referring to the last frame in the animation. The value in &#039;&#039;&#039;Data&#039;&#039;&#039; has increased, so this means that &#039;&#039;&#039;this cast slides from left to right&#039;&#039;&#039; in this animation!&lt;br /&gt;
&lt;br /&gt;
Looking at the remaining &#039;&#039;&#039;CastAnimationData&#039;&#039;&#039; entries, we can see that none of them animate, since their &#039;&#039;&#039;Flags&#039;&#039;&#039; field is set to 0. So we can conclude that &#039;&#039;&#039;Intro_Anim&#039;&#039;&#039; makes the &#039;&#039;&#039;position&#039;&#039;&#039; cast slide from &#039;&#039;&#039;left to right&#039;&#039;&#039;, and since “position” controls the entire scene, every single cast from this scene slides from left to right in this animation!&lt;br /&gt;
[[File:XNCP Cast Animation Data No Anim.png|center|thumb|571x571px]]&lt;br /&gt;
&lt;br /&gt;
== Additional Notes ==&lt;br /&gt;
An animation can only be looped using code, so that can&#039;t be controlled via the XNCP. However, &#039;&#039;&#039;Field00&#039;&#039;&#039; in &#039;&#039;&#039;CastAnimationDataSubData&#039;&#039;&#039; does seem to control how fast a loop occurs, where the value &#039;&#039;&#039;1&#039;&#039;&#039; seems to loop it with a delay, while &#039;&#039;&#039;2&#039;&#039;&#039; makes it loop smoother.&lt;br /&gt;
&lt;br /&gt;
== Conclusion ==&lt;br /&gt;
Hope I explained XNCP animations well enough. Have fun!&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;PS: there’s also AnimationData2List but...&#039;&#039;&lt;br /&gt;
[[File:XNCP Animation Data 2 List.png|center|thumb|629x629px]]&lt;/div&gt;</summary>
		<author><name>PTKay</name></author>
	</entry>
</feed>