// // LESS - Leaner CSS v1.1.3 // http://lesscss.org // // Copyright (c) 2009-2011, Alexis Sellier // Licensed under the Apache 2.0 License. // // // LESS - Leaner CSS v1.1.3 // http://lesscss.org // // Copyright (c) 2009-2011, Alexis Sellier // Licensed under the Apache 2.0 License. // (function(a, b) { function v(a, b) { var c = "less-error-message:" + p(b),e = [""].join("\n"),f = document.createElement("div"),g,h; f.id = c,f.className = "less-error-message",h = "

" + (a.message || "There is an error in your .less file") + "

" + '

' + b + " ",a.extract && (h += "on line " + a.line + ", column " + (a.column + 1) + ":

" + e.replace(/\[(-?\d)\]/g, function(b, c) { return parseInt(a.line) + parseInt(c) || "" }).replace(/\{(\d)\}/g, function(b, c) { return a.extract[parseInt(c)] || "" }).replace(/\{current\}/, a.extract[1].slice(0, a.column) + '' + a.extract[1].slice(a.column) + "")),f.innerHTML = h,q([".less-error-message ul, .less-error-message li {","list-style-type: none;","margin-right: 15px;","padding: 4px 0;","margin: 0;","}",".less-error-message label {","font-size: 12px;","margin-right: 15px;","padding: 4px 0;","color: #cc7777;","}",".less-error-message pre {","color: #ee4444;","padding: 4px 0;","margin: 0;","display: inline-block;","}",".less-error-message pre.ctx {","color: #dd4444;","}",".less-error-message h3 {","font-size: 20px;","font-weight: bold;","padding: 15px 0 5px 0;","margin: 0;","}",".less-error-message a {","color: #10a","}",".less-error-message .error {","color: red;","font-weight: bold;","padding-bottom: 2px;","border-bottom: 1px dashed red;","}"].join("\n"), {title:"error-message"}),f.style.cssText = ["font-family: Arial, sans-serif","border: 1px solid #e00","background-color: #eee","border-radius: 5px","-webkit-border-radius: 5px","-moz-border-radius: 5px","color: #e00","padding: 15px","margin-bottom: 15px"].join(";"),d.env == "development" && (g = setInterval(function() { document.body && (document.getElementById(c) ? document.body.replaceChild(f, document.getElementById(c)) : document.body.insertBefore(f, document.body.firstChild),clearInterval(g)) }, 10)) } function u(a) { d.env == "development" && typeof console != "undefined" && console.log("less: " + a) } function t(a) { return a && a.parentNode.removeChild(a) } function s() { if (a.XMLHttpRequest)return new XMLHttpRequest; try { return new ActiveXObject("MSXML2.XMLHTTP.3.0") } catch(b) { u("browser doesn't support AJAX."); return null } } function r(a, b, c, e) { function i(b, c, d) { b.status >= 200 && b.status < 300 ? c(b.responseText, b.getResponseHeader("Last-Modified")) : typeof d == "function" && d(b.status, a) } var f = s(),h = g ? !1 : d.async; typeof f.overrideMimeType == "function" && f.overrideMimeType("text/css"),f.open("GET", a, h),f.setRequestHeader("Accept", b || "text/x-less, text/css; q=0.9, */*; q=0.5"),f.send(null),g ? f.status === 0 ? c(f.responseText) : e(f.status, a) : h ? f.onreadystatechange = function() { f.readyState == 4 && i(f, c, e) } : i(f, c, e) } function q(a, b, c) { var d,e = b.href ? b.href.replace(/\?.*$/, "") : "",f = "less:" + (b.title || p(e)); (d = document.getElementById(f)) === null && (d = document.createElement("style"),d.type = "text/css",d.media = b.media || "screen",d.id = f,document.getElementsByTagName("head")[0].appendChild(d)); if (d.styleSheet)try { d.styleSheet.cssText = a } catch(g) { throw new Error("Couldn't reassign styleSheet.cssText.") } else(function(a) { d.childNodes.length > 0 ? d.firstChild.nodeValue !== a.nodeValue && d.replaceChild(a, d.firstChild) : d.appendChild(a) })(document.createTextNode(a)); c && h && (u("saving " + e + " to cache."),h.setItem(e, a),h.setItem(e + ":timestamp", c)) } function p(a) { return a.replace(/^[a-z]+:\/\/?[^\/]+/, "").replace(/^\//, "").replace(/\?.*$/, "").replace(/\.[^\.\/]+$/, "").replace(/[^\.\w-]+/g, "-").replace(/\./g, ":") } function o(b, c, e, f) { var g = a.location.href.replace(/[#?].*$/, ""),i = b.href.replace(/\?.*$/, ""),j = h && h.getItem(i),k = h && h.getItem(i + ":timestamp"),l = {css:j,timestamp:k}; /^(https?|file):/.test(i) || (i.charAt(0) == "/" ? i = a.location.protocol + "//" + a.location.host + i : i = g.slice(0, g.lastIndexOf("/") + 1) + i),r(b.href, b.type, function(a, g) { if (!e && l && g && (new Date(g)).valueOf() === (new Date(l.timestamp)).valueOf())q(l.css, b),c(null, b, {local:!0,remaining:f}); else try { (new d.Parser({optimization:d.optimization,paths:[i.replace(/[\w\.-]+$/, "")],mime:b.type})).parse(a, function(a, d) { if (a)return v(a, i); try { c(d, b, {local:!1,lastModified:g,remaining:f}),t(document.getElementById("less-error-message:" + p(i))) } catch(a) { v(a, i) } }) } catch(h) { v(h, i) } }, function(a, b) { throw new Error("Couldn't load " + b + " (" + a + ")") }) } function n(a, b) { for (var c = 0; c < d.sheets.length; c++)o(d.sheets[c], a, b, d.sheets.length - (c + 1)) } function m() { var a = document.getElementsByTagName("style"); for (var b = 0; b < a.length; b++)a[b].type.match(k) && (new d.Parser).parse(a[b].innerHTML || "", function(c, d) { a[b].type = "text/css",a[b].innerHTML = d.toCSS() }) } function c(b) { return a.less[b.split("/")[1]] } Array.isArray || (Array.isArray = function(a) { return Object.prototype.toString.call(a) === "[object Array]" || a instanceof Array }),Array.prototype.forEach || (Array.prototype.forEach = function(a, b) { var c = this.length >>> 0; for (var d = 0; d < c; d++)d in this && a.call(b, this[d], d, this) }),Array.prototype.map || (Array.prototype.map = function(a) { var b = this.length >>> 0,c = Array(b),d = arguments[1]; for (var e = 0; e < b; e++)e in this && (c[e] = a.call(d, this[e], e, this)); return c }),Array.prototype.filter || (Array.prototype.filter = function(a) { var b = [],c = arguments[1]; for (var d = 0; d < this.length; d++)a.call(c, this[d]) && b.push(this[d]); return b }),Array.prototype.reduce || (Array.prototype.reduce = function(a) { var b = this.length >>> 0,c = 0; if (b === 0 && arguments.length === 1)throw new TypeError; if (arguments.length >= 2)var d = arguments[1]; else for (; ;) { if (c in this) { d = this[c++]; break } if (++c >= b)throw new TypeError } for (; c < b; c++)c in this && (d = a.call(null, d, this[c], c, this)); return d }),Array.prototype.indexOf || (Array.prototype.indexOf = function(a) { var b = this.length,c = arguments[1] || 0; if (!b)return-1; if (c >= b)return-1; c < 0 && (c += b); for (; c < b; c++) { if (!Object.prototype.hasOwnProperty.call(this, c))continue; if (a === this[c])return c } return-1 }),Object.keys || (Object.keys = function(a) { var b = []; for (var c in a)Object.prototype.hasOwnProperty.call(a, c) && b.push(c); return b }),String.prototype.trim || (String.prototype.trim = function() { return String(this).replace(/^\s\s*/, "").replace(/\s\s*$/, "") }); var d,e; typeof a == "undefined" ? (d = exports,e = c("less/tree")) : (typeof a.less == "undefined" && (a.less = {}),d = a.less,e = a.less.tree = {}),d.Parser = function(a) { function t(a) { return typeof a == "string" ? b.charAt(c) === a : a.test(j[f]) ? !0 : !1 } function s(a) { var d,e,g,h,i,m,n,o; if (a instanceof Function)return a.call(l.parsers); if (typeof a == "string")d = b.charAt(c) === a ? a : null,g = 1,r(); else { r(); if (d = a.exec(j[f]))g = d[0].length; else return null } if (d) { o = c += g,m = c + j[f].length - g; while (c < m) { h = b.charCodeAt(c); if (h !== 32 && h !== 10 && h !== 9)break; c++ } j[f] = j[f].slice(g + (c - o)),k = c,j[f].length === 0 && f < j.length - 1 && f++; return typeof d == "string" ? d : d.length === 1 ? d[0] : d } } function r() { c > k && (j[f] = j[f].slice(c - k),k = c) } function q() { j[f] = g,c = h,k = c } function p() { g = j[f],h = c,k = c } var b,c,f,g,h,i,j,k,l,m = this,n = function() { },o = this.imports = {paths:a && a.paths || [],queue:[],files:{},mime:a && a.mime,push:function(b, c) { var e = this; this.queue.push(b),d.Parser.importer(b, this.paths, function(a) { e.queue.splice(e.queue.indexOf(b), 1),e.files[b] = a,c(a),e.queue.length === 0 && n() }, a) }}; this.env = a = a || {},this.optimization = "optimization"in this.env ? this.env.optimization : 1,this.env.filename = this.env.filename || null; return l = {imports:o,parse:function(d, g) { var h,l,m,o,p,q,r = [],t,u = null; c = f = k = i = 0,j = [],b = d.replace(/\r\n/g, "\n"),j = function(c) { var d = 0,e = /[^"'`\{\}\/\(\)]+/g,f = /\/\*(?:[^*]|\*+[^\/*])*\*+\/|\/\/.*/g,g = 0,h,i = c[0],j,k; for (var l = 0,m,n; l < b.length; l++) { e.lastIndex = l,(h = e.exec(b)) && h.index === l && (l += h[0].length,i.push(h[0])),m = b.charAt(l),f.lastIndex = l,!k && !j && m === "/" && (n = b.charAt(l + 1),(n === "/" || n === "*") && (h = f.exec(b)) && h.index === l && (l += h[0].length,i.push(h[0]),m = b.charAt(l))); if (m === "{" && !k && !j)g++,i.push(m); else if (m === "}" && !k && !j)g--,i.push(m),c[++d] = i = []; else if (m === "(" && !k && !j)i.push(m),j = !0; else if (m === ")" && !k && j)i.push(m),j = !1; else { if (m === '"' || m === "'" || m === "`")k ? k = k === m ? !1 : k : k = m; i.push(m) } } if (g > 0)throw{type:"Syntax",message:"Missing closing `}`",filename:a.filename}; return c.map(function(a) { return a.join("") }) }([ [] ]),h = new e.Ruleset([], s(this.parsers.primary)),h.root = !0,h.toCSS = function(c) { var d,f,g; return function(g, h) { function n(a) { return a ? (b.slice(0, a).match(/\n/g) || "").length : null } var i = []; g = g || {},typeof h == "object" && !Array.isArray(h) && (h = Object.keys(h).map(function(a) { var b = h[a]; b instanceof e.Value || (b instanceof e.Expression || (b = new e.Expression([b])),b = new e.Value([b])); return new e.Rule("@" + a, b, !1, 0) }),i = [new e.Ruleset(null, h)]); try { var j = c.call(this, {frames:i}).toCSS([], {compress:g.compress || !1}) } catch(k) { f = b.split("\n"),d = n(k.index); for (var l = k.index,m = -1; l >= 0 && b.charAt(l) !== "\n"; l--)m++; throw{type:k.type,message:k.message,filename:a.filename,index:k.index,line:typeof d == "number" ? d + 1 : null,callLine:k.call && n(k.call) + 1,callExtract:f[n(k.call)],stack:k.stack,column:m,extract:[f[d - 1],f[d],f[d + 1]]} } return g.compress ? j.replace(/(\s)+/g, "$1") : j } }(h.eval); if (c < b.length - 1) { c = i,q = b.split("\n"),p = (b.slice(0, c).match(/\n/g) || "").length + 1; for (var v = c,w = -1; v >= 0 && b.charAt(v) !== "\n"; v--)w++; u = {name:"ParseError",message:"Syntax Error on line " + p,index:c,filename:a.filename,line:p,column:w,extract:[q[p - 2],q[p - 1],q[p]]} } this.imports.queue.length > 0 ? n = function() { g(u, h) } : g(u, h) },parsers:{primary:function() { var a,b = []; while ((a = s(this.mixin.definition) || s(this.rule) || s(this.ruleset) || s(this.mixin.call) || s(this.comment) || s(this.directive)) || s(/^[\s\n]+/))a && b.push(a); return b },comment:function() { var a; if (b.charAt(c) === "/") { if (b.charAt(c + 1) === "/")return new e.Comment(s(/^\/\/.*/), !0); if (a = s(/^\/\*(?:[^*]|\*+[^\/*])*\*+\/\n?/))return new e.Comment(a) } },entities:{quoted:function() { var a,d = c,f; b.charAt(d) === "~" && (d++,f = !0); if (b.charAt(d) === '"' || b.charAt(d) === "'") { f && s("~"); if (a = s(/^"((?:[^"\\\r\n]|\\.)*)"|'((?:[^'\\\r\n]|\\.)*)'/))return new e.Quoted(a[0], a[1] || a[2], f) } },keyword:function() { var a; if (a = s(/^[A-Za-z-]+/))return new e.Keyword(a) },call:function() { var a,b,d = c; if (!!(a = /^([\w-]+|%)\(/.exec(j[f]))) { a = a[1].toLowerCase(); if (a === "url")return null; c += a.length; if (a === "alpha")return s(this.alpha); s("("),b = s(this.entities.arguments); if (!s(")"))return; if (a)return new e.Call(a, b, d) } },arguments:function() { var a = [],b; while (b = s(this.expression)) { a.push(b); if (!s(","))break } return a },literal:function() { return s(this.entities.dimension) || s(this.entities.color) || s(this.entities.quoted) },url:function() { var a; if (b.charAt(c) === "u" && !!s(/^url\(/)) { a = s(this.entities.quoted) || s(this.entities.variable) || s(this.entities.dataURI) || s(/^[-\w%@$\/.&=:;#+?~]+/) || ""; if (!s(")"))throw new Error("missing closing ) for url()"); return new e.URL(a.value || a.data || a instanceof e.Variable ? a : new e.Anonymous(a), o.paths) } },dataURI:function() { var a; if (s(/^data:/)) { a = {},a.mime = s(/^[^\/]+\/[^,;)]+/) || "",a.charset = s(/^;\s*charset=[^,;)]+/) || "",a.base64 = s(/^;\s*base64/) || "",a.data = s(/^,\s*[^)]+/); if (a.data)return a } },variable:function() { var a,d = c; if (b.charAt(c) === "@" && (a = s(/^@@?[\w-]+/)))return new e.Variable(a, d) },color:function() { var a; if (b.charAt(c) === "#" && (a = s(/^#([a-fA-F0-9]{6}|[a-fA-F0-9]{3})/)))return new e.Color(a[1]) },dimension:function() { var a,d = b.charCodeAt(c); if (!(d > 57 || d < 45 || d === 47))if (a = s(/^(-?\d*\.?\d+)(px|%|em|pc|ex|in|deg|s|ms|pt|cm|mm|rad|grad|turn)?/))return new e.Dimension(a[1], a[2]) },javascript:function() { var a,d = c,f; b.charAt(d) === "~" && (d++,f = !0); if (b.charAt(d) === "`") { f && s("~"); if (a = s(/^`([^`]*)`/))return new e.JavaScript(a[1], c, f) } }},variable:function() { var a; if (b.charAt(c) === "@" && (a = s(/^(@[\w-]+)\s*:/)))return a[1] },shorthand:function() { var a,b; if (!!t(/^[@\w.%-]+\/[@\w.-]+/) && (a = s(this.entity)) && s("/") && (b = s(this.entity)))return new e.Shorthand(a, b) },mixin:{call:function() { var a = [],d,f,g,h = c,i = b.charAt(c); if (i === "." || i === "#") { while (d = s(/^[#.](?:[\w-]|\\(?:[a-fA-F0-9]{1,6} ?|[^a-fA-F0-9]))+/))a.push(new e.Element(f, d)),f = s(">"); s("(") && (g = s(this.entities.arguments)) && s(")"); if (a.length > 0 && (s(";") || t("}")))return new e.mixin.Call(a, g, h) } },definition:function() { var a,d = [],f,g,h,i; if (!(b.charAt(c) !== "." && b.charAt(c) !== "#" || t(/^[^{]*(;|})/)))if (f = s(/^([#.](?:[\w-]|\\(?:[a-fA-F0-9]{1,6} ?|[^a-fA-F0-9]))+)\s*\(/)) { a = f[1]; while (h = s(this.entities.variable) || s(this.entities.literal) || s(this.entities.keyword)) { if (h instanceof e.Variable)if (s(":"))if (i = s(this.expression))d.push({name:h.name,value:i}); else throw new Error("Expected value"); else d.push({name:h.name}); else d.push({value:h}); if (!s(","))break } if (!s(")"))throw new Error("Expected )"); g = s(this.block); if (g)return new e.mixin.Definition(a, d, g) } }},entity:function() { return s(this.entities.literal) || s(this.entities.variable) || s(this.entities.url) || s(this.entities.call) || s(this.entities.keyword) || s(this.entities.javascript) || s(this.comment) },end:function() { return s(";") || t("}") },alpha:function() { var a; if (!!s(/^\(opacity=/i))if (a = s(/^\d+/) || s(this.entities.variable)) { if (!s(")"))throw new Error("missing closing ) for alpha()"); return new e.Alpha(a) } },element:function() { var a,b,c; c = s(this.combinator),a = s(/^(?:[.#]?|:*)(?:[\w-]|\\(?:[a-fA-F0-9]{1,6} ?|[^a-fA-F0-9]))+/) || s("*") || s(this.attribute) || s(/^\([^)@]+\)/); if (a)return new e.Element(c, a) },combinator:function() { var a,d = b.charAt(c); if (d === ">" || d === "&" || d === "+" || d === "~") { c++; while (b.charAt(c) === " ")c++; return new e.Combinator(d) } if (d === ":" && b.charAt(c + 1) === ":") { c += 2; while (b.charAt(c) === " ")c++; return new e.Combinator("::") } return b.charAt(c - 1) === " " ? new e.Combinator(" ") : new e.Combinator(null) },selector:function() { var a,d,f = [],g,h; while (d = s(this.element)) { g = b.charAt(c),f.push(d); if (g === "{" || g === "}" || g === ";" || g === ",")break } if (f.length > 0)return new e.Selector(f) },tag:function() { return s(/^[a-zA-Z][a-zA-Z-]*[0-9]?/) || s("*") },attribute:function() { var a = "",b,c,d; if (!!s("[")) { if (b = s(/^[a-zA-Z-]+/) || s(this.entities.quoted))(d = s(/^[|~*$^]?=/)) && (c = s(this.entities.quoted) || s(/^[\w-]+/)) ? a = [b,d,c.toCSS ? c.toCSS() : c].join("") : a = b; if (!s("]"))return; if (a)return"[" + a + "]" } },block:function() { var a; if (s("{") && (a = s(this.primary)) && s("}"))return a },ruleset:function() { var a = [],b,d,g; p(); if (g = /^([.#: \w-]+)[\s\n]*\{/.exec(j[f]))c += g[0].length - 1,a = [new e.Selector([new e.Element(null, g[1])])]; else while (b = s(this.selector)) { a.push(b),s(this.comment); if (!s(","))break; s(this.comment) } if (a.length > 0 && (d = s(this.block)))return new e.Ruleset(a, d); i = c,q() },rule:function() { var a,d,g = b.charAt(c),k,l; p(); if (g !== "." && g !== "#" && g !== "&")if (a = s(this.variable) || s(this.property)) { a.charAt(0) != "@" && (l = /^([^@+\/'"*`(;{}-]*);/.exec(j[f])) ? (c += l[0].length - 1,d = new e.Anonymous(l[1])) : a === "font" ? d = s(this.font) : d = s(this.value),k = s(this.important); if (d && s(this.end))return new e.Rule(a, d, k, h); i = c,q() } },"import":function() { var a; if (s(/^@import\s+/) && (a = s(this.entities.quoted) || s(this.entities.url)) && s(";"))return new e.Import(a, o) },directive:function() { var a,d,f,g; if (b.charAt(c) === "@") { if (d = s(this["import"]))return d; if (a = s(/^@media|@page|@-[-a-z]+/)) { g = (s(/^[^{]+/) || "").trim(); if (f = s(this.block))return new e.Directive(a + " " + g, f) } else if (a = s(/^@[-a-z]+/))if (a === "@font-face") { if (f = s(this.block))return new e.Directive(a, f) } else if ((d = s(this.entity)) && s(";"))return new e.Directive(a, d) } },font:function() { var a = [],b = [],c,d,f,g; while (g = s(this.shorthand) || s(this.entity))b.push(g); a.push(new e.Expression(b)); if (s(","))while (g = s(this.expression)) { a.push(g); if (!s(","))break } return new e.Value(a) },value:function() { var a,b = [],c; while (a = s(this.expression)) { b.push(a); if (!s(","))break } if (b.length > 0)return new e.Value(b) },important:function() { if (b.charAt(c) === "!")return s(/^! *important/) },sub:function() { var a; if (s("(") && (a = s(this.expression)) && s(")"))return a },multiplication:function() { var a,b,c,d; if (a = s(this.operand)) { while ((c = s("/") || s("*")) && (b = s(this.operand)))d = new e.Operation(c, [d || a,b]); return d || a } },addition:function() { var a,d,f,g; if (a = s(this.multiplication)) { while ((f = s(/^[-+]\s+/) || b.charAt(c - 1) != " " && (s("+") || s("-"))) && (d = s(this.multiplication)))g = new e.Operation(f, [g || a,d]); return g || a } },operand:function() { var a,d = b.charAt(c + 1); b.charAt(c) === "-" && (d === "@" || d === "(") && (a = s("-")); var f = s(this.sub) || s(this.entities.dimension) || s(this.entities.color) || s(this.entities.variable) || s(this.entities.call); return a ? new e.Operation("*", [new e.Dimension(-1),f]) : f },expression:function() { var a,b,c = [],d; while (a = s(this.addition) || s(this.entity))c.push(a); if (c.length > 0)return new e.Expression(c) },property:function() { var a; if (a = s(/^(\*?-?[-a-z_0-9]+)\s*:/))return a[1] }}} },typeof a != "undefined" && (d.Parser.importer = function(a, b, c, d) { a.charAt(0) !== "/" && b.length > 0 && (a = b[0] + a),o({href:a,title:a,type:d.mime}, c, !0) }),function(a) { function d(a) { return Math.min(1, Math.max(0, a)) } function c(b) { if (b instanceof a.Dimension)return parseFloat(b.unit == "%" ? b.value / 100 : b.value); if (typeof b == "number")return b; throw{error:"RuntimeError",message:"color functions take numbers as parameters"} } function b(b) { return a.functions.hsla(b.h, b.s, b.l, b.a) } a.functions = {rgb:function(a, b, c) { return this.rgba(a, b, c, 1) },rgba:function(b, d, e, f) { var g = [b,d,e].map(function(a) { return c(a) }),f = c(f); return new a.Color(g, f) },hsl:function(a, b, c) { return this.hsla(a, b, c, 1) },hsla:function(a, b, d, e) { function h(a) { a = a < 0 ? a + 1 : a > 1 ? a - 1 : a; return a * 6 < 1 ? g + (f - g) * a * 6 : a * 2 < 1 ? f : a * 3 < 2 ? g + (f - g) * (2 / 3 - a) * 6 : g } a = c(a) % 360 / 360,b = c(b),d = c(d),e = c(e); var f = d <= .5 ? d * (b + 1) : d + b - d * b,g = d * 2 - f; return this.rgba(h(a + 1 / 3) * 255, h(a) * 255, h(a - 1 / 3) * 255, e) },hue:function(b) { return new a.Dimension(Math.round(b.toHSL().h)) },saturation:function(b) { return new a.Dimension(Math.round(b.toHSL().s * 100), "%") },lightness:function(b) { return new a.Dimension(Math.round(b.toHSL().l * 100), "%") },alpha:function(b) { return new a.Dimension(b.toHSL().a) },saturate:function(a, c) { var e = a.toHSL(); e.s += c.value / 100,e.s = d(e.s); return b(e) },desaturate:function(a, c) { var e = a.toHSL(); e.s -= c.value / 100,e.s = d(e.s); return b(e) },lighten:function(a, c) { var e = a.toHSL(); e.l += c.value / 100,e.l = d(e.l); return b(e) },darken:function(a, c) { var e = a.toHSL(); e.l -= c.value / 100,e.l = d(e.l); return b(e) },fadein:function(a, c) { var e = a.toHSL(); e.a += c.value / 100,e.a = d(e.a); return b(e) },fadeout:function(a, c) { var e = a.toHSL(); e.a -= c.value / 100,e.a = d(e.a); return b(e) },spin:function(a, c) { var d = a.toHSL(),e = (d.h + c.value) % 360; d.h = e < 0 ? 360 + e : e; return b(d) },mix:function(b, c, d) { var e = d.value / 100,f = e * 2 - 1,g = b.toHSL().a - c.toHSL().a,h = ((f * g == -1 ? f : (f + g) / (1 + f * g)) + 1) / 2,i = 1 - h,j = [b.rgb[0] * h + c.rgb[0] * i,b.rgb[1] * h + c.rgb[1] * i,b.rgb[2] * h + c.rgb[2] * i],k = b.alpha * e + c.alpha * (1 - e); return new a.Color(j, k) },greyscale:function(b) { return this.desaturate(b, new a.Dimension(100)) },e:function(b) { return new a.Anonymous(b instanceof a.JavaScript ? b.evaluated : b) },escape:function(b) { return new a.Anonymous(encodeURI(b.value).replace(/=/g, "%3D").replace(/:/g, "%3A").replace(/#/g, "%23").replace(/;/g, "%3B").replace(/\(/g, "%28").replace(/\)/g, "%29")) },"%":function(b) { var c = Array.prototype.slice.call(arguments, 1),d = b.value; for (var e = 0; e < c.length; e++)d = d.replace(/%[sda]/i, function(a) { var b = a.match(/s/i) ? c[e].value : c[e].toCSS(); return a.match(/[A-Z]$/) ? encodeURIComponent(b) : b }); d = d.replace(/%%/g, "%"); return new a.Quoted('"' + d + '"', d) },round:function(b) { if (b instanceof a.Dimension)return new a.Dimension(Math.round(c(b)), b.unit); if (typeof b == "number")return Math.round(b); throw{error:"RuntimeError",message:"math functions take numbers as parameters"} }} }(c("less/tree")),function(a) { a.Alpha = function(a) { this.value = a },a.Alpha.prototype = {toCSS:function() { return"alpha(opacity=" + (this.value.toCSS ? this.value.toCSS() : this.value) + ")" },eval:function(a) { this.value.eval && (this.value = this.value.eval(a)); return this }} }(c("less/tree")),function(a) { a.Anonymous = function(a) { this.value = a.value || a },a.Anonymous.prototype = {toCSS:function() { return this.value },eval:function() { return this }} }(c("less/tree")),function(a) { a.Call = function(a, b, c) { this.name = a,this.args = b,this.index = c },a.Call.prototype = {eval:function(b) { var c = this.args.map(function(a) { return a.eval(b) }); if (!(this.name in a.functions))return new a.Anonymous(this.name + "(" + c.map( function(a) { return a.toCSS() }).join(", ") + ")"); try { return a.functions[this.name].apply(a.functions, c) } catch(d) { throw{message:"error evaluating function `" + this.name + "`",index:this.index} } },toCSS:function(a) { return this.eval(a).toCSS() }} }(c("less/tree")),function(a) { a.Color = function(a, b) { Array.isArray(a) ? this.rgb = a : a.length == 6 ? this.rgb = a.match(/.{2}/g).map(function(a) { return parseInt(a, 16) }) : a.length == 8 ? (this.alpha = parseInt(a.substring(0, 2), 16) / 255,this.rgb = a.substr(2).match(/.{2}/g).map(function(a) { return parseInt(a, 16) })) : this.rgb = a.split("").map(function(a) { return parseInt(a + a, 16) }),this.alpha = typeof b == "number" ? b : 1 },a.Color.prototype = {eval:function() { return this },toCSS:function() { return this.alpha < 1 ? "rgba(" + this.rgb.map( function(a) { return Math.round(a) }).concat(this.alpha).join(", ") + ")" : "#" + this.rgb.map( function(a) { a = Math.round(a),a = (a > 255 ? 255 : a < 0 ? 0 : a).toString(16); return a.length === 1 ? "0" + a : a }).join("") },operate:function(b, c) { var d = []; c instanceof a.Color || (c = c.toColor()); for (var e = 0; e < 3; e++)d[e] = a.operate(b, this.rgb[e], c.rgb[e]); return new a.Color(d, this.alpha + c.alpha) },toHSL:function() { var a = this.rgb[0] / 255,b = this.rgb[1] / 255,c = this.rgb[2] / 255,d = this.alpha,e = Math.max(a, b, c),f = Math.min(a, b, c),g,h,i = (e + f) / 2,j = e - f; if (e === f)g = h = 0; else { h = i > .5 ? j / (2 - e - f) : j / (e + f); switch (e) { case a: g = (b - c) / j + (b < c ? 6 : 0); break; case b: g = (c - a) / j + 2; break; case c: g = (a - b) / j + 4 } g /= 6 } return{h:g * 360,s:h,l:i,a:d} }} }(c("less/tree")),function(a) { a.Comment = function(a, b) { this.value = a,this.silent = !!b },a.Comment.prototype = {toCSS:function(a) { return a.compress ? "" : this.value },eval:function() { return this }} }(c("less/tree")),function(a) { a.Dimension = function(a, b) { this.value = parseFloat(a),this.unit = b || null },a.Dimension.prototype = {eval:function() { return this },toColor:function() { return new a.Color([this.value,this.value,this.value]) },toCSS:function() { var a = this.value + this.unit; return a },operate:function(b, c) { return new a.Dimension(a.operate(b, this.value, c.value), this.unit || c.unit) }} }(c("less/tree")),function(a) { a.Directive = function(b, c) { this.name = b,Array.isArray(c) ? this.ruleset = new a.Ruleset([], c) : this.value = c },a.Directive.prototype = {toCSS:function(a, b) { if (this.ruleset) { this.ruleset.root = !0; return this.name + (b.compress ? "{" : " {\n ") + this.ruleset.toCSS(a, b).trim().replace(/\n/g, "\n ") + (b.compress ? "}" : "\n}\n") } return this.name + " " + this.value.toCSS() + ";\n" },eval:function(a) { a.frames.unshift(this),this.ruleset = this.ruleset && this.ruleset.eval(a),a.frames.shift(); return this },variable:function(b) { return a.Ruleset.prototype.variable.call(this.ruleset, b) },find:function() { return a.Ruleset.prototype.find.apply(this.ruleset, arguments) },rulesets:function() { return a.Ruleset.prototype.rulesets.apply(this.ruleset) }} }(c("less/tree")),function(a) { a.Element = function(b, c) { this.combinator = b instanceof a.Combinator ? b : new a.Combinator(b),this.value = c.trim() },a.Element.prototype.toCSS = function(a) { return this.combinator.toCSS(a || {}) + this.value },a.Combinator = function(a) { a === " " ? this.value = " " : this.value = a ? a.trim() : "" },a.Combinator.prototype.toCSS = function(a) { return{"":""," ":" ","&":"",":":" :","::":"::","+":a.compress ? "+" : " + ","~":a.compress ? "~" : " ~ ",">":a.compress ? ">" : " > "}[this.value] } }(c("less/tree")),function(a) { a.Expression = function(a) { this.value = a },a.Expression.prototype = {eval:function(b) { return this.value.length > 1 ? new a.Expression(this.value.map(function(a) { return a.eval(b) })) : this.value.length === 1 ? this.value[0].eval(b) : this },toCSS:function(a) { return this.value.map( function(b) { return b.toCSS(a) }).join(" ") }} }(c("less/tree")),function(a) { a.Import = function(b, c) { var d = this; this._path = b,b instanceof a.Quoted ? this.path = /\.(le?|c)ss$/.test(b.value) ? b.value : b.value + ".less" : this.path = b.value.value || b.value,this.css = /css$/.test(this.path),this.css || c.push(this.path, function(a) { if (!a)throw new Error("Error parsing " + d.path); d.root = a }) },a.Import.prototype = {toCSS:function() { return this.css ? "@import " + this._path.toCSS() + ";\n" : "" },eval:function(b) { var c; if (this.css)return this; c = new a.Ruleset(null, this.root.rules.slice(0)); for (var d = 0; d < c.rules.length; d++)c.rules[d]instanceof a.Import && Array.prototype.splice.apply(c.rules, [d,1].concat(c.rules[d].eval(b))); return c.rules }} }(c("less/tree")),function(a) { a.JavaScript = function(a, b, c) { this.escaped = c,this.expression = a,this.index = b },a.JavaScript.prototype = {eval:function(b) { var c,d = this,e = {},f = this.expression.replace(/@\{([\w-]+)\}/g, function(c, e) { return a.jsify((new a.Variable("@" + e, d.index)).eval(b)) }); try { f = new Function("return (" + f + ")") } catch(g) { throw{message:"JavaScript evaluation error: `" + f + "`",index:this.index} } for (var h in b.frames[0].variables())e[h.slice(1)] = {value:b.frames[0].variables()[h].value,toJS:function() { return this.value.eval(b).toCSS() }}; try { c = f.call(e) } catch(g) { throw{message:"JavaScript evaluation error: '" + g.name + ": " + g.message + "'",index:this.index} } return typeof c == "string" ? new a.Quoted('"' + c + '"', c, this.escaped, this.index) : Array.isArray(c) ? new a.Anonymous(c.join(", ")) : new a.Anonymous(c) }} }(c("less/tree")),function(a) { a.Keyword = function(a) { this.value = a },a.Keyword.prototype = {eval:function() { return this },toCSS:function() { return this.value }} }(c("less/tree")),function(a) { a.mixin = {},a.mixin.Call = function(b, c, d) { this.selector = new a.Selector(b),this.arguments = c,this.index = d },a.mixin.Call.prototype = {eval:function(a) { var b,c,d = [],e = !1; for (var f = 0; f < a.frames.length; f++)if ((b = a.frames[f].find(this.selector)).length > 0) { c = this.arguments && this.arguments.map(function(b) { return b.eval(a) }); for (var g = 0; g < b.length; g++)if (b[g].match(c, a))try { Array.prototype.push.apply(d, b[g].eval(a, this.arguments).rules),e = !0 } catch(h) { throw{message:h.message,index:h.index,stack:h.stack,call:this.index} } if (e)return d; throw{message:"No matching definition was found for `" + this.selector.toCSS().trim() + "(" + this.arguments.map( function(a) { return a.toCSS() }).join(", ") + ")`",index:this.index} } throw{message:this.selector.toCSS().trim() + " is undefined",index:this.index} }},a.mixin.Definition = function(b, c, d) { this.name = b,this.selectors = [new a.Selector([new a.Element(null, b)])],this.params = c,this.arity = c.length,this.rules = d,this._lookups = {},this.required = c.reduce(function(a, b) { return!b.name || b.name && !b.value ? a + 1 : a }, 0),this.parent = a.Ruleset.prototype,this.frames = [] },a.mixin.Definition.prototype = {toCSS:function() { return"" },variable:function(a) { return this.parent.variable.call(this, a) },variables:function() { return this.parent.variables.call(this) },find:function() { return this.parent.find.apply(this, arguments) },rulesets:function() { return this.parent.rulesets.apply(this) },eval:function(b, c) { var d = new a.Ruleset(null, []),e,f = []; for (var g = 0,h; g < this.params.length; g++)if (this.params[g].name)if (h = c && c[g] || this.params[g].value)d.rules.unshift(new a.Rule(this.params[g].name, h.eval(b))); else throw{message:"wrong number of arguments for " + this.name + " (" + c.length + " for " + this.arity + ")"}; for (var g = 0; g < Math.max(this.params.length, c && c.length); g++)f.push(c[g] || this.params[g].value); d.rules.unshift(new a.Rule("@arguments", (new a.Expression(f)).eval(b))); return(new a.Ruleset(null, this.rules.slice(0))).eval({frames:[this,d].concat(this.frames, b.frames)}) },match:function(a, b) { var c = a && a.length || 0,d; if (c < this.required)return!1; if (this.required > 0 && c > this.params.length)return!1; d = Math.min(c, this.arity); for (var e = 0; e < d; e++)if (!this.params[e].name && a[e].eval(b).toCSS() != this.params[e].value.eval(b).toCSS())return!1; return!0 }} }(c("less/tree")),function(a) { a.Operation = function(a, b) { this.op = a.trim(),this.operands = b },a.Operation.prototype.eval = function(b) { var c = this.operands[0].eval(b),d = this.operands[1].eval(b),e; if (c instanceof a.Dimension && d instanceof a.Color)if (this.op === "*" || this.op === "+")e = d,d = c,c = e; else throw{name:"OperationError",message:"Can't substract or divide a color from a number"}; return c.operate(this.op, d) },a.operate = function(a, b, c) { switch (a) { case"+": return b + c; case"-": return b - c; case"*": return b * c; case"/": return b / c } } }(c("less/tree")),function(a) { a.Quoted = function(a, b, c, d) { this.escaped = c,this.value = b || "",this.quote = a.charAt(0),this.index = d },a.Quoted.prototype = {toCSS:function() { return this.escaped ? this.value : this.quote + this.value + this.quote },eval:function(b) { var c = this,d = this.value.replace(/`([^`]+)`/g, function(d, e) { return(new a.JavaScript(e, c.index, !0)).eval(b).value }).replace(/@\{([\w-]+)\}/g, function(d, e) { var f = (new a.Variable("@" + e, c.index)).eval(b); return f.value || f.toCSS() }); return new a.Quoted(this.quote + d + this.quote, d, this.escaped, this.index) }} }(c("less/tree")),function(a) { a.Rule = function(b, c, d, e) { this.name = b,this.value = c instanceof a.Value ? c : new a.Value([c]),this.important = d ? " " + d.trim() : "",this.index = e,b.charAt(0) === "@" ? this.variable = !0 : this.variable = !1 },a.Rule.prototype.toCSS = function(a) { return this.variable ? "" : this.name + (a.compress ? ":" : ": ") + this.value.toCSS(a) + this.important + ";" },a.Rule.prototype.eval = function(b) { return new a.Rule(this.name, this.value.eval(b), this.important, this.index) },a.Shorthand = function(a, b) { this.a = a,this.b = b },a.Shorthand.prototype = {toCSS:function(a) { return this.a.toCSS(a) + "/" + this.b.toCSS(a) },eval:function() { return this }} }(c("less/tree")),function(a) { a.Ruleset = function(a, b) { this.selectors = a,this.rules = b,this._lookups = {} },a.Ruleset.prototype = {eval:function(b) { var c = new a.Ruleset(this.selectors, this.rules.slice(0)); c.root = this.root,b.frames.unshift(c); if (c.root)for (var d = 0; d < c.rules.length; d++)c.rules[d]instanceof a.Import && Array.prototype.splice.apply(c.rules, [d,1].concat(c.rules[d].eval(b))); for (var d = 0; d < c.rules.length; d++)c.rules[d]instanceof a.mixin.Definition && (c.rules[d].frames = b.frames.slice(0)); for (var d = 0; d < c.rules.length; d++)c.rules[d]instanceof a.mixin.Call && Array.prototype.splice.apply(c.rules, [d,1].concat(c.rules[d].eval(b))); for (var d = 0,e; d < c.rules.length; d++)e = c.rules[d],e instanceof a.mixin.Definition || (c.rules[d] = e.eval ? e.eval(b) : e); b.frames.shift(); return c },match:function(a) { return!a || a.length === 0 },variables:function() { return this._variables ? this._variables : this._variables = this.rules.reduce(function(b, c) { c instanceof a.Rule && c.variable === !0 && (b[c.name] = c); return b }, {}) },variable:function(a) { return this.variables()[a] },rulesets:function() { return this._rulesets ? this._rulesets : this._rulesets = this.rules.filter(function(b) { return b instanceof a.Ruleset || b instanceof a.mixin.Definition }) },find:function(b, c) { c = c || this; var d = [],e,f,g = b.toCSS(); if (g in this._lookups)return this._lookups[g]; this.rulesets().forEach(function(e) { if (e !== c)for (var g = 0; g < e.selectors.length; g++)if (f = b.match(e.selectors[g])) { b.elements.length > 1 ? Array.prototype.push.apply(d, e.find(new a.Selector(b.elements.slice(1)), c)) : d.push(e); break } }); return this._lookups[g] = d },toCSS:function(b, c) { var d = [],e = [],f = [],g = [],h,i; if (!this.root)if (b.length === 0)g = this.selectors.map(function(a) { return[a] }); else for (var j = 0; j < this.selectors.length; j++)for (var k = 0; k < b.length; k++)g.push(b[k].concat([this.selectors[j]])); for (var l = 0; l < this.rules.length; l++)i = this.rules[l],i.rules || i instanceof a.Directive ? f.push(i.toCSS(g, c)) : i instanceof a.Comment ? i.silent || (this.root ? f.push(i.toCSS(c)) : e.push(i.toCSS(c))) : i.toCSS && !i.variable ? e.push(i.toCSS(c)) : i.value && !i.variable && e.push(i.value.toString()); f = f.join(""),this.root ? d.push(e.join(c.compress ? "" : "\n")) : e.length > 0 && (h = g.map( function(a) { return a.map( function(a) { return a.toCSS(c) }).join("").trim() }).join(c.compress ? "," : g.length > 3 ? ",\n" : ", "),d.push(h, (c.compress ? "{" : " {\n ") + e.join(c.compress ? "" : "\n ") + (c.compress ? "}" : "\n}\n"))),d.push(f); return d.join("") + (c.compress ? "\n" : "") }} }(c("less/tree")),function(a) { a.Selector = function(a) { this.elements = a,this.elements[0].combinator.value === "" && (this.elements[0].combinator.value = " ") },a.Selector.prototype.match = function(a) { return this.elements[0].value === a.elements[0].value ? !0 : !1 },a.Selector.prototype.toCSS = function(a) { if (this._css)return this._css; return this._css = this.elements.map( function(b) { return typeof b == "string" ? " " + b.trim() : b.toCSS(a) }).join("") } }(c("less/tree")),function(b) { b.URL = function(b, c) { b.data ? this.attrs = b : (!/^(?:https?:\/|file:\/|data:\/)?\//.test(b.value) && c.length > 0 && typeof a != "undefined" && (b.value = c[0] + (b.value.charAt(0) === "/" ? b.value.slice(1) : b.value)),this.value = b,this.paths = c) },b.URL.prototype = {toCSS:function() { return"url(" + (this.attrs ? "data:" + this.attrs.mime + this.attrs.charset + this.attrs.base64 + this.attrs.data : this.value.toCSS()) + ")" },eval:function(a) { return this.attrs ? this : new b.URL(this.value.eval(a), this.paths) }} }(c("less/tree")),function(a) { a.Value = function(a) { this.value = a,this.is = "value" },a.Value.prototype = {eval:function(b) { return this.value.length === 1 ? this.value[0].eval(b) : new a.Value(this.value.map(function(a) { return a.eval(b) })) },toCSS:function(a) { return this.value.map( function(b) { return b.toCSS(a) }).join(a.compress ? "," : ", ") }} }(c("less/tree")),function(a) { a.Variable = function(a, b) { this.name = a,this .index = b },a.Variable.prototype = {eval:function(b) { var c,d,e = this.name; e.indexOf("@@") == 0 && (e = "@" + (new a.Variable(e.slice(1))).eval(b).value); if (c = a.find(b.frames, function(a) { if (d = a.variable(e))return d.value.eval(b) }))return c; throw{message:"variable " + e + " is undefined",index:this.index} }} }(c("less/tree")),c("less/tree").find = function(a, b) { for (var c = 0,d; c < a.length; c++)if (d = b.call(a, a[c]))return d; return null },c("less/tree").jsify = function(a) { return Array.isArray(a.value) && a.value.length > 1 ? "[" + a.value.map( function(a) { return a.toCSS(!1) }).join(", ") + "]" : a.toCSS(!1) }; var g = location.protocol === "file:" || location.protocol === "chrome:" || location.protocol === "chrome-extension:" || location.protocol === "resource:"; d.env = d.env || (location.hostname == "127.0.0.1" || location.hostname == "0.0.0.0" || location.hostname == "localhost" || location.port.length > 0 || g ? "development" : "production"),d.async = !1,d.poll = d.poll || (g ? 1e3 : 1500),d.watch = function() { return this.watchMode = !0 },d.unwatch = function() { return this.watchMode = !1 },d.env === "development" ? (d.optimization = 0,/!watch/.test(location.hash) && d.watch(),d.watchTimer = setInterval(function() { d.watchMode && n(function(a, b, c) { a && q(a.toCSS(), b, c.lastModified) }) }, d.poll)) : d.optimization = 3; var h; try { h = typeof a.localStorage == "undefined" ? null : a.localStorage } catch(i) { h = null } var j = document.getElementsByTagName("link"),k = /^text\/(x-)?less$/; d.sheets = []; for (var l = 0; l < j.length; l++)(j[l].rel === "stylesheet/less" || j[l].rel.match(/stylesheet/) && j[l].type.match(k)) && d.sheets.push(j[l]); d.refresh = function(a) { var b,c; b = c = new Date,n(function(a, d, e) { e.local ? u("loading " + d.href + " from cache.") : (u("parsed " + d.href + " successfully."),q(a.toCSS(), d, e.lastModified)),u("css for " + d.href + " generated in " + (new Date - c) + "ms"),e.remaining === 0 && u("css generated in " + (new Date - b) + "ms"),c = new Date }, a),m() },d.refreshStyles = m,d.refresh(d.env === "development") })(window)