<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE language SYSTEM "language.dtd">

<!--
	Kate Clever CSS syntax highlighting definition
	http://sandbox.pocoo.org/clevercss/
	Derived from css.xml
-->

<language name="CCSS" version="1.0" kateversion="2.4" section="Markup" extensions="*.ccss" mimetype="text/ccss" author="Changaco (changaco ατ changaco δοτ net)" license="LGPL">

	<highlighting>
		<list name="properties">
			<!-- CSS2 -->
			<item> azimuth </item>
			<item> background </item>
			<item> background-attachment </item>
			<item> background-color </item>
			<item> background-image </item>
			<item> background-position </item>
			<item> background-repeat </item>
			<item> border </item>
			<item> border-bottom </item>
			<item> border-bottom-color </item>
			<item> border-bottom-style </item>
			<item> border-bottom-width </item>
			<item> border-collapse </item>
			<item> border-color </item>
			<item> border-left </item>
			<item> border-left-color </item>
			<item> border-left-style </item>
			<item> border-left-width </item>
			<item> border-right </item>
			<item> border-right-color </item>
			<item> border-right-style </item>
			<item> border-right-width </item>
			<item> border-spacing </item>
			<item> border-style </item>
			<item> border-top </item>
			<item> border-top-color </item>
			<item> border-top-style </item>
			<item> border-top-width </item>
			<item> border-width </item>
			<item> bottom </item>
			<item> caption-side </item>
			<item> clear </item>
			<item> clip </item>
			<item> color </item>
			<item> content </item>
			<item> counter-increment </item>
			<item> counter-reset </item>
			<item> cue </item>
			<item> cue-after </item>
			<item> cue-before </item>
			<item> cursor </item>
			<item> direction </item>
			<item> display </item>
			<item> elevation </item>
			<item> empty-cells </item>
			<item> float </item>
			<item> font </item>
			<item> font-family </item>
			<item> font-size </item>
			<item> font-size-adjust </item>
			<item> font-stretch </item>
			<item> font-style </item>
			<item> font-variant </item>
			<item> font-weight </item>
			<item> height </item>
			<item> left </item>
			<item> letter-spacing </item>
			<item> line-height </item>
			<item> list-style </item>
			<item> list-style-image </item>
			<item> list-style-keyword </item>
			<item> list-style-position </item>
			<item> list-style-type  </item>
			<item> margin </item>
			<item> margin-bottom </item>
			<item> margin-left </item>
			<item> margin-right </item>
			<item> margin-top </item>
			<item> marker-offset </item>
			<item> max-height </item>
			<item> max-width </item>
			<item> min-height </item>
			<item> min-width </item>
			<item> orphans </item>
			<item> outline </item>
			<item> outline-color </item>
			<item> outline-style </item>
			<item> outline-width </item>
			<item> overflow </item>
			<item> padding </item>
			<item> padding-bottom </item>
			<item> padding-left </item>
			<item> padding-right </item>
			<item> padding-top </item>
			<item> page </item>
			<item> page-break-after </item>
			<item> page-break-before </item>
			<item> page-break-inside </item>
			<item> pause </item>
			<item> pause-after </item>
			<item> pause-before </item>
			<item> pitch </item>
			<item> pitch-range </item>
			<item> play-during </item>
			<item> position </item>
			<item> quotes </item>
			<item> richness </item>
			<item> right </item>
			<item> size </item>
			<item> speak </item>
			<item> speak-header </item>
			<item> speak-numeral </item>
			<item> speak-punctuation </item>
			<item> speech-rate </item>
			<item> stress </item>
			<item> table-layout </item>
			<item> text-align </item>
			<item> text-decoration </item>
			<item> text-decoration-color </item>
			<item> text-indent </item>
			<item> text-shadow </item>
			<item> text-transform </item>
			<item> top </item>
			<item> unicode-bidi </item>
			<item> vertical-align </item>
			<item> visibility </item>
			<item> voice-family </item>
			<item> volume </item>
			<item> white-space </item>
			<item> widows </item>
			<item> width </item>
			<item> word-spacing </item>
			<item> z-index </item>

			<!-- CSS3 -->
			<item> border-bottom-image </item>
			<item> border-bottom-left-image </item>
			<item> border-bottom-left-radius </item>
			<item> border-bottom-right-image </item>
			<item> border-bottom-right-radius </item>
			<item> border-corner-image </item>
			<item> border-image </item>
			<item> border-left-image </item>
			<item> border-radius </item>
			<item> border-right-image </item>
			<item> border-top-image </item>
			<item> border-top-left-image </item>
			<item> border-top-left-radius </item>
			<item> border-top-right-image </item>
			<item> border-top-right-radius </item>
			<item> box-align </item>
			<item> box-direction </item>
			<item> box-flex </item>
			<item> box-flex-group </item>
			<item> box-lines </item>
			<item> box-ordinal-group </item>
			<item> box-orient </item>
			<item> box-pack </item>
			<item> box-shadow </item>
			<item> box-sizing </item>
			<item> opacity </item>
			<item> outline-offset </item>
			<item> overflow-x </item>
			<item> overflow-y </item>
			<item> text-overflow </item>
			<item> text-shadow </item>

			<!-- font properties in @font-face -->
			<item> font-family </item>
			<item> font-size </item>
			<item> font-stretch </item>
			<item> font-style </item>
			<item> font-variant </item>
			<item> font-weight </item>
			<item> unicode-range </item>
			<item> units-per-em </item>
			<item> src </item>
			<item> panose-1 </item>
			<item> stemv </item>
			<item> stemh </item>
			<item> slope </item>
			<item> cap-height </item>
			<item> x-height </item>
			<item> ascent </item>
			<item> descent </item>
			<item> widths </item>
			<item> bbox </item>
			<item> definition-src </item>
			<item> baseline </item>
			<item> centerline </item>
			<item> mathline </item>
			<item> topline </item>
		</list>

		<list name="types">
			<item> inherit </item>
			<item> none </item>
			<item> hidden </item>
			<item> dotted </item>
			<item> dashed </item>
			<item> solid </item>
			<item> double </item>
			<item> groove </item>
			<item> ridge </item>
			<item> inset </item>
			<item> outset </item>
			<item> xx-small </item>
			<item> x-small </item>
			<item> small </item>
			<item> medium </item>
			<item> large </item>
			<item> x-large </item>
			<item> xx-large </item>
			<item> smaller </item>
			<item> larger </item>
			<item> italic </item>
			<item> oblique </item>
			<item> small-caps </item>
			<item> normal </item>
			<item> bold </item>
			<item> bolder </item>
			<item> lighter </item>
			<item> light </item>
			<item> 100 </item>
			<item> 200 </item>
			<item> 300 </item>
			<item> 400 </item>
			<item> 500 </item>
			<item> 600 </item>
			<item> 700 </item>
			<item> 800 </item>
			<item> 900 </item>
			<item> transparent </item>
			<item> repeat </item>
			<item> repeat-x </item>
			<item> repeat-y </item>
			<item> no-repeat </item>
			<item> baseline </item>
			<item> sub </item>
			<item> super </item>
			<item> top </item>
			<item> text-top </item>
			<item> middle </item>
			<item> bottom </item>
			<item> text-bottom </item>
			<item> left </item>
			<item> right </item>
			<item> center </item>
			<item> justify </item>
			<item> konq-center </item>
			<item> disc </item>
			<item> circle </item>
			<item> square </item>
			<item> box </item>
			<item> decimal </item>
			<item> decimal-leading-zero </item>
			<item> lower-roman </item>
			<item> upper-roman </item>
			<item> lower-greek </item>
			<item> lower-alpha </item>
			<item> lower-latin </item>
			<item> upper-alpha </item>
			<item> upper-latin </item>
			<item> hebrew </item>
			<item> armenian </item>
			<item> georgian </item>
			<item> cjk-ideographic </item>
			<item> hiragana </item>
			<item> katakana </item>
			<item> hiragana-iroha </item>
			<item> katakana-iroha </item>
			<item> inline </item>
			<item> inline-block </item>
			<item> block </item>
			<item> list-item </item>
			<item> run-in </item>
			<item> compact </item>
			<item> marker </item>
			<item> table </item>
			<item> inline-table </item>
			<item> table-row-group </item>
			<item> table-header-group </item>
			<item> table-footer-group </item>
			<item> table-row </item>
			<item> table-column-group </item>
			<item> table-column </item>
			<item> table-cell </item>
			<item> table-caption </item>
			<item> auto </item>
			<item> crosshair </item>
			<item> default </item>
			<item> pointer </item>
			<item> move </item>
			<item> e-resize </item>
			<item> ne-resize </item>
			<item> nw-resize </item>
			<item> n-resize </item>
			<item> se-resize </item>
			<item> sw-resize </item>
			<item> s-resize </item>
			<item> w-resize </item>
			<item> text </item>
			<item> wait </item>
			<item> help </item>
			<item> above </item>
			<item> absolute </item>
			<item> always </item>
			<item> avoid </item>
			<item> below </item>
			<item> bidi-override </item>
			<item> blink </item>
			<item> both </item>
			<item> capitalize </item>
			<item> caption </item>
			<item> clip </item>
			<item> close-quote </item>
			<item> collapse </item>
			<item> condensed </item>
			<item> crop </item>
			<item> cross </item>
			<item> ellipsis </item>
			<item> ellipsis-word </item>
			<item> embed </item>
			<item> expanded </item>
			<item> extra-condensed </item>
			<item> extra-expanded </item>
			<item> fixed </item>
			<item> hand </item>
			<item> hide </item>
			<item> higher </item>
			<item> icon </item>
			<item> inside </item>
			<item> invert </item>
			<item> landscape </item>
			<item> level </item>
			<item> line-through </item>
			<item> loud </item>
			<item> lower </item>
			<item> lowercase </item>
			<item> ltr </item>
			<item> menu </item>
			<item> message-box </item>
			<item> mix </item>
			<item> narrower </item>
			<item> no-close-quote </item>
			<item> no-open-quote </item>
			<item> nowrap </item>
			<item> open-quote </item>
			<item> outside </item>
			<item> overline </item>
			<item> portrait </item>
			<item> pre </item>
			<item> pre-line </item>
			<item> pre-wrap </item>
			<item> relative </item>
			<item> rtl </item>
			<item> scroll </item>
			<item> semi-condensed </item>
			<item> semi-expanded </item>
			<item> separate </item>
			<item> show </item>
			<item> small-caption </item>
			<item> static </item>
			<item> static-position </item>
			<item> status-bar </item>
			<item> thick </item>
			<item> thin </item>
			<item> ultra-condensed </item>
			<item> ultra-expanded </item>
			<item> underline </item>
			<item> uppercase </item>
			<item> visible </item>
			<item> wider </item>
			<item> break </item>
			<item> serif </item>
			<item> sans-serif </item>
			<item> cursive </item>
			<item> fantasy </item>
			<item> monospace </item>
			<item> border-box </item>
			<item> content-box </item>
			<item> single </item>
			<item> multiple </item>
			<item> horizontal </item>
			<item> vertical </item>
			<item> reverse </item>
			<item> start </item>
			<item> end </item>
			<item> stretch </item>
			<item> inline-axis </item>
			<item> block-axis </item>

		</list>


		<list name="colors">
			<item> aqua </item>
			<item> black </item>
			<item> blue </item>
			<item> cyan </item>
			<item> fuchsia </item>
			<item> gray </item>
			<item> green </item>
			<item> lime </item>
			<item> maroon </item>
			<item> navy </item>
			<item> olive </item>
			<item> purple </item>
			<item> red </item>
			<item> silver </item>
			<item> teal </item>
			<item> white </item>
			<item> yellow </item>
			<item> ActiveBorder  </item>
			<item> ActiveCaption  </item>
			<item> AppWorkspace  </item>
			<item> Background  </item>
			<item> ButtonFace  </item>
			<item> ButtonHighlight  </item>
			<item> ButtonShadow  </item>
			<item> ButtonText  </item>
			<item> CaptionText  </item>
			<item> GrayText  </item>
			<item> Highlight  </item>
			<item> HighlightText  </item>
			<item> InactiveBorder  </item>
			<item> InactiveCaption  </item>
			<item> InactiveCaptionText  </item>
			<item> InfoBackground  </item>
			<item> InfoText  </item>
			<item> Menu  </item>
			<item> MenuText  </item>
			<item> Scrollbar  </item>
			<item> ThreeDDarkShadow  </item>
			<item> ThreeDFace  </item>
			<item> ThreeDHighlight  </item>
			<item> ThreeDLightShadow  </item>
			<item> ThreeDShadow  </item>
			<item> Window  </item>
			<item> WindowFrame  </item>
			<item> WindowText  </item>
		</list>

		<list name="paren">
			<item> url </item>
			<item> attr </item>
			<item> rect </item>
			<item> rgb </item>
			<item> rgba </item>
			<item> hsl </item>
			<item> hsla </item>
			<item> counter </item>
			<item> counters </item>

			<!-- in @font-face -->
			<item> local </item>
			<item> format </item>

			<!-- Trident (a.k.a., MSHTML) rendering engine functional notation extensions -->
			<item> expression </item>

		</list>

		<list name="mediatypes">
			<item> all </item>
			<item> aural </item>
			<item> braille </item>
			<item> embossed </item>
			<item> handheld </item>
			<item> print </item>
			<item> projection </item>
			<item> screen </item>
			<item> tty </item>
			<item> tv </item>
		</list>

		<list name="pseudoclasses">
			<item> hover </item>
			<item> link </item>
			<item> visited </item>
			<item> active </item>
			<item> focus </item>
			<item> first-child </item>
			<item> last-child </item>
			<item> only-child </item>
			<item> first-of-type </item>
			<item> last-of-type </item>
			<item> only-of-type </item>
			<item> selection </item>
			<item> root </item>
			<item> empty </item>
			<item> target </item>
			<item> enabled </item>
			<item> disabled </item>
			<item> checked </item>
			<item> indeterminate </item>
			<item> nth-child </item>
			<item> nth-last-child </item>
			<item> nth-of-type </item>
			<item> nth-last-of-type </item>
			<item> not </item>
		</list>

		<list name="pseudoelements">
			<item> first-letter </item>
			<item> first-line </item>
			<item> before </item>
			<item> after </item>
		</list>

		<contexts>
			<context attribute="Normal Text" lineEndContext="#stay" name="Base">
				<IncludeRules context="Comment" />
				<RegExpr attribute="Constant" context="Rule2" String="^[\w\-]+[ \t]*=[ \t]*" />
				<RegExpr attribute="Normal Text" context="#stay" String="^\s*$" />
				<RegExpr attribute="Normal Text" context="Selectors" String="^[ \t]*.+:[ \t]*(//.*)?$" lookAhead="true" />
				<RegExpr attribute="Normal Text" context="RuleSet" String="^[ \t]*[^:]+:[ \t]*.+$" lookAhead="true" />
			</context>

			<context attribute="Comment" lineEndContext="#pop" name="Comment">
				<RegExpr attribute="Comment" context="#stay" String="\s*//.*" />
			</context>

			<context attribute="Normal Text" lineEndContext="#pop" name="Selectors">
				<DetectChar attribute="Selector Attr" context="SelAttr" char="[" />
				<DetectChar attribute="Selector Parent" context="#stay" char="&amp;" />
				<RegExpr attribute="Selector Id" context="#stay" String="#([\w\-]|[\x80-\xFF]|\\[0-9A-Fa-f]{1,6})*" />
				<RegExpr attribute="Selector Class" context="#stay" String="\.([\w\-]|[\x80-\xFF]|\\[0-9A-Fa-f]{1,6})*" />
				<RegExpr attribute="Selector Pseudo-class" context="#stay" String=":lang\([\w_-]+\)" />
				<RegExpr attribute="Normal Text" context="SelPseudo" String=":[A-Za-z_-:]" lookAhead="true" />
				<DetectSpaces/>
				<AnyChar attribute="Normal Text" context="#stay" String=",&lt;&gt;+*" />
				<IncludeRules context="Comment" />
			</context>

			<context attribute="Selector Attr" lineEndContext="#stay" name="SelAttr">
				<DetectChar attribute="Selector Attr" context="#pop" char="]" />
				<IncludeRules context="Strings" />
			</context>

			<context attribute="Normal Text" lineEndContext="#pop" name="SelPseudo" fallthrough="true" fallthroughContext="#pop">
				<DetectChar attribute="Selector Pseudo-class" context="#stay" char=":" />
				<keyword attribute="Selector Pseudo-class" context="#pop" String="pseudoclasses" />
				<DetectChar attribute="Selector Pseudo-element" context="#stay" char=":" />
				<keyword attribute="Selector Pseudo-element" context="#pop" String="pseudoelements" />
			</context>

			<context attribute="Normal Text" lineEndContext="#pop" name="RuleSet">
				<DetectSpaces/>
				<keyword attribute="Property" context="Rule" String="properties" />
				<RegExpr attribute="Unknown Property" context="Rule" String="[A-Za-z_-]+(?=[ \t]*:)" />
			</context>

			<context attribute="Normal Text" lineEndContext="#pop" name="Rule">
				<DetectSpaces/>
				<DetectChar attribute="Property" context="Rule2" char=":" />
			</context>

			<context attribute="Normal Text" lineEndContext="#pop" name="Rule2">
				<DetectSpaces/>
				<keyword attribute="Value" context="#stay" String="types" />
				<keyword attribute="Value" context="#stay" String="colors" />
				<RegExpr attribute="Value" context="#stay" String="#([0-9A-Fa-f]{3}){1,4}\b" />
				<keyword attribute="Value" context="PropParen" String="paren" />
				<RegExpr attribute="Important" context="#stay" String="!important\b" />
				<IncludeRules context="Values" />
				<IncludeRules context="Strings" />
			</context>

			<context attribute="Normal Text" lineEndContext="#pop" name="Values">
				<RegExpr attribute="Value" context="#stay" String="[-+]?[0-9.]+(em|ex|px|in|cm|mm|pt|pc|deg|rad|grad|ms|s|Hz|kHz)\b" />
				<RegExpr attribute="Value" context="#stay" String="[-+]?[0-9.]+[%]?" />
				<RegExpr attribute="Normal Text" context="#stay" String="[\w\-]+" />
				<RegExpr attribute="Constant" context="#stay" String="\$[\w\-]+" />
				<IncludeRules context="Comment" />
			</context>

			<context attribute="Normal Text" lineEndContext="#stay" name="Strings">
				<DetectChar attribute="String" context="StringDQ" char="&quot;" />
				<DetectChar attribute="String" context="StringSQ" char="'" />
			</context>

			<context attribute="Normal Text" lineEndContext="#stay" name="PropParen">
				<DetectChar attribute="Value" context="PropParen2" char="(" />
				<RegExpr attribute="Error" context="#stay" String="\S" />
			</context>

			<context attribute="Normal Text" lineEndContext="#stay" name="PropParen2">
				<DetectChar attribute="Value" context="#pop#pop" char=")" />
				<IncludeRules context="Values" />
				<IncludeRules context="Strings" />
			</context>

			<context attribute="String" lineEndContext="#stay" name="StringDQ">
				<DetectChar attribute="String" context="#pop" char="&quot;" />
				<IncludeRules context="InsideString" />
			</context>

			<context attribute="String" lineEndContext="#stay" name="StringSQ">
				<DetectChar attribute="String" context="#pop" char="'" />
				<IncludeRules context="InsideString" />
			</context>

			<context attribute="String" lineEndContext="#stay" name="InsideString">
				<RegExpr attribute="String" context="#stay" String="\\[&quot;']" />
				<DetectIdentifier/>
			</context>

		</contexts>
		<itemDatas>
			<itemData name="Normal Text" defStyleNum="dsNormal" spellChecking="false"/>
			<itemData name="Constant"  defStyleNum="dsOthers" spellChecking="false"/>
			<itemData name="Property"  defStyleNum="dsKeyword" spellChecking="false"/>
			<itemData name="Unknown Property"  defStyleNum="dsKeyword" italic="1" spellChecking="false"/>
			<itemData name="String"  defStyleNum="dsString"/>
			<itemData name="Value"  defStyleNum="dsDataType" spellChecking="false"/>
			<itemData name="Important" defStyleNum="dsKeyword" spellChecking="false"/>
			<itemData name="Selector Attr" defStyleNum="dsChar" spellChecking="false"/>
			<itemData name="Selector Id"  defStyleNum="dsFloat" bold="1" spellChecking="false"/>
			<itemData name="Selector Class"  defStyleNum="dsFloat" spellChecking="false"/>
			<itemData name="Selector Pseudo-class"  defStyleNum="dsDecVal" spellChecking="false"/>
			<itemData name="Selector Pseudo-element"  defStyleNum="dsDecVal" spellChecking="false"/>
			<itemData name="Selector Parent"  defStyleNum="dsNormal" spellChecking="false"/>
			<itemData name="Comment" defStyleNum="dsComment" />
			<itemData name="Alert" defStyleNum="dsAlert" spellChecking="false"/>
			<itemData name="Error" defStyleNum="dsError" spellChecking="false"/>
		</itemDatas>
	</highlighting>
	<general>
		<keywords casesensitive="0" weakDeliminator="-%"/>
		<folding indentationsensitive="1" />
		<comments>
			<comment name="singleLine" start="//" />
		</comments>
		<emptyLines>
			<emptyLine regexpr="\s+" casesensitive="false"/>
			<emptyLine regexpr="\s*//.*$" casesensitive="false"/>
		</emptyLines>
	</general>
</language>

