less-execjs 2.6.0.3

Sign up to get free protection for your applications and to get access to all the features.
Files changed (632) hide show
  1. checksums.yaml +7 -0
  2. data/.gitignore +7 -0
  3. data/.gitmodules +9 -0
  4. data/.rubocop.yml +8 -0
  5. data/.travis.yml +19 -0
  6. data/Gemfile +3 -0
  7. data/LICENSE +177 -0
  8. data/README.md +55 -0
  9. data/Rakefile +8 -0
  10. data/bin/lessc +22 -0
  11. data/less-execjs.gemspec +34 -0
  12. data/lib/less-execjs.rb +1 -0
  13. data/lib/less.rb +29 -0
  14. data/lib/less/compiler.js +24 -0
  15. data/lib/less/defaults.rb +15 -0
  16. data/lib/less/errors.rb +16 -0
  17. data/lib/less/js/image-size.js +4 -0
  18. data/lib/less/js/image-size/.gitignore +7 -0
  19. data/lib/less/js/image-size/.jshintrc +19 -0
  20. data/lib/less/js/image-size/.travis.yml +12 -0
  21. data/lib/less/js/image-size/Contributors.md +9 -0
  22. data/lib/less/js/image-size/LICENSE +9 -0
  23. data/lib/less/js/image-size/Readme.md +87 -0
  24. data/lib/less/js/image-size/bin/image-size.js +36 -0
  25. data/lib/less/js/image-size/lib/detector.js +19 -0
  26. data/lib/less/js/image-size/lib/index.js +104 -0
  27. data/lib/less/js/image-size/lib/readUInt.js +11 -0
  28. data/lib/less/js/image-size/lib/types.js +12 -0
  29. data/lib/less/js/image-size/lib/types/bmp.js +17 -0
  30. data/lib/less/js/image-size/lib/types/gif.js +19 -0
  31. data/lib/less/js/image-size/lib/types/jpg.js +62 -0
  32. data/lib/less/js/image-size/lib/types/png.js +23 -0
  33. data/lib/less/js/image-size/lib/types/psd.js +17 -0
  34. data/lib/less/js/image-size/lib/types/svg.js +78 -0
  35. data/lib/less/js/image-size/lib/types/tiff.js +118 -0
  36. data/lib/less/js/image-size/lib/types/webp.js +51 -0
  37. data/lib/less/js/image-size/package.json +49 -0
  38. data/lib/less/js/image-size/specs/.jshintrc +9 -0
  39. data/lib/less/js/image-size/specs/complexity.js +58 -0
  40. data/lib/less/js/image-size/specs/fs-close.spec.js +61 -0
  41. data/lib/less/js/image-size/specs/images/invalid/malformed.svg +1 -0
  42. data/lib/less/js/image-size/specs/images/invalid/sample.png +0 -0
  43. data/lib/less/js/image-size/specs/images/invalid/width.svg +1 -0
  44. data/lib/less/js/image-size/specs/images/valid/bmp/sample.bmp +0 -0
  45. data/lib/less/js/image-size/specs/images/valid/gif/sample.gif +0 -0
  46. data/lib/less/js/image-size/specs/images/valid/jpg/large.jpg +0 -0
  47. data/lib/less/js/image-size/specs/images/valid/jpg/progressive.jpg +0 -0
  48. data/lib/less/js/image-size/specs/images/valid/jpg/sample.jpg +0 -0
  49. data/lib/less/js/image-size/specs/images/valid/jpg/sampleExported.jpg +0 -0
  50. data/lib/less/js/image-size/specs/images/valid/jpg/very-large.jpg +0 -0
  51. data/lib/less/js/image-size/specs/images/valid/png/sample.png +0 -0
  52. data/lib/less/js/image-size/specs/images/valid/psd/sample.psd +0 -0
  53. data/lib/less/js/image-size/specs/images/valid/svg/percentage.svg +4 -0
  54. data/lib/less/js/image-size/specs/images/valid/svg/single-quotes.svg +5 -0
  55. data/lib/less/js/image-size/specs/images/valid/svg/viewbox-height.svg +4 -0
  56. data/lib/less/js/image-size/specs/images/valid/svg/viewbox-width-height.svg +4 -0
  57. data/lib/less/js/image-size/specs/images/valid/svg/viewbox-width.svg +4 -0
  58. data/lib/less/js/image-size/specs/images/valid/svg/viewbox.svg +4 -0
  59. data/lib/less/js/image-size/specs/images/valid/svg/width-height.svg +5 -0
  60. data/lib/less/js/image-size/specs/images/valid/tiff/big-endian.tiff +0 -0
  61. data/lib/less/js/image-size/specs/images/valid/tiff/jpeg.tiff +0 -0
  62. data/lib/less/js/image-size/specs/images/valid/tiff/little-endian.tiff +0 -0
  63. data/lib/less/js/image-size/specs/images/valid/webp/lossless.webp +0 -0
  64. data/lib/less/js/image-size/specs/images/valid/webp/lossy.webp +0 -0
  65. data/lib/less/js/image-size/specs/invalid.spec.js +53 -0
  66. data/lib/less/js/image-size/specs/others.spec.js +77 -0
  67. data/lib/less/js/image-size/specs/unsupported.spec.js +34 -0
  68. data/lib/less/js/image-size/specs/valid.spec.js +75 -0
  69. data/lib/less/js/less/.gitattributes +11 -0
  70. data/lib/less/js/less/.gitignore +27 -0
  71. data/lib/less/js/less/.jscsrc +73 -0
  72. data/lib/less/js/less/.jshintrc +11 -0
  73. data/lib/less/js/less/.npmignore +9 -0
  74. data/lib/less/js/less/.travis.yml +14 -0
  75. data/lib/less/js/less/CHANGELOG.md +561 -0
  76. data/lib/less/js/less/CONTRIBUTING.md +50 -0
  77. data/lib/less/js/less/Gruntfile.js +459 -0
  78. data/lib/less/js/less/LICENSE +177 -0
  79. data/lib/less/js/less/README.md +56 -0
  80. data/lib/less/js/less/appveyor.yml +32 -0
  81. data/lib/less/js/less/benchmark/benchmark.less +3979 -0
  82. data/lib/less/js/less/benchmark/index.js +55 -0
  83. data/lib/less/js/less/bin/lessc +488 -0
  84. data/lib/less/js/less/bower.json +24 -0
  85. data/lib/less/js/less/browser.js +1 -0
  86. data/lib/less/js/less/build.gradle +347 -0
  87. data/lib/less/js/less/build/amd.js +6 -0
  88. data/lib/less/js/less/build/build.yml +130 -0
  89. data/lib/less/js/less/build/require-rhino.js +12 -0
  90. data/lib/less/js/less/build/rhino-header.js +4 -0
  91. data/lib/less/js/less/build/rhino-modules.js +131 -0
  92. data/lib/less/js/less/build/tasks/.gitkeep +1 -0
  93. data/lib/less/js/less/dist/less.js +10500 -0
  94. data/lib/less/js/less/dist/less.min.js +20 -0
  95. data/lib/less/js/less/gradle/wrapper/gradle-wrapper.jar +0 -0
  96. data/lib/less/js/less/gradle/wrapper/gradle-wrapper.properties +6 -0
  97. data/lib/less/js/less/gradlew +164 -0
  98. data/lib/less/js/less/gradlew.bat +90 -0
  99. data/lib/less/js/less/index.js +1 -0
  100. data/lib/less/js/less/lib/less-browser/add-default-options.js +46 -0
  101. data/lib/less/js/less/lib/less-browser/bootstrap.js +51 -0
  102. data/lib/less/js/less/lib/less-browser/browser.js +64 -0
  103. data/lib/less/js/less/lib/less-browser/cache.js +42 -0
  104. data/lib/less/js/less/lib/less-browser/error-reporting.js +170 -0
  105. data/lib/less/js/less/lib/less-browser/file-manager.js +119 -0
  106. data/lib/less/js/less/lib/less-browser/image-size.js +28 -0
  107. data/lib/less/js/less/lib/less-browser/index.js +263 -0
  108. data/lib/less/js/less/lib/less-browser/log-listener.js +43 -0
  109. data/lib/less/js/less/lib/less-browser/utils.js +24 -0
  110. data/lib/less/js/less/lib/less-node/environment.js +14 -0
  111. data/lib/less/js/less/lib/less-node/file-manager.js +108 -0
  112. data/lib/less/js/less/lib/less-node/fs.js +10 -0
  113. data/lib/less/js/less/lib/less-node/image-size.js +57 -0
  114. data/lib/less/js/less/lib/less-node/index.js +74 -0
  115. data/lib/less/js/less/lib/less-node/lessc-helper.js +82 -0
  116. data/lib/less/js/less/lib/less-node/plugin-loader.js +91 -0
  117. data/lib/less/js/less/lib/less-node/url-file-manager.js +56 -0
  118. data/lib/less/js/less/lib/less-rhino/index.js +450 -0
  119. data/lib/less/js/less/lib/less/contexts.js +111 -0
  120. data/lib/less/js/less/lib/less/data/colors.js +150 -0
  121. data/lib/less/js/less/lib/less/data/index.js +4 -0
  122. data/lib/less/js/less/lib/less/data/unit-conversions.js +21 -0
  123. data/lib/less/js/less/lib/less/environment/abstract-file-manager.js +123 -0
  124. data/lib/less/js/less/lib/less/environment/environment-api.js +25 -0
  125. data/lib/less/js/less/lib/less/environment/environment.js +51 -0
  126. data/lib/less/js/less/lib/less/environment/file-manager-api.js +103 -0
  127. data/lib/less/js/less/lib/less/functions/color-blending.js +74 -0
  128. data/lib/less/js/less/lib/less/functions/color.js +322 -0
  129. data/lib/less/js/less/lib/less/functions/data-uri.js +85 -0
  130. data/lib/less/js/less/lib/less/functions/default.js +27 -0
  131. data/lib/less/js/less/lib/less/functions/function-caller.js +46 -0
  132. data/lib/less/js/less/lib/less/functions/function-registry.js +29 -0
  133. data/lib/less/js/less/lib/less/functions/index.js +19 -0
  134. data/lib/less/js/less/lib/less/functions/math-helper.js +16 -0
  135. data/lib/less/js/less/lib/less/functions/math.js +29 -0
  136. data/lib/less/js/less/lib/less/functions/number.js +81 -0
  137. data/lib/less/js/less/lib/less/functions/string.js +37 -0
  138. data/lib/less/js/less/lib/less/functions/svg.js +88 -0
  139. data/lib/less/js/less/lib/less/functions/types.js +89 -0
  140. data/lib/less/js/less/lib/less/import-manager.js +131 -0
  141. data/lib/less/js/less/lib/less/index.js +29 -0
  142. data/lib/less/js/less/lib/less/less-error.js +42 -0
  143. data/lib/less/js/less/lib/less/logger.js +34 -0
  144. data/lib/less/js/less/lib/less/parse-tree.js +60 -0
  145. data/lib/less/js/less/lib/less/parse.js +68 -0
  146. data/lib/less/js/less/lib/less/parser/chunker.js +112 -0
  147. data/lib/less/js/less/lib/less/parser/parser-input.js +259 -0
  148. data/lib/less/js/less/lib/less/parser/parser.js +1851 -0
  149. data/lib/less/js/less/lib/less/plugin-manager.js +114 -0
  150. data/lib/less/js/less/lib/less/plugins/function-importer.js +35 -0
  151. data/lib/less/js/less/lib/less/render.js +41 -0
  152. data/lib/less/js/less/lib/less/source-map-builder.js +69 -0
  153. data/lib/less/js/less/lib/less/source-map-output.js +138 -0
  154. data/lib/less/js/less/lib/less/transform-tree.js +74 -0
  155. data/lib/less/js/less/lib/less/tree/alpha.js +28 -0
  156. data/lib/less/js/less/lib/less/tree/anonymous.js +26 -0
  157. data/lib/less/js/less/lib/less/tree/assignment.js +27 -0
  158. data/lib/less/js/less/lib/less/tree/attribute.js +27 -0
  159. data/lib/less/js/less/lib/less/tree/call.js +62 -0
  160. data/lib/less/js/less/lib/less/tree/color.js +189 -0
  161. data/lib/less/js/less/lib/less/tree/combinator.js +23 -0
  162. data/lib/less/js/less/lib/less/tree/comment.js +21 -0
  163. data/lib/less/js/less/lib/less/tree/condition.js +37 -0
  164. data/lib/less/js/less/lib/less/tree/debug-info.js +38 -0
  165. data/lib/less/js/less/lib/less/tree/detached-ruleset.js +21 -0
  166. data/lib/less/js/less/lib/less/tree/dimension.js +157 -0
  167. data/lib/less/js/less/lib/less/tree/directive.js +133 -0
  168. data/lib/less/js/less/lib/less/tree/element.js +60 -0
  169. data/lib/less/js/less/lib/less/tree/expression.js +56 -0
  170. data/lib/less/js/less/lib/less/tree/extend.js +56 -0
  171. data/lib/less/js/less/lib/less/tree/import.js +165 -0
  172. data/lib/less/js/less/lib/less/tree/index.js +41 -0
  173. data/lib/less/js/less/lib/less/tree/javascript.js +28 -0
  174. data/lib/less/js/less/lib/less/tree/js-eval-node.js +61 -0
  175. data/lib/less/js/less/lib/less/tree/keyword.js +14 -0
  176. data/lib/less/js/less/lib/less/tree/media.js +144 -0
  177. data/lib/less/js/less/lib/less/tree/mixin-call.js +182 -0
  178. data/lib/less/js/less/lib/less/tree/mixin-definition.js +200 -0
  179. data/lib/less/js/less/lib/less/tree/negative.js +20 -0
  180. data/lib/less/js/less/lib/less/tree/node.js +123 -0
  181. data/lib/less/js/less/lib/less/tree/operation.js +48 -0
  182. data/lib/less/js/less/lib/less/tree/paren.js +16 -0
  183. data/lib/less/js/less/lib/less/tree/quoted.js +55 -0
  184. data/lib/less/js/less/lib/less/tree/rule.js +95 -0
  185. data/lib/less/js/less/lib/less/tree/ruleset-call.js +13 -0
  186. data/lib/less/js/less/lib/less/tree/ruleset.js +709 -0
  187. data/lib/less/js/less/lib/less/tree/selector.js +111 -0
  188. data/lib/less/js/less/lib/less/tree/unicode-descriptor.js +9 -0
  189. data/lib/less/js/less/lib/less/tree/unit.js +120 -0
  190. data/lib/less/js/less/lib/less/tree/url.js +54 -0
  191. data/lib/less/js/less/lib/less/tree/value.js +34 -0
  192. data/lib/less/js/less/lib/less/tree/variable.js +53 -0
  193. data/lib/less/js/less/lib/less/utils.js +20 -0
  194. data/lib/less/js/less/lib/less/visitors/extend-visitor.js +460 -0
  195. data/lib/less/js/less/lib/less/visitors/import-sequencer.js +54 -0
  196. data/lib/less/js/less/lib/less/visitors/import-visitor.js +189 -0
  197. data/lib/less/js/less/lib/less/visitors/index.js +10 -0
  198. data/lib/less/js/less/lib/less/visitors/join-selector-visitor.js +51 -0
  199. data/lib/less/js/less/lib/less/visitors/set-tree-visibility-visitor.js +38 -0
  200. data/lib/less/js/less/lib/less/visitors/to-css-visitor.js +383 -0
  201. data/lib/less/js/less/lib/less/visitors/visitor.js +152 -0
  202. data/lib/less/js/less/lib/source-map/source-map-0.1.31.js +1933 -0
  203. data/lib/less/js/less/lib/source-map/source-map-footer.js +4 -0
  204. data/lib/less/js/less/lib/source-map/source-map-header.js +3 -0
  205. data/lib/less/js/less/package.json +89 -0
  206. data/lib/less/js/less/test/browser/common.js +206 -0
  207. data/lib/less/js/less/test/browser/css/global-vars/simple.css +3 -0
  208. data/lib/less/js/less/test/browser/css/modify-vars/simple.css +8 -0
  209. data/lib/less/js/less/test/browser/css/postProcessor/postProcessor.css +4 -0
  210. data/lib/less/js/less/test/browser/css/relative-urls/urls.css +36 -0
  211. data/lib/less/js/less/test/browser/css/rootpath-relative/urls.css +35 -0
  212. data/lib/less/js/less/test/browser/css/rootpath/urls.css +35 -0
  213. data/lib/less/js/less/test/browser/css/urls.css +57 -0
  214. data/lib/less/js/less/test/browser/jasmine-jsreporter.js +391 -0
  215. data/lib/less/js/less/test/browser/less/console-errors/test-error.less +3 -0
  216. data/lib/less/js/less/test/browser/less/console-errors/test-error.txt +2 -0
  217. data/lib/less/js/less/test/browser/less/errors/image-height-error.less +3 -0
  218. data/lib/less/js/less/test/browser/less/errors/image-height-error.txt +4 -0
  219. data/lib/less/js/less/test/browser/less/errors/image-size-error.less +3 -0
  220. data/lib/less/js/less/test/browser/less/errors/image-size-error.txt +4 -0
  221. data/lib/less/js/less/test/browser/less/errors/image-width-error.less +3 -0
  222. data/lib/less/js/less/test/browser/less/errors/image-width-error.txt +4 -0
  223. data/lib/less/js/less/test/browser/less/global-vars/simple.less +3 -0
  224. data/lib/less/js/less/test/browser/less/imports/urls.less +4 -0
  225. data/lib/less/js/less/test/browser/less/imports/urls2.less +4 -0
  226. data/lib/less/js/less/test/browser/less/modify-vars/imports/simple2.less +4 -0
  227. data/lib/less/js/less/test/browser/less/modify-vars/simple.less +8 -0
  228. data/lib/less/js/less/test/browser/less/nested-gradient-with-svg-gradient/mixin-consumer.less +5 -0
  229. data/lib/less/js/less/test/browser/less/nested-gradient-with-svg-gradient/svg-gradient-mixin.less +15 -0
  230. data/lib/less/js/less/test/browser/less/postProcessor/postProcessor.less +4 -0
  231. data/lib/less/js/less/test/browser/less/relative-urls/urls.less +34 -0
  232. data/lib/less/js/less/test/browser/less/rootpath-relative/urls.less +33 -0
  233. data/lib/less/js/less/test/browser/less/rootpath/urls.less +33 -0
  234. data/lib/less/js/less/test/browser/less/urls.less +65 -0
  235. data/lib/less/js/less/test/browser/runner-VisitorPlugin-options.js +3 -0
  236. data/lib/less/js/less/test/browser/runner-VisitorPlugin.js +3 -0
  237. data/lib/less/js/less/test/browser/runner-browser-options.js +51 -0
  238. data/lib/less/js/less/test/browser/runner-browser-spec.js +12 -0
  239. data/lib/less/js/less/test/browser/runner-console-errors.js +5 -0
  240. data/lib/less/js/less/test/browser/runner-errors-options.js +4 -0
  241. data/lib/less/js/less/test/browser/runner-errors-spec.js +3 -0
  242. data/lib/less/js/less/test/browser/runner-filemanagerPlugin-options.js +4 -0
  243. data/lib/less/js/less/test/browser/runner-filemanagerPlugin.js +3 -0
  244. data/lib/less/js/less/test/browser/runner-global-vars-options.js +7 -0
  245. data/lib/less/js/less/test/browser/runner-global-vars-spec.js +3 -0
  246. data/lib/less/js/less/test/browser/runner-legacy-options.js +5 -0
  247. data/lib/less/js/less/test/browser/runner-legacy-spec.js +3 -0
  248. data/lib/less/js/less/test/browser/runner-main-options.js +18 -0
  249. data/lib/less/js/less/test/browser/runner-main-spec.js +7 -0
  250. data/lib/less/js/less/test/browser/runner-modify-vars-options.js +5 -0
  251. data/lib/less/js/less/test/browser/runner-modify-vars-spec.js +33 -0
  252. data/lib/less/js/less/test/browser/runner-no-js-errors-options.js +4 -0
  253. data/lib/less/js/less/test/browser/runner-no-js-errors-spec.js +3 -0
  254. data/lib/less/js/less/test/browser/runner-postProcessor-options.js +5 -0
  255. data/lib/less/js/less/test/browser/runner-postProcessor.js +3 -0
  256. data/lib/less/js/less/test/browser/runner-postProcessorPlugin-options.js +3 -0
  257. data/lib/less/js/less/test/browser/runner-postProcessorPlugin.js +3 -0
  258. data/lib/less/js/less/test/browser/runner-preProcessorPlugin-options.js +3 -0
  259. data/lib/less/js/less/test/browser/runner-preProcessorPlugin.js +3 -0
  260. data/lib/less/js/less/test/browser/runner-production-options.js +3 -0
  261. data/lib/less/js/less/test/browser/runner-production-spec.js +5 -0
  262. data/lib/less/js/less/test/browser/runner-relative-urls-options.js +3 -0
  263. data/lib/less/js/less/test/browser/runner-relative-urls-spec.js +3 -0
  264. data/lib/less/js/less/test/browser/runner-rootpath-options.js +3 -0
  265. data/lib/less/js/less/test/browser/runner-rootpath-relative-options.js +4 -0
  266. data/lib/less/js/less/test/browser/runner-rootpath-relative-spec.js +3 -0
  267. data/lib/less/js/less/test/browser/runner-rootpath-spec.js +3 -0
  268. data/lib/less/js/less/test/browser/runner-strict-units-options.js +5 -0
  269. data/lib/less/js/less/test/browser/runner-strict-units-spec.js +3 -0
  270. data/lib/less/js/less/test/browser/test-runner-template.tmpl +95 -0
  271. data/lib/less/js/less/test/copy-bom.js +72 -0
  272. data/lib/less/js/less/test/css/charsets.css +1 -0
  273. data/lib/less/js/less/test/css/colors.css +87 -0
  274. data/lib/less/js/less/test/css/comments.css +83 -0
  275. data/lib/less/js/less/test/css/comments2.css +18 -0
  276. data/lib/less/js/less/test/css/compression/compression.css +3 -0
  277. data/lib/less/js/less/test/css/css-3.css +157 -0
  278. data/lib/less/js/less/test/css/css-escapes.css +24 -0
  279. data/lib/less/js/less/test/css/css-guards.css +37 -0
  280. data/lib/less/js/less/test/css/css.css +95 -0
  281. data/lib/less/js/less/test/css/debug/linenumbers-all.css +50 -0
  282. data/lib/less/js/less/test/css/debug/linenumbers-comments.css +41 -0
  283. data/lib/less/js/less/test/css/debug/linenumbers-mediaquery.css +41 -0
  284. data/lib/less/js/less/test/css/detached-rulesets.css +76 -0
  285. data/lib/less/js/less/test/css/directives-bubling.css +119 -0
  286. data/lib/less/js/less/test/css/empty.css +0 -0
  287. data/lib/less/js/less/test/css/extend-chaining.css +81 -0
  288. data/lib/less/js/less/test/css/extend-clearfix.css +19 -0
  289. data/lib/less/js/less/test/css/extend-exact.css +37 -0
  290. data/lib/less/js/less/test/css/extend-media.css +24 -0
  291. data/lib/less/js/less/test/css/extend-nest.css +57 -0
  292. data/lib/less/js/less/test/css/extend-selector.css +87 -0
  293. data/lib/less/js/less/test/css/extend.css +76 -0
  294. data/lib/less/js/less/test/css/extract-and-length.css +133 -0
  295. data/lib/less/js/less/test/css/filemanagerPlugin/filemanager.css +3 -0
  296. data/lib/less/js/less/test/css/functions.css +201 -0
  297. data/lib/less/js/less/test/css/globalVars/extended.css +12 -0
  298. data/lib/less/js/less/test/css/globalVars/simple.css +6 -0
  299. data/lib/less/js/less/test/css/ie-filters.css +9 -0
  300. data/lib/less/js/less/test/css/import-inline.css +8 -0
  301. data/lib/less/js/less/test/css/import-interpolation.css +13 -0
  302. data/lib/less/js/less/test/css/import-once.css +15 -0
  303. data/lib/less/js/less/test/css/import-reference-issues.css +24 -0
  304. data/lib/less/js/less/test/css/import-reference.css +97 -0
  305. data/lib/less/js/less/test/css/import.css +49 -0
  306. data/lib/less/js/less/test/css/include-path-string/include-path-string.css +3 -0
  307. data/lib/less/js/less/test/css/include-path/include-path.css +9 -0
  308. data/lib/less/js/less/test/css/javascript.css +28 -0
  309. data/lib/less/js/less/test/css/lazy-eval.css +3 -0
  310. data/lib/less/js/less/test/css/legacy/legacy.css +21 -0
  311. data/lib/less/js/less/test/css/media.css +218 -0
  312. data/lib/less/js/less/test/css/merge.css +34 -0
  313. data/lib/less/js/less/test/css/mixins-args.css +163 -0
  314. data/lib/less/js/less/test/css/mixins-closure.css +9 -0
  315. data/lib/less/js/less/test/css/mixins-guards-default-func.css +129 -0
  316. data/lib/less/js/less/test/css/mixins-guards.css +211 -0
  317. data/lib/less/js/less/test/css/mixins-important.css +57 -0
  318. data/lib/less/js/less/test/css/mixins-interpolated.css +43 -0
  319. data/lib/less/js/less/test/css/mixins-named-args.css +27 -0
  320. data/lib/less/js/less/test/css/mixins-nested.css +14 -0
  321. data/lib/less/js/less/test/css/mixins-pattern.css +51 -0
  322. data/lib/less/js/less/test/css/mixins.css +144 -0
  323. data/lib/less/js/less/test/css/modifyVars/extended.css +9 -0
  324. data/lib/less/js/less/test/css/no-output.css +0 -0
  325. data/lib/less/js/less/test/css/no-strict-math/mixins-guards.css +12 -0
  326. data/lib/less/js/less/test/css/no-strict-math/no-sm-operations.css +12 -0
  327. data/lib/less/js/less/test/css/operations.css +50 -0
  328. data/lib/less/js/less/test/css/parens.css +36 -0
  329. data/lib/less/js/less/test/css/plugin.css +44 -0
  330. data/lib/less/js/less/test/css/postProcessorPlugin/postProcessor.css +4 -0
  331. data/lib/less/js/less/test/css/preProcessorPlugin/preProcessor.css +3 -0
  332. data/lib/less/js/less/test/css/property-name-interp.css +21 -0
  333. data/lib/less/js/less/test/css/rulesets.css +33 -0
  334. data/lib/less/js/less/test/css/scope.css +38 -0
  335. data/lib/less/js/less/test/css/selectors.css +170 -0
  336. data/lib/less/js/less/test/css/static-urls/urls.css +46 -0
  337. data/lib/less/js/less/test/css/strict-units/strict-units.css +4 -0
  338. data/lib/less/js/less/test/css/strings.css +55 -0
  339. data/lib/less/js/less/test/css/url-args/urls.css +56 -0
  340. data/lib/less/js/less/test/css/urls.css +87 -0
  341. data/lib/less/js/less/test/css/variables-in-at-rules.css +18 -0
  342. data/lib/less/js/less/test/css/variables.css +68 -0
  343. data/lib/less/js/less/test/css/visitorPlugin/visitor.css +3 -0
  344. data/lib/less/js/less/test/css/whitespace.css +42 -0
  345. data/lib/less/js/less/test/data/data-uri-fail.png +0 -0
  346. data/lib/less/js/less/test/data/image.jpg +0 -0
  347. data/lib/less/js/less/test/data/image.svg +4 -0
  348. data/lib/less/js/less/test/data/page.html +1 -0
  349. data/lib/less/js/less/test/index.js +59 -0
  350. data/lib/less/js/less/test/less-test.js +386 -0
  351. data/lib/less/js/less/test/less/charsets.less +3 -0
  352. data/lib/less/js/less/test/less/colors.less +98 -0
  353. data/lib/less/js/less/test/less/comments.less +102 -0
  354. data/lib/less/js/less/test/less/comments2.less +31 -0
  355. data/lib/less/js/less/test/less/compression/compression.less +36 -0
  356. data/lib/less/js/less/test/less/css-3.less +162 -0
  357. data/lib/less/js/less/test/less/css-escapes.less +33 -0
  358. data/lib/less/js/less/test/less/css-guards.less +103 -0
  359. data/lib/less/js/less/test/less/css.less +108 -0
  360. data/lib/less/js/less/test/less/debug/import/test.less +25 -0
  361. data/lib/less/js/less/test/less/debug/linenumbers.less +33 -0
  362. data/lib/less/js/less/test/less/detached-rulesets.less +112 -0
  363. data/lib/less/js/less/test/less/directives-bubling.less +142 -0
  364. data/lib/less/js/less/test/less/empty.less +0 -0
  365. data/lib/less/js/less/test/less/errors/add-mixed-units.less +3 -0
  366. data/lib/less/js/less/test/less/errors/add-mixed-units.txt +4 -0
  367. data/lib/less/js/less/test/less/errors/add-mixed-units2.less +3 -0
  368. data/lib/less/js/less/test/less/errors/add-mixed-units2.txt +4 -0
  369. data/lib/less/js/less/test/less/errors/at-rules-undefined-var.less +4 -0
  370. data/lib/less/js/less/test/less/errors/at-rules-undefined-var.txt +4 -0
  371. data/lib/less/js/less/test/less/errors/bad-variable-declaration1.less +1 -0
  372. data/lib/less/js/less/test/less/errors/bad-variable-declaration1.txt +2 -0
  373. data/lib/less/js/less/test/less/errors/color-func-invalid-color.less +3 -0
  374. data/lib/less/js/less/test/less/errors/color-func-invalid-color.txt +4 -0
  375. data/lib/less/js/less/test/less/errors/color-invalid-hex-code.less +3 -0
  376. data/lib/less/js/less/test/less/errors/color-invalid-hex-code.txt +4 -0
  377. data/lib/less/js/less/test/less/errors/color-invalid-hex-code2.less +3 -0
  378. data/lib/less/js/less/test/less/errors/color-invalid-hex-code2.txt +4 -0
  379. data/lib/less/js/less/test/less/errors/css-guard-default-func.less +4 -0
  380. data/lib/less/js/less/test/less/errors/css-guard-default-func.txt +4 -0
  381. data/lib/less/js/less/test/less/errors/detached-ruleset-1.less +6 -0
  382. data/lib/less/js/less/test/less/errors/detached-ruleset-1.txt +4 -0
  383. data/lib/less/js/less/test/less/errors/detached-ruleset-2.less +6 -0
  384. data/lib/less/js/less/test/less/errors/detached-ruleset-2.txt +4 -0
  385. data/lib/less/js/less/test/less/errors/detached-ruleset-3.less +4 -0
  386. data/lib/less/js/less/test/less/errors/detached-ruleset-3.txt +4 -0
  387. data/lib/less/js/less/test/less/errors/detached-ruleset-5.less +4 -0
  388. data/lib/less/js/less/test/less/errors/detached-ruleset-5.txt +3 -0
  389. data/lib/less/js/less/test/less/errors/detached-ruleset-6.less +5 -0
  390. data/lib/less/js/less/test/less/errors/detached-ruleset-6.txt +4 -0
  391. data/lib/less/js/less/test/less/errors/divide-mixed-units.less +3 -0
  392. data/lib/less/js/less/test/less/errors/divide-mixed-units.txt +4 -0
  393. data/lib/less/js/less/test/less/errors/extend-no-selector.less +3 -0
  394. data/lib/less/js/less/test/less/errors/extend-no-selector.txt +3 -0
  395. data/lib/less/js/less/test/less/errors/extend-not-at-end.less +3 -0
  396. data/lib/less/js/less/test/less/errors/extend-not-at-end.txt +3 -0
  397. data/lib/less/js/less/test/less/errors/import-malformed.less +1 -0
  398. data/lib/less/js/less/test/less/errors/import-malformed.txt +3 -0
  399. data/lib/less/js/less/test/less/errors/import-missing.less +6 -0
  400. data/lib/less/js/less/test/less/errors/import-missing.txt +3 -0
  401. data/lib/less/js/less/test/less/errors/import-no-semi.less +1 -0
  402. data/lib/less/js/less/test/less/errors/import-no-semi.txt +2 -0
  403. data/lib/less/js/less/test/less/errors/import-subfolder1.less +1 -0
  404. data/lib/less/js/less/test/less/errors/import-subfolder1.txt +3 -0
  405. data/lib/less/js/less/test/less/errors/import-subfolder2.less +1 -0
  406. data/lib/less/js/less/test/less/errors/import-subfolder2.txt +4 -0
  407. data/lib/less/js/less/test/less/errors/imports/import-subfolder1.less +1 -0
  408. data/lib/less/js/less/test/less/errors/imports/import-subfolder2.less +1 -0
  409. data/lib/less/js/less/test/less/errors/imports/import-test.less +4 -0
  410. data/lib/less/js/less/test/less/errors/imports/subfolder/mixin-not-defined.less +1 -0
  411. data/lib/less/js/less/test/less/errors/imports/subfolder/parse-error-curly-bracket.less +1 -0
  412. data/lib/less/js/less/test/less/errors/javascript-error.less +3 -0
  413. data/lib/less/js/less/test/less/errors/javascript-error.txt +4 -0
  414. data/lib/less/js/less/test/less/errors/javascript-undefined-var.less +3 -0
  415. data/lib/less/js/less/test/less/errors/javascript-undefined-var.txt +4 -0
  416. data/lib/less/js/less/test/less/errors/mixed-mixin-definition-args-1.less +6 -0
  417. data/lib/less/js/less/test/less/errors/mixed-mixin-definition-args-1.txt +4 -0
  418. data/lib/less/js/less/test/less/errors/mixed-mixin-definition-args-2.less +6 -0
  419. data/lib/less/js/less/test/less/errors/mixed-mixin-definition-args-2.txt +4 -0
  420. data/lib/less/js/less/test/less/errors/mixin-not-defined.less +11 -0
  421. data/lib/less/js/less/test/less/errors/mixin-not-defined.txt +3 -0
  422. data/lib/less/js/less/test/less/errors/mixin-not-matched.less +6 -0
  423. data/lib/less/js/less/test/less/errors/mixin-not-matched.txt +3 -0
  424. data/lib/less/js/less/test/less/errors/mixin-not-matched2.less +6 -0
  425. data/lib/less/js/less/test/less/errors/mixin-not-matched2.txt +3 -0
  426. data/lib/less/js/less/test/less/errors/mixin-not-visible-in-scope-1.less +9 -0
  427. data/lib/less/js/less/test/less/errors/mixin-not-visible-in-scope-1.txt +4 -0
  428. data/lib/less/js/less/test/less/errors/mixins-guards-default-func-1.less +9 -0
  429. data/lib/less/js/less/test/less/errors/mixins-guards-default-func-1.txt +4 -0
  430. data/lib/less/js/less/test/less/errors/mixins-guards-default-func-2.less +9 -0
  431. data/lib/less/js/less/test/less/errors/mixins-guards-default-func-2.txt +4 -0
  432. data/lib/less/js/less/test/less/errors/mixins-guards-default-func-3.less +9 -0
  433. data/lib/less/js/less/test/less/errors/mixins-guards-default-func-3.txt +4 -0
  434. data/lib/less/js/less/test/less/errors/multiple-guards-on-css-selectors.less +4 -0
  435. data/lib/less/js/less/test/less/errors/multiple-guards-on-css-selectors.txt +4 -0
  436. data/lib/less/js/less/test/less/errors/multiple-guards-on-css-selectors2.less +4 -0
  437. data/lib/less/js/less/test/less/errors/multiple-guards-on-css-selectors2.txt +4 -0
  438. data/lib/less/js/less/test/less/errors/multiply-mixed-units.less +7 -0
  439. data/lib/less/js/less/test/less/errors/multiply-mixed-units.txt +4 -0
  440. data/lib/less/js/less/test/less/errors/parens-error-1.less +3 -0
  441. data/lib/less/js/less/test/less/errors/parens-error-1.txt +4 -0
  442. data/lib/less/js/less/test/less/errors/parens-error-2.less +3 -0
  443. data/lib/less/js/less/test/less/errors/parens-error-2.txt +4 -0
  444. data/lib/less/js/less/test/less/errors/parens-error-3.less +3 -0
  445. data/lib/less/js/less/test/less/errors/parens-error-3.txt +4 -0
  446. data/lib/less/js/less/test/less/errors/parse-error-curly-bracket.less +4 -0
  447. data/lib/less/js/less/test/less/errors/parse-error-curly-bracket.txt +4 -0
  448. data/lib/less/js/less/test/less/errors/parse-error-media-no-block-1.less +5 -0
  449. data/lib/less/js/less/test/less/errors/parse-error-media-no-block-1.txt +3 -0
  450. data/lib/less/js/less/test/less/errors/parse-error-media-no-block-2.less +1 -0
  451. data/lib/less/js/less/test/less/errors/parse-error-media-no-block-2.txt +2 -0
  452. data/lib/less/js/less/test/less/errors/parse-error-media-no-block-3.less +4 -0
  453. data/lib/less/js/less/test/less/errors/parse-error-media-no-block-3.txt +3 -0
  454. data/lib/less/js/less/test/less/errors/parse-error-missing-bracket.less +2 -0
  455. data/lib/less/js/less/test/less/errors/parse-error-missing-bracket.txt +3 -0
  456. data/lib/less/js/less/test/less/errors/parse-error-missing-parens.less +5 -0
  457. data/lib/less/js/less/test/less/errors/parse-error-missing-parens.txt +3 -0
  458. data/lib/less/js/less/test/less/errors/parse-error-with-import.less +13 -0
  459. data/lib/less/js/less/test/less/errors/parse-error-with-import.txt +4 -0
  460. data/lib/less/js/less/test/less/errors/percentage-missing-space.less +3 -0
  461. data/lib/less/js/less/test/less/errors/percentage-missing-space.txt +4 -0
  462. data/lib/less/js/less/test/less/errors/percentage-non-number-argument.less +3 -0
  463. data/lib/less/js/less/test/less/errors/percentage-non-number-argument.txt +4 -0
  464. data/lib/less/js/less/test/less/errors/property-asterisk-only-name.less +3 -0
  465. data/lib/less/js/less/test/less/errors/property-asterisk-only-name.txt +4 -0
  466. data/lib/less/js/less/test/less/errors/property-ie5-hack.less +3 -0
  467. data/lib/less/js/less/test/less/errors/property-ie5-hack.txt +3 -0
  468. data/lib/less/js/less/test/less/errors/property-in-root.less +4 -0
  469. data/lib/less/js/less/test/less/errors/property-in-root.txt +4 -0
  470. data/lib/less/js/less/test/less/errors/property-in-root2.less +1 -0
  471. data/lib/less/js/less/test/less/errors/property-in-root2.txt +4 -0
  472. data/lib/less/js/less/test/less/errors/property-in-root3.less +4 -0
  473. data/lib/less/js/less/test/less/errors/property-in-root3.txt +3 -0
  474. data/lib/less/js/less/test/less/errors/property-interp-not-defined.less +1 -0
  475. data/lib/less/js/less/test/less/errors/property-interp-not-defined.txt +2 -0
  476. data/lib/less/js/less/test/less/errors/recursive-variable.less +1 -0
  477. data/lib/less/js/less/test/less/errors/recursive-variable.txt +2 -0
  478. data/lib/less/js/less/test/less/errors/single-character.less +1 -0
  479. data/lib/less/js/less/test/less/errors/single-character.txt +2 -0
  480. data/lib/less/js/less/test/less/errors/svg-gradient1.less +3 -0
  481. data/lib/less/js/less/test/less/errors/svg-gradient1.txt +4 -0
  482. data/lib/less/js/less/test/less/errors/svg-gradient2.less +3 -0
  483. data/lib/less/js/less/test/less/errors/svg-gradient2.txt +4 -0
  484. data/lib/less/js/less/test/less/errors/svg-gradient3.less +3 -0
  485. data/lib/less/js/less/test/less/errors/svg-gradient3.txt +4 -0
  486. data/lib/less/js/less/test/less/errors/svg-gradient4.less +4 -0
  487. data/lib/less/js/less/test/less/errors/svg-gradient4.txt +4 -0
  488. data/lib/less/js/less/test/less/errors/svg-gradient5.less +4 -0
  489. data/lib/less/js/less/test/less/errors/svg-gradient5.txt +4 -0
  490. data/lib/less/js/less/test/less/errors/svg-gradient6.less +4 -0
  491. data/lib/less/js/less/test/less/errors/svg-gradient6.txt +4 -0
  492. data/lib/less/js/less/test/less/errors/unit-function.less +3 -0
  493. data/lib/less/js/less/test/less/errors/unit-function.txt +4 -0
  494. data/lib/less/js/less/test/less/extend-chaining.less +91 -0
  495. data/lib/less/js/less/test/less/extend-clearfix.less +19 -0
  496. data/lib/less/js/less/test/less/extend-exact.less +46 -0
  497. data/lib/less/js/less/test/less/extend-media.less +24 -0
  498. data/lib/less/js/less/test/less/extend-nest.less +65 -0
  499. data/lib/less/js/less/test/less/extend-selector.less +110 -0
  500. data/lib/less/js/less/test/less/extend.less +81 -0
  501. data/lib/less/js/less/test/less/extract-and-length.less +133 -0
  502. data/lib/less/js/less/test/less/filemanagerPlugin/colors.test +1 -0
  503. data/lib/less/js/less/test/less/filemanagerPlugin/filemanager.less +4 -0
  504. data/lib/less/js/less/test/less/functions.less +232 -0
  505. data/lib/less/js/less/test/less/globalVars/extended.json +5 -0
  506. data/lib/less/js/less/test/less/globalVars/extended.less +10 -0
  507. data/lib/less/js/less/test/less/globalVars/simple.json +3 -0
  508. data/lib/less/js/less/test/less/globalVars/simple.less +3 -0
  509. data/lib/less/js/less/test/less/ie-filters.less +15 -0
  510. data/lib/less/js/less/test/less/import-inline.less +3 -0
  511. data/lib/less/js/less/test/less/import-interpolation.less +8 -0
  512. data/lib/less/js/less/test/less/import-once.less +6 -0
  513. data/lib/less/js/less/test/less/import-reference-issues.less +50 -0
  514. data/lib/less/js/less/test/less/import-reference-issues/appender-reference-1968.less +6 -0
  515. data/lib/less/js/less/test/less/import-reference-issues/global-scope-import.less +13 -0
  516. data/lib/less/js/less/test/less/import-reference-issues/global-scope-nested.less +3 -0
  517. data/lib/less/js/less/test/less/import-reference-issues/mixin-1968.less +8 -0
  518. data/lib/less/js/less/test/less/import-reference-issues/multiple-import-nested.less +12 -0
  519. data/lib/less/js/less/test/less/import-reference-issues/multiple-import.less +10 -0
  520. data/lib/less/js/less/test/less/import-reference-issues/simple-mixin.css +3 -0
  521. data/lib/less/js/less/test/less/import-reference-issues/simple-ruleset-2162.less +3 -0
  522. data/lib/less/js/less/test/less/import-reference.less +26 -0
  523. data/lib/less/js/less/test/less/import.less +31 -0
  524. data/lib/less/js/less/test/less/import/css-import.less +1 -0
  525. data/lib/less/js/less/test/less/import/deeper/deeper-2/url-import-2.less +3 -0
  526. data/lib/less/js/less/test/less/import/deeper/deeper-2/url-import.less +1 -0
  527. data/lib/less/js/less/test/less/import/deeper/import-once-test-a.less +1 -0
  528. data/lib/less/js/less/test/less/import/deeper/url-import.less +1 -0
  529. data/lib/less/js/less/test/less/import/import-and-relative-paths-test.less +17 -0
  530. data/lib/less/js/less/test/less/import/import-charset-test.less +1 -0
  531. data/lib/less/js/less/test/less/import/import-inline-invalid-css.less +1 -0
  532. data/lib/less/js/less/test/less/import/import-interpolation.less +2 -0
  533. data/lib/less/js/less/test/less/import/import-interpolation2.less +5 -0
  534. data/lib/less/js/less/test/less/import/import-once-test-c.less +6 -0
  535. data/lib/less/js/less/test/less/import/import-reference.less +98 -0
  536. data/lib/less/js/less/test/less/import/import-test-a.less +5 -0
  537. data/lib/less/js/less/test/less/import/import-test-b.less +8 -0
  538. data/lib/less/js/less/test/less/import/import-test-c.less +6 -0
  539. data/lib/less/js/less/test/less/import/import-test-d.css +1 -0
  540. data/lib/less/js/less/test/less/import/import-test-e.less +2 -0
  541. data/lib/less/js/less/test/less/import/import-test-f.less +5 -0
  542. data/lib/less/js/less/test/less/import/imports/font.less +8 -0
  543. data/lib/less/js/less/test/less/import/imports/logo.less +6 -0
  544. data/lib/less/js/less/test/less/import/interpolation-vars.less +6 -0
  545. data/lib/less/js/less/test/less/import/invalid-css.less +1 -0
  546. data/lib/less/js/less/test/less/import/urls.less +1 -0
  547. data/lib/less/js/less/test/less/include-path-string/include-path-string.less +3 -0
  548. data/lib/less/js/less/test/less/include-path/include-path.less +8 -0
  549. data/lib/less/js/less/test/less/javascript.less +38 -0
  550. data/lib/less/js/less/test/less/lazy-eval.less +6 -0
  551. data/lib/less/js/less/test/less/legacy/legacy.less +21 -0
  552. data/lib/less/js/less/test/less/media.less +234 -0
  553. data/lib/less/js/less/test/less/merge.less +78 -0
  554. data/lib/less/js/less/test/less/mixins-args.less +263 -0
  555. data/lib/less/js/less/test/less/mixins-closure.less +26 -0
  556. data/lib/less/js/less/test/less/mixins-guards-default-func.less +195 -0
  557. data/lib/less/js/less/test/less/mixins-guards.less +358 -0
  558. data/lib/less/js/less/test/less/mixins-important.less +53 -0
  559. data/lib/less/js/less/test/less/mixins-interpolated.less +75 -0
  560. data/lib/less/js/less/test/less/mixins-named-args.less +36 -0
  561. data/lib/less/js/less/test/less/mixins-nested.less +22 -0
  562. data/lib/less/js/less/test/less/mixins-pattern.less +102 -0
  563. data/lib/less/js/less/test/less/mixins.less +145 -0
  564. data/lib/less/js/less/test/less/modifyVars/extended.json +5 -0
  565. data/lib/less/js/less/test/less/modifyVars/extended.less +11 -0
  566. data/lib/less/js/less/test/less/nested-gradient-with-svg-gradient/mixin-consumer.less +5 -0
  567. data/lib/less/js/less/test/less/nested-gradient-with-svg-gradient/svg-gradient-mixin.less +15 -0
  568. data/lib/less/js/less/test/less/no-js-errors/no-js-errors.less +3 -0
  569. data/lib/less/js/less/test/less/no-js-errors/no-js-errors.txt +4 -0
  570. data/lib/less/js/less/test/less/no-output.less +2 -0
  571. data/lib/less/js/less/test/less/no-strict-math/mixins-guards.less +25 -0
  572. data/lib/less/js/less/test/less/no-strict-math/no-sm-operations.less +10 -0
  573. data/lib/less/js/less/test/less/operations.less +63 -0
  574. data/lib/less/js/less/test/less/parens.less +45 -0
  575. data/lib/less/js/less/test/less/plugin.less +85 -0
  576. data/lib/less/js/less/test/less/plugin/plugin-global.js +9 -0
  577. data/lib/less/js/less/test/less/plugin/plugin-local.js +8 -0
  578. data/lib/less/js/less/test/less/plugin/plugin-transitive.js +5 -0
  579. data/lib/less/js/less/test/less/plugin/plugin-transitive.less +5 -0
  580. data/lib/less/js/less/test/less/postProcessorPlugin/postProcessor.less +4 -0
  581. data/lib/less/js/less/test/less/preProcessorPlugin/preProcessor.less +3 -0
  582. data/lib/less/js/less/test/less/property-name-interp.less +56 -0
  583. data/lib/less/js/less/test/less/rulesets.less +30 -0
  584. data/lib/less/js/less/test/less/scope.less +104 -0
  585. data/lib/less/js/less/test/less/selectors.less +184 -0
  586. data/lib/less/js/less/test/less/sourcemaps-empty/empty.less +0 -0
  587. data/lib/less/js/less/test/less/sourcemaps-empty/var-defs.less +1 -0
  588. data/lib/less/js/less/test/less/sourcemaps/basic.json +3 -0
  589. data/lib/less/js/less/test/less/sourcemaps/basic.less +27 -0
  590. data/lib/less/js/less/test/less/sourcemaps/imported.css +7 -0
  591. data/lib/less/js/less/test/less/static-urls/urls.less +33 -0
  592. data/lib/less/js/less/test/less/strict-units/strict-units.less +4 -0
  593. data/lib/less/js/less/test/less/strings.less +73 -0
  594. data/lib/less/js/less/test/less/url-args/urls.less +63 -0
  595. data/lib/less/js/less/test/less/urls.less +94 -0
  596. data/lib/less/js/less/test/less/variables-in-at-rules.less +20 -0
  597. data/lib/less/js/less/test/less/variables.less +119 -0
  598. data/lib/less/js/less/test/less/visitorPlugin/visitor.less +4 -0
  599. data/lib/less/js/less/test/less/whitespace.less +44 -0
  600. data/lib/less/js/less/test/modify-vars.js +19 -0
  601. data/lib/less/js/less/test/plugins/filemanager/index.js +19 -0
  602. data/lib/less/js/less/test/plugins/postprocess/index.js +14 -0
  603. data/lib/less/js/less/test/plugins/preprocess/index.js +19 -0
  604. data/lib/less/js/less/test/plugins/visitor/index.js +24 -0
  605. data/lib/less/js/less/test/rhino/test-header.js +15 -0
  606. data/lib/less/js/less/test/sourcemaps/basic.json +1 -0
  607. data/lib/less/js/less/test/sourcemaps/index.html +17 -0
  608. data/lib/less/js/node-mime/.gitignore +2 -0
  609. data/lib/less/js/node-mime/.npmignore +0 -0
  610. data/lib/less/js/node-mime/LICENSE +19 -0
  611. data/lib/less/js/node-mime/README.md +90 -0
  612. data/lib/less/js/node-mime/build/build.js +11 -0
  613. data/lib/less/js/node-mime/build/test.js +57 -0
  614. data/lib/less/js/node-mime/cli.js +8 -0
  615. data/lib/less/js/node-mime/mime.js +108 -0
  616. data/lib/less/js/node-mime/package.json +41 -0
  617. data/lib/less/js/node-mime/types.json +1 -0
  618. data/lib/less/loader.rb +13 -0
  619. data/lib/less/parser.rb +62 -0
  620. data/lib/less/runner.js +20 -0
  621. data/lib/less/version.rb +3 -0
  622. data/script/bootstrap +6 -0
  623. data/script/cibuild +7 -0
  624. data/spec/less/parser_spec.rb +170 -0
  625. data/spec/spec_helper.rb +3 -0
  626. data/spec/support/custom_functions/custom_functions.js +7 -0
  627. data/spec/support/custom_functions/custom_functions.less +3 -0
  628. data/spec/support/faulty/faulty.less +3 -0
  629. data/spec/support/less.js.tests-custom-functions.js +20 -0
  630. data/spec/support/one/one.less +1 -0
  631. data/spec/support/two/two.less +1 -0
  632. metadata +733 -0
@@ -0,0 +1,177 @@
1
+
2
+ Apache License
3
+ Version 2.0, January 2004
4
+ http://www.apache.org/licenses/
5
+
6
+ TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
7
+
8
+ 1. Definitions.
9
+
10
+ "License" shall mean the terms and conditions for use, reproduction,
11
+ and distribution as defined by Sections 1 through 9 of this document.
12
+
13
+ "Licensor" shall mean the copyright owner or entity authorized by
14
+ the copyright owner that is granting the License.
15
+
16
+ "Legal Entity" shall mean the union of the acting entity and all
17
+ other entities that control, are controlled by, or are under common
18
+ control with that entity. For the purposes of this definition,
19
+ "control" means (i) the power, direct or indirect, to cause the
20
+ direction or management of such entity, whether by contract or
21
+ otherwise, or (ii) ownership of fifty percent (50%) or more of the
22
+ outstanding shares, or (iii) beneficial ownership of such entity.
23
+
24
+ "You" (or "Your") shall mean an individual or Legal Entity
25
+ exercising permissions granted by this License.
26
+
27
+ "Source" form shall mean the preferred form for making modifications,
28
+ including but not limited to software source code, documentation
29
+ source, and configuration files.
30
+
31
+ "Object" form shall mean any form resulting from mechanical
32
+ transformation or translation of a Source form, including but
33
+ not limited to compiled object code, generated documentation,
34
+ and conversions to other media types.
35
+
36
+ "Work" shall mean the work of authorship, whether in Source or
37
+ Object form, made available under the License, as indicated by a
38
+ copyright notice that is included in or attached to the work
39
+ (an example is provided in the Appendix below).
40
+
41
+ "Derivative Works" shall mean any work, whether in Source or Object
42
+ form, that is based on (or derived from) the Work and for which the
43
+ editorial revisions, annotations, elaborations, or other modifications
44
+ represent, as a whole, an original work of authorship. For the purposes
45
+ of this License, Derivative Works shall not include works that remain
46
+ separable from, or merely link (or bind by name) to the interfaces of,
47
+ the Work and Derivative Works thereof.
48
+
49
+ "Contribution" shall mean any work of authorship, including
50
+ the original version of the Work and any modifications or additions
51
+ to that Work or Derivative Works thereof, that is intentionally
52
+ submitted to Licensor for inclusion in the Work by the copyright owner
53
+ or by an individual or Legal Entity authorized to submit on behalf of
54
+ the copyright owner. For the purposes of this definition, "submitted"
55
+ means any form of electronic, verbal, or written communication sent
56
+ to the Licensor or its representatives, including but not limited to
57
+ communication on electronic mailing lists, source code control systems,
58
+ and issue tracking systems that are managed by, or on behalf of, the
59
+ Licensor for the purpose of discussing and improving the Work, but
60
+ excluding communication that is conspicuously marked or otherwise
61
+ designated in writing by the copyright owner as "Not a Contribution."
62
+
63
+ "Contributor" shall mean Licensor and any individual or Legal Entity
64
+ on behalf of whom a Contribution has been received by Licensor and
65
+ subsequently incorporated within the Work.
66
+
67
+ 2. Grant of Copyright License. Subject to the terms and conditions of
68
+ this License, each Contributor hereby grants to You a perpetual,
69
+ worldwide, non-exclusive, no-charge, royalty-free, irrevocable
70
+ copyright license to reproduce, prepare Derivative Works of,
71
+ publicly display, publicly perform, sublicense, and distribute the
72
+ Work and such Derivative Works in Source or Object form.
73
+
74
+ 3. Grant of Patent License. Subject to the terms and conditions of
75
+ this License, each Contributor hereby grants to You a perpetual,
76
+ worldwide, non-exclusive, no-charge, royalty-free, irrevocable
77
+ (except as stated in this section) patent license to make, have made,
78
+ use, offer to sell, sell, import, and otherwise transfer the Work,
79
+ where such license applies only to those patent claims licensable
80
+ by such Contributor that are necessarily infringed by their
81
+ Contribution(s) alone or by combination of their Contribution(s)
82
+ with the Work to which such Contribution(s) was submitted. If You
83
+ institute patent litigation against any entity (including a
84
+ cross-claim or counterclaim in a lawsuit) alleging that the Work
85
+ or a Contribution incorporated within the Work constitutes direct
86
+ or contributory patent infringement, then any patent licenses
87
+ granted to You under this License for that Work shall terminate
88
+ as of the date such litigation is filed.
89
+
90
+ 4. Redistribution. You may reproduce and distribute copies of the
91
+ Work or Derivative Works thereof in any medium, with or without
92
+ modifications, and in Source or Object form, provided that You
93
+ meet the following conditions:
94
+
95
+ (a) You must give any other recipients of the Work or
96
+ Derivative Works a copy of this License; and
97
+
98
+ (b) You must cause any modified files to carry prominent notices
99
+ stating that You changed the files; and
100
+
101
+ (c) You must retain, in the Source form of any Derivative Works
102
+ that You distribute, all copyright, patent, trademark, and
103
+ attribution notices from the Source form of the Work,
104
+ excluding those notices that do not pertain to any part of
105
+ the Derivative Works; and
106
+
107
+ (d) If the Work includes a "NOTICE" text file as part of its
108
+ distribution, then any Derivative Works that You distribute must
109
+ include a readable copy of the attribution notices contained
110
+ within such NOTICE file, excluding those notices that do not
111
+ pertain to any part of the Derivative Works, in at least one
112
+ of the following places: within a NOTICE text file distributed
113
+ as part of the Derivative Works; within the Source form or
114
+ documentation, if provided along with the Derivative Works; or,
115
+ within a display generated by the Derivative Works, if and
116
+ wherever such third-party notices normally appear. The contents
117
+ of the NOTICE file are for informational purposes only and
118
+ do not modify the License. You may add Your own attribution
119
+ notices within Derivative Works that You distribute, alongside
120
+ or as an addendum to the NOTICE text from the Work, provided
121
+ that such additional attribution notices cannot be construed
122
+ as modifying the License.
123
+
124
+ You may add Your own copyright statement to Your modifications and
125
+ may provide additional or different license terms and conditions
126
+ for use, reproduction, or distribution of Your modifications, or
127
+ for any such Derivative Works as a whole, provided Your use,
128
+ reproduction, and distribution of the Work otherwise complies with
129
+ the conditions stated in this License.
130
+
131
+ 5. Submission of Contributions. Unless You explicitly state otherwise,
132
+ any Contribution intentionally submitted for inclusion in the Work
133
+ by You to the Licensor shall be under the terms and conditions of
134
+ this License, without any additional terms or conditions.
135
+ Notwithstanding the above, nothing herein shall supersede or modify
136
+ the terms of any separate license agreement you may have executed
137
+ with Licensor regarding such Contributions.
138
+
139
+ 6. Trademarks. This License does not grant permission to use the trade
140
+ names, trademarks, service marks, or product names of the Licensor,
141
+ except as required for reasonable and customary use in describing the
142
+ origin of the Work and reproducing the content of the NOTICE file.
143
+
144
+ 7. Disclaimer of Warranty. Unless required by applicable law or
145
+ agreed to in writing, Licensor provides the Work (and each
146
+ Contributor provides its Contributions) on an "AS IS" BASIS,
147
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
148
+ implied, including, without limitation, any warranties or conditions
149
+ of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
150
+ PARTICULAR PURPOSE. You are solely responsible for determining the
151
+ appropriateness of using or redistributing the Work and assume any
152
+ risks associated with Your exercise of permissions under this License.
153
+
154
+ 8. Limitation of Liability. In no event and under no legal theory,
155
+ whether in tort (including negligence), contract, or otherwise,
156
+ unless required by applicable law (such as deliberate and grossly
157
+ negligent acts) or agreed to in writing, shall any Contributor be
158
+ liable to You for damages, including any direct, indirect, special,
159
+ incidental, or consequential damages of any character arising as a
160
+ result of this License or out of the use or inability to use the
161
+ Work (including but not limited to damages for loss of goodwill,
162
+ work stoppage, computer failure or malfunction, or any and all
163
+ other commercial damages or losses), even if such Contributor
164
+ has been advised of the possibility of such damages.
165
+
166
+ 9. Accepting Warranty or Additional Liability. While redistributing
167
+ the Work or Derivative Works thereof, You may choose to offer,
168
+ and charge a fee for, acceptance of support, warranty, indemnity,
169
+ or other liability obligations and/or rights consistent with this
170
+ License. However, in accepting such obligations, You may act only
171
+ on Your own behalf and on Your sole responsibility, not on behalf
172
+ of any other Contributor, and only if You agree to indemnify,
173
+ defend, and hold each Contributor harmless for any liability
174
+ incurred by, or claims asserted against, such Contributor by reason
175
+ of your accepting any such warranty or additional liability.
176
+
177
+ END OF TERMS AND CONDITIONS
@@ -0,0 +1,56 @@
1
+ [![npm version](https://badge.fury.io/js/less.svg)](http://badge.fury.io/js/less) [![Build Status](https://travis-ci.org/less/less.js.svg?branch=master)](https://travis-ci.org/less/less.js)
2
+ [![Dependencies](https://david-dm.org/less/less.js.svg)](https://david-dm.org/less/less.js) [![devDependency Status](https://david-dm.org/less/less.js/dev-status.svg)](https://david-dm.org/less/less.js#info=devDependencies) [![optionalDependency Status](https://david-dm.org/less/less.js/optional-status.svg)](https://david-dm.org/less/less.js#info=optionalDependencies)
3
+ [![Sauce Test Status](https://saucelabs.com/browser-matrix/less.svg)](https://saucelabs.com/u/less) [![Build status](https://ci.appveyor.com/api/projects/status/bx2qspy3qbuxpl9q/branch/master?svg=true)](https://ci.appveyor.com/project/lukeapage/less-js/branch/master)
4
+
5
+ # [Less.js](http://lesscss.org)
6
+
7
+ > The **dynamic** stylesheet language. [http://lesscss.org](http://lesscss.org).
8
+
9
+ This is the JavaScript, official, stable version of Less.
10
+
11
+ ###### :point_right: [![Join the chat at https://gitter.im/less/less.js](https://badges.gitter.im/Join%20Chat.svg)](https://gitter.im/less/less.js?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge) <sup>Chat with Less.js users</sup>
12
+
13
+
14
+ ## Getting Started
15
+
16
+ Options for adding Less.js to your project:
17
+
18
+ * Install with [npm](https://npmjs.org): `npm install less`
19
+ * [Download the latest release][download]
20
+ * Clone the repo: `git clone https://github.com/less/less.js.git`
21
+
22
+ ## More information
23
+
24
+ For general information on the language, configuration options or usage visit [lesscss.org](http://lesscss.org).
25
+
26
+ Here are other resources for using Less.js:
27
+
28
+ * [stackoverflow.com][so] is a great place to get answers about Less.
29
+ * [Less.js Issues][issues] for reporting bugs
30
+
31
+
32
+ ## Contributing
33
+ Please read [CONTRIBUTING.md](CONTRIBUTING.md). Add unit tests for any new or changed functionality. Lint and test your code using [Grunt](http://gruntjs.com).
34
+
35
+ ### Reporting Issues
36
+
37
+ Before opening any issue, please search for existing issues and read the [Issue Guidelines](https://github.com/necolas/issue-guidelines), written by [Nicolas Gallagher](https://github.com/necolas). After that if you find a bug or would like to make feature request, [please open a new issue][issues].
38
+
39
+ Please report documentation issues in [the documentation project](https://github.com/less/less-docs).
40
+
41
+ ### Development
42
+
43
+ Read [Developing Less](http://lesscss.org/usage/#developing-less).
44
+
45
+ ## Release History
46
+ See the [changelog](CHANGELOG.md)
47
+
48
+ ## [License](LICENSE)
49
+
50
+ Copyright (c) 2009-2016 [Alexis Sellier](http://cloudhead.io) & The Core Less Team
51
+ Licensed under the [Apache License](LICENSE).
52
+
53
+
54
+ [so]: http://stackoverflow.com/questions/tagged/twitter-bootstrap+less "StackOverflow.com"
55
+ [issues]: https://github.com/less/less.js/issues "GitHub Issues for Less.js"
56
+ [download]: https://github.com/less/less.js/zipball/master "Download Less.js"
@@ -0,0 +1,32 @@
1
+ # Test against these versions of Node.js.
2
+ environment:
3
+ matrix:
4
+ - nodejs_version: "0.10"
5
+ - nodejs_version: "0.12"
6
+ - nodejs_version: "4"
7
+
8
+ # Install scripts. (runs after repo cloning)
9
+ install:
10
+ # Get the latest stable version of Node 0.STABLE.latest
11
+ - ps: Install-Product node $env:nodejs_version
12
+ # Use npm v2
13
+ - npm -g install npm@2
14
+ - set PATH=%APPDATA%\npm;%PATH%
15
+ - npm -v
16
+ # Typical npm stuff.
17
+ - npm install
18
+ # Grunt-specific stuff.
19
+ - npm install -g grunt-cli
20
+
21
+ # Post-install test scripts.
22
+ test_script:
23
+ # Output useful info for debugging.
24
+ - node --version && npm --version
25
+ # Run test
26
+ - grunt test
27
+
28
+ # Don't actually build.
29
+ build: off
30
+
31
+ # Set build version format here instead of in the admin panel.
32
+ version: "{build}"
@@ -0,0 +1,3979 @@
1
+ @bg: #f01;
2
+ @white: #fff;
3
+ @grey: #eee;
4
+ @black: #000;
5
+ @blue: #000;
6
+ @accent_colour: #000;
7
+ @light_grey: #eee;
8
+ @dark_grey: #eee;
9
+ @yellow: #422;
10
+ @red: #ff0000;
11
+ @colour_positive: #ff0000;
12
+ @colour_negative: #ff0000;
13
+
14
+ .box_shadow (...) {
15
+ }
16
+ .text_shadow (...) {
17
+ }
18
+ .border_radius (...) {
19
+ }
20
+ .border_radius_top_left (...) {
21
+ }
22
+ .border_radius_top_right (...) {
23
+ }
24
+ .border_radius_bottom_right (...) {
25
+ }
26
+ .border_radius_bottom_left (...) {
27
+ }
28
+ .border_radius_top (...) {
29
+ }
30
+ .border_radius_right (...) {
31
+ }
32
+ .border_radius_bottom (...) {
33
+ }
34
+ .border_radius_left (...) {
35
+ }
36
+ div.browse {
37
+ margin: 0 0 20px;
38
+ &.class {
39
+ padding: 0;
40
+ }
41
+ div.header {
42
+ padding: 10px 10px 9px; text-align: left; background: @bg url('/images/panel_header_bg.png') repeat-x top left;
43
+ border-bottom: 1px solid (@bg * 0.66 + @black * 0.33); line-height: 1; height: 18px;
44
+ .border_radius_top(3); color: @light_grey;
45
+ h3 { font-size: 16px; margin: 0; color: @white; .text_shadow(1, 1, 0, @bg * 0.66 + @black * 0.33); }
46
+ span.filter {
47
+ float: left; display: block; overflow: hidden; position: relative; z-index: 5;
48
+ a {
49
+ margin: 0 1px 0 0; display: block; float: left; padding: 0 8px; height: 18px; font-weight: bold; font-size: 10px; line-height: 18px;
50
+ text-transform: uppercase; background: url('/images/transparent_backgrounds/black_50.png'); color: @light_grey; text-decoration: none; position: relative; z-index: 3;
51
+ .active {
52
+ background: @white; color: @black; z-index: 4;
53
+ :hover { color: @black; }
54
+ }
55
+ :hover { color: @white; }
56
+ :first-child { .border_radius_left(2); }
57
+ :last-child { .border_radius_right(2); margin-right: 0; }
58
+ }
59
+ }
60
+
61
+ span.filter.dropdown {
62
+ margin: 0; position: relative; overflow: visible;
63
+ a {
64
+ .border_radius(2); background: @white; color: @black; margin: 0; position: relative; padding-right: 25px;
65
+ img { float: left; margin: 4px 5px 0 0; }
66
+ b.arrow {
67
+ float: right; display: block; height: 0; width: 0; border: 5px solid transparent; border-top: 5px solid @black; border-bottom: none;
68
+ position: absolute; top: 6px; right: 10px;
69
+ }
70
+ :hover {
71
+ background: @accent_colour; color: @white;
72
+ b.arrow { border-top: 5px solid @white; }
73
+ }
74
+ }
75
+ ul {
76
+ position: absolute; top: 100%; left: 0; margin: 1px 0 0; padding: 0; background: @white; .border_radius(2);
77
+ .box_shadow(0, 1, 1, @black);
78
+ li {
79
+ list-style: none; display: block; padding: 0; margin: 0;
80
+ a {
81
+ display: block; height: 18px; line-height: 18px; color: @black; font-size: 10px; text-transform: uppercase; background: transparent;
82
+ border-bottom: 1px solid (@light_grey * 0.66 + @white * 0.33); float: none; margin: 0; .border_radius(0); white-space: nowrap;
83
+ :hover { background: url('/images/transparent_backgrounds/accent_colour_25.png'); color: @black; }
84
+ }
85
+ :last-child {
86
+ a { border: none; }
87
+ }
88
+ }
89
+ }
90
+ }
91
+ span.filter.dropdown.sort { float: left; margin: 0 0 0 10px; }
92
+ span.filter.dropdown.localisation { float: left; margin: 0 0 0 10px; }
93
+ a.more {
94
+ float: right; color: @white; .text_shadow(1, 1, 0, @bg * 0.66 + @black * 0.33); font-size: 14px; font-weight: bold;
95
+ position: relative; top: 2px;
96
+ :hover { text-decoration: none; }
97
+ }
98
+ }
99
+ > ul {
100
+ margin: 0; background: @white; padding: 10px 0 0 10px; .border_radius(3); position: relative;
101
+ li {
102
+ display: block; float: left; list-style: none; margin: 0 10px 10px 0; padding: 5px; position: relative;
103
+ background: @white; width: 130px; border: 1px solid (@light_grey * 0.33 + @white * 0.66); .border_radius(2);
104
+ a.remove {
105
+ position: absolute; height: 16px; width: 16px; padding: 3px; background: @accent_colour;
106
+ .border_radius(99); display: none; z-index: 3; top: -8px; right: -8px;
107
+ img { vertical-align: middle; }
108
+ }
109
+ div.thumbnail {
110
+ .border_radius_top(3); position: relative; z-index: 3;
111
+ .marker {
112
+ position: absolute; padding: 2px; .border_radius(2); z-index: 3;
113
+ background: url('/images/transparent_backgrounds/white_75.png'); height: 12px; width: 12px;
114
+ }
115
+ .marker.coupon {
116
+ height: auto; width: auto; top: 10px; right: -3px; padding: 0; background: transparent; overflow: hidden; position: absolute;
117
+ b {
118
+ display: block; height: 0; width: 0; float: left; border: 14px solid transparent; border-top: 14px solid @accent_colour;
119
+ border-bottom: none; border-right: none; float: left;
120
+ }
121
+ span {
122
+ color: @white; font-size: 10px; font-weight: bold; text-transform: uppercase; height: 14px; line-height: 14px; display: block;
123
+ padding: 0 4px 0 2px; background: @accent_colour; .text_shadow(1, 1, 0px, (@accent_colour * 0.75 + @black * 0.25)); margin: 0 0 0 14px;
124
+ }
125
+ }
126
+ .marker.video {
127
+ position: absolute; left: 50%; top: 50%; background: @white; width: 10px; height: 10px;
128
+ b { display: block; width: 0; height: 0; border: 5px solid transparent; border-left: 10px solid @black; border-right: none; }
129
+ }
130
+ .marker.endorsed_by_me { background: none; padding: 0; right: 0; bottom: -32px; .border_radius(2); background: @white; }
131
+ a.thumbnail {
132
+ display: block; overflow: hidden; position: relative; text-align: center;
133
+ img { position: relative; display: block; margin: auto; }
134
+ }
135
+ }
136
+ div.text {
137
+ margin: 3px 0 0; display: block;
138
+ a { text-decoration: none; }
139
+ a.title {
140
+ display: block; text-decoration: none; font-weight: bold; font-size: 12px; line-height: 16px;
141
+ white-space: nowrap; height: 16px; overflow: hidden;
142
+ :before {
143
+ display: block; height: 32px; width: 20px; content: " "; float: right; right: -15px; top: -8px;
144
+ background: @white; position: relative; z-index: 1; .box_shadow(-5, 0, 10, @white);
145
+ }
146
+ }
147
+ small {
148
+ font-size: 11px; line-height: 13px; color: @grey; display: block; height: 13px; overflow: hidden; white-space: nowrap;
149
+ a { font-weight: bold; }
150
+ :before {
151
+ display: block; height: 32px; width: 20px; content: " "; float: right; right: -15px; top: -8px;
152
+ background: @white; position: relative; z-index: 1; .box_shadow(-5, 0, 10, @white);
153
+ }
154
+ }
155
+ }
156
+ :hover {
157
+ background: @accent_colour;
158
+ a.remove { display: block; }
159
+ div.thumbnail {
160
+ a.marker.remove, a.marker.video {
161
+ b { display: inline-block; }
162
+ }
163
+ a.marker.video { .box_shadow(0, 0, 2, @black); }
164
+ }
165
+ div.text {
166
+ a { color: @white; }
167
+ a.title:before { background: @accent_colour; .box_shadow(-5, 0, 10, @accent_colour); }
168
+ small {
169
+ color: @white * 0.75 + @accent_colour * 0.25;
170
+ :before { background: @accent_colour; .box_shadow(-5, 0, 10, @accent_colour); }
171
+ }
172
+ }
173
+ div.footer a { color: @white; }
174
+ }
175
+ }
176
+ > li.ad div.thumbnail a.thumbnail {
177
+ width: 130px; height: 97px;
178
+ img { width: 100%; height: 100%; }
179
+ }
180
+ > li.brand div.thumbnail a.thumbnail {
181
+ width: 120px; height: 87px; padding: 5px; background: @white; .border_radius(2);
182
+ img { max-width: 120px; max-height: 87px; }
183
+ }
184
+ li.paginate {
185
+ margin-bottom: 0;
186
+ a {
187
+ display: block; position: relative; text-decoration: none; height: 131px;
188
+ div.arrow {
189
+ background: #81c153 url('/images/button_bg.png') repeat-x left top; border: 1px solid (@accent_colour * 0.75 + @black * 0.25);
190
+ height: 44px; .border_radius(99); width: 44px; margin: 0 auto; position: relative; top: 32px;
191
+ b { text-indent: -9000px; display: block; border: 10px solid transparent; width: 0; height: 0; position: relative; top: 12px; }
192
+ }
193
+ div.label {
194
+ position: absolute; bottom: 5px; left: 0; right: 0; line-height: 13px;
195
+ color: @accent_colour * 0.85 + @black * 0.15; text-decoration: none;
196
+ font-weight: bold; font-size: 12px; text-align: center;
197
+ }
198
+ :hover {
199
+ div.arrow { background: #abd56e url('/images/button_bg.png') repeat-x left -44px; }
200
+ }
201
+ }
202
+ :hover { background: transparent; }
203
+ }
204
+ li.paginate.previous a div b { border-right: 15px solid @white; border-left: none; left: 12px; }
205
+ li.paginate.next a div b { border-left: 15px solid @white; border-right: none; left: 16px; }
206
+ }
207
+ > div.footer {
208
+ padding: 9px 10px 10px; background: @light_grey * 0.75 + @white * 0.25; overflow: hidden;
209
+ border-top: 1px solid @light_grey; .border_radius_bottom(3);
210
+ div.info {
211
+ float: left; color: @grey;
212
+ strong { color: @black; font-weight: normal; }
213
+ }
214
+ div.pagination {
215
+ float: right;
216
+ > * {
217
+ display: inline-block; line-height: 1; padding: 0 6px; line-height: 18px; height: 18px; background: @white;
218
+ .border_radius(3); text-decoration: none; font-weight: bold;
219
+ font-size: 10px; text-transform: uppercase;
220
+ }
221
+ a { color: @grey; }
222
+ a:hover { color: @black; }
223
+ span.disabled { color: @light_grey; }
224
+ span.current { color: @white; background: @bg; border: none; }
225
+ span.current:hover { color: @white; }
226
+ }
227
+ }
228
+ }
229
+ div.browse.with_categories { margin: 0 0 0 160px; }
230
+ div.browse.with_options > ul { .border_radius_top(0); }
231
+ div.browse.with_footer > ul { .border_radius_bottom(0); }
232
+ /* Browse List */
233
+ div.browse.list {
234
+ > ul {
235
+ margin: 0; min-height: 320px;
236
+ padding: 10px 0 0 10px; overflow: hidden;
237
+ > li {
238
+ display: block; list-style: none; margin: 0 10px 10px 0; padding: 5px;
239
+ .border_radius(3); position: relative; line-height: normal;
240
+ .marker {
241
+ position: absolute; padding: 2px; .border_radius(2);
242
+ background: url('/images/transparent_backgrounds/white_75.png');
243
+ img { height: 12px; width: 12px; }
244
+ }
245
+ img.marker { height: 12px; width: 12px; }
246
+ span.marker.new {
247
+ color: black; left: -5px; top: -5px; background: none; background-color: @white * 0.1 + @yellow * 0.6 + @red * 0.3; line-height: 1; padding: 2px 5px;
248
+ font-weight: bold;
249
+ }
250
+ a.marker.media_type {
251
+ display: inline-block; text-decoration: none; top: 39px; left: 8px;
252
+ font-size: 10px;
253
+ b { font-weight: normal; margin: 0 0 0 2px; line-height: 1; display: none; }
254
+ img { vertical-align: middle; }
255
+ }
256
+ a.thumbnail {
257
+ float: left;
258
+ width: 68px; display: block; overflow: hidden;
259
+ border: 1px solid @light_grey;
260
+ :hover { border-color: @accent_colour; }
261
+ }
262
+ span.title_brand {
263
+ display: block; margin: 0 0 2px 75px;
264
+ a { margin: 0; display: inline; }
265
+ a.brand_name { font-weight: normal; font-size: 12px; }
266
+ }
267
+ a.ad_title {
268
+ font-weight: bold; font-size: 14px; margin: 0 0 0 75px; display: block;
269
+ }
270
+ a.brand_name {
271
+ font-weight: bold; font-size: 14px; margin: 0 0 0 75px; display: block;
272
+ }
273
+ small {
274
+ display: block; color: @grey; margin: 0 0 0 75px; font-size: 12px;
275
+ }
276
+ small.brand_name { display: inline; margin: 0; }
277
+ ul.chart {
278
+ margin: 0 0 0 80px;
279
+ height: 39px;
280
+ }
281
+ ul.networks {
282
+ margin: 3px 0 0 75px; padding: 0; overflow: hidden;
283
+ li { display: block; float: left; margin: 0 5px 0 0; line-height: 1; }
284
+ }
285
+ div.points {
286
+ display: none;
287
+ font-size: 12px; text-align: right;
288
+ label { color: @grey; }
289
+ }
290
+ a.remove { bottom: -3px; right: -3px; }
291
+ }
292
+ li.ad {
293
+ a.thumbnail { height: 51px; }
294
+ span.title_brand {
295
+ small.brand_name {
296
+ display: block;
297
+ }
298
+ }
299
+ }
300
+ li.brand {
301
+ a.thumbnail { height: 68px; }
302
+ }
303
+ }
304
+ }
305
+ div.browse.list.with_options ul { .border_radius_top(0); }
306
+ div.browse.list.with_footer ul { .border_radius_bottom(0); }
307
+ div.browse.list.cols_2 {
308
+ > ul {
309
+ > li {
310
+ width: 285px; float: left;
311
+ :hover {
312
+ background: @white;
313
+ }
314
+ }
315
+ }
316
+ }
317
+ div.browse.ads.list {
318
+ > ul {
319
+ > li {
320
+ height: 53px;
321
+ a.thumbnail {
322
+ height: 51px;
323
+ }
324
+ }
325
+ }
326
+ }
327
+ div.browse.brands.list {
328
+ > ul {
329
+ > li {
330
+ height: 68px;
331
+ a.thumbnail {
332
+ height: 66px;
333
+ }
334
+ }
335
+ }
336
+ }
337
+
338
+ /* Categories List */
339
+ #categories {
340
+ margin: 40px 0 0; width: 160px; float: left; position: relative; z-index: 1;
341
+ ul {
342
+ margin: 0; padding: 10px 0 0;
343
+ li {
344
+ list-style: none; margin: 0; padding: 0; font-size: 14px;
345
+ a { color: @grey; display: block; padding: 5px 10px 5px 15px; text-decoration: none; .border_radius_left(3); }
346
+ a:hover { color: @black; background: @light_grey * 0.15 + @white * 0.85; }
347
+ }
348
+ .all a { font-weight: bold; }
349
+ .current a {
350
+ background: @white; color: @black; border: 1px solid (@light_grey * 0.25 + @white * 0.75); border-right: none; border-left: 5px solid @bg;
351
+ padding-left: 10px;
352
+ }
353
+ }
354
+ }
355
+
356
+ /* Ads > Show */
357
+ #ad {
358
+ div.header {
359
+ overflow: hidden;
360
+ h3 { font-size: 16px; margin: 0 0 3px; }
361
+ small {
362
+ a.category { font-weight: bold; color: @accent_colour; }
363
+ span.networks img { position: relative; top: 3px; }
364
+ }
365
+ span.brand {
366
+ float: right; color: @white;
367
+ a.brand_name { font-weight: bold; color: @accent_colour; }
368
+ }
369
+ }
370
+ div.content {
371
+ padding: 0; position: relative;
372
+ a.toggle_size {
373
+ display: block; .border_radius(3); background-color: @black; padding: 0 5px 0 26px;
374
+ background-position: 5px center; background-repeat: no-repeat; text-decoration: none; margin: 5px 5px 0 0;
375
+ position: absolute; top: 0; right: 0; line-height: 25px; z-index: 45;
376
+ }
377
+ img.creative { margin: 0 auto; max-width: 540px; display: block; }
378
+ object { position: relative; z-index: 44; }
379
+ object.video { line-height: 0; font-size: 0; }
380
+ object embed { position: relative; z-index: 45; line-height: 0; font-size: 0; }
381
+ }
382
+ div.content.not_video {
383
+ padding: 40px; text-align: center;
384
+ * { margin-left: auto; margin-right: auto; }
385
+ object.flash { margin-bottom: 0; }
386
+ }
387
+ div.footer {
388
+ padding: 0;
389
+ div.vote_views {
390
+ padding: 5px 10px; overflow: hidden;
391
+ div.share { float: right; margin: 2px 0 0 0; }
392
+ #login_register_msg, #encourage_vote_msg { line-height: 22px; font-weight: bold; color: @black; }
393
+ }
394
+ }
395
+ }
396
+ #sidebar {
397
+ #meta {
398
+ table {
399
+ margin: 0;
400
+ tr:last-child td { padding-bottom: 0; }
401
+ td {
402
+ padding: 0 0 5px;
403
+ ul.networks {
404
+ margin: 0; padding: 0;
405
+ li {
406
+ list-style: none; display: inline;
407
+ }
408
+ li {
409
+ }
410
+ }
411
+ }
412
+ td.label { color: @grey; white-space: nowrap; width: 1%; text-align: right; padding-right: 5px; }
413
+ }
414
+ }
415
+ }
416
+
417
+ /* Voting */
418
+ div.voted {
419
+ font-size: 12px; line-height: 22px; color: @black; display: inline-block; font-weight: bold;
420
+ img { float: left; margin-right: 5px; padding: 3px; .border_radius(3); }
421
+ }
422
+ #voted_up {
423
+ img { background: @colour_positive * 0.66 + @bg * 0.15; }
424
+ }
425
+ #voted_down {
426
+ img { background: @colour_negative * 0.66 + @bg * 0.15; }
427
+ }
428
+ #encourage_comment {
429
+ display: inline-block; line-height: 22px; font-weight: bold;
430
+ }
431
+ #vote {
432
+ overflow: hidden; font-size: 12px; line-height: 22px; color: @black; float: left;
433
+ a {
434
+ color: @white; font-weight: bold; overflow: hidden; display: block;
435
+ width: 16px; text-decoration: none; text-align: center; font-size: 10px; padding: 3px; text-transform: uppercase;
436
+ }
437
+ a.up {
438
+ float: left; background: @colour_positive * 0.66 + @bg * 0.15; .border_radius_left(3);
439
+ :hover { background: @colour_positive * 0.85 + @bg * 0.15; }
440
+ }
441
+ a.down {
442
+ float: left; background: @colour_negative * 0.66 + @bg * 0.15; .border_radius_right(3);
443
+ margin: 0 5px 0 1px;
444
+ :hover { background: @colour_negative * 0.85 + @bg * 0.15; }
445
+ }
446
+ }
447
+ #vote.disabled {
448
+ a.up {
449
+ background: (@colour_positive * 0.66 + @bg * 0.15) * 0.15 + @grey * 0.85;
450
+ :hover { background: (@colour_positive * 0.85 + @bg * 0.15) * 0.25 + @grey * 0.75; }
451
+ }
452
+ a.down {
453
+ background: (@colour_negative * 0.66 + @bg * 0.15) * 0.15 + @grey * 0.85;
454
+ :hover { background: (@colour_negative * 0.85 + @bg * 0.15) * 0.25 + @grey * 0.75; }
455
+ }
456
+ }
457
+
458
+ /* Panels */
459
+ div.panel {
460
+ margin: 0 0 20px; position: relative; .box_shadow(0, 0, 3, @light_grey * 0.66 + @white * 0.33); .border_radius(3);
461
+ > div.header {
462
+ background: @bg url('/images/panel_header_bg.png') repeat-x top left; border-bottom: 1px solid (@bg * 0.66 + @black * 0.33);
463
+ padding: 5px 10px 4px; .border_radius_top(3); min-height: 18px;
464
+ h2 { font-size: 16px; margin: 0; color: @white; .text_shadow(1, 1, 0, @bg * 0.66 + @black * 0.33); }
465
+ h3 { color: @white; font-size: 14px; margin: 0; line-height: 18px; .text_shadow(1, 1, 0, @bg * 0.66 + @black * 0.33); }
466
+ small { display: block; font-size: 12px; color: @light_grey * 0.25 + @white * 0.75; }
467
+ span.filter {
468
+ float: left; display: block; overflow: hidden; position: relative; z-index: 5;
469
+ a {
470
+ margin: 0 1px 0 0; display: block; float: left; padding: 0 8px; height: 18px; font-weight: bold; font-size: 10px; line-height: 18px;
471
+ text-transform: uppercase; background: url('/images/transparent_backgrounds/black_50.png'); color: @light_grey; text-decoration: none; position: relative; z-index: 3;
472
+ }
473
+ a:first-child { .border_radius_left(2); }
474
+ a:last-child { .border_radius_right(2); margin-right: 0; }
475
+ a.active { background: @white; color: @black; z-index: 4; }
476
+ a:hover { color: @white; }
477
+ a.active:hover { color: @black; }
478
+ }
479
+
480
+ span.filter.dropdown {
481
+ margin: 0; position: relative; overflow: visible;
482
+ a {
483
+ .border_radius(2); background: @white; color: @black; margin: 0; position: relative; padding-right: 25px;
484
+ img { float: left; margin: 4px 5px 0 0; }
485
+ b.arrow {
486
+ float: right; display: block; height: 0; width: 0; border: 5px solid transparent; border-top: 5px solid @black; border-bottom: none;
487
+ position: absolute; top: 6px; right: 10px;
488
+ }
489
+ :hover {
490
+ background: @accent_colour; color: @white;
491
+ b.arrow { border-top: 5px solid @white; }
492
+ }
493
+ }
494
+
495
+ ul {
496
+ position: absolute; top: 100%; left: 0; margin: 1px 0 0; padding: 0; background: @white; .border_radius(2);
497
+ .box_shadow(0, 1, 1, @black);
498
+ li {
499
+ list-style: none; display: block; padding: 0; margin: 0;
500
+ a {
501
+ display: block; height: 18px; line-height: 18px; color: @black; font-size: 10px; text-transform: uppercase; background: transparent;
502
+ border-bottom: 1px solid (@light_grey * 0.66 + @white * 0.33); float: none; margin: 0; .border_radius(0); white-space: nowrap;
503
+ :hover { background: url('/images/transparent_backgrounds/accent_colour_25.png'); color: @black; }
504
+ }
505
+ }
506
+ li:last-child {
507
+ a { border: none; }
508
+ }
509
+ }
510
+ }
511
+ span.filter.dropdown.sort { float: left; margin: 0 0 0 10px; }
512
+ span.filter.dropdown.localisation { float: left; margin: 0 0 0 10px; }
513
+
514
+ a.more {
515
+ float: right; color: @white; .text_shadow(1, 1, 0, @bg * 0.66 + @black * 0.33); font-size: 14px; font-weight: bold;
516
+ position: relative; top: 2px;
517
+ :hover { text-decoration: none; }
518
+ }
519
+ }
520
+ > div.content {
521
+ background: @white; padding: 10px;
522
+ .no_padding { padding: 0; }
523
+ }
524
+ > div.footer {
525
+ background: @light_grey * 0.33 + @white * 0.66; border-top: 1px solid (@light_grey * 0.5 + @white * 0.5);
526
+ padding: 4px 10px 5px; .border_radius_bottom(3);
527
+ }
528
+ }
529
+ div.panel.no_footer div.content { .border_radius_bottom(3); }
530
+ div.panel.no_header div.content { .border_radius_top(3); }
531
+ div.panel.collapsable {
532
+ div.header {
533
+ cursor: pointer;
534
+ b.toggle { float: right; border: 5px solid transparent; border-bottom: 5px solid @white; border-top: none; display: block; width: 0; height: 0; margin: 6px 0 0 0; }
535
+ }
536
+ div.header:hover {
537
+ background-color: @bg * 0.75 + @white * 0.25;
538
+ }
539
+ }
540
+ div.panel.collapsed {
541
+ div.header {
542
+ border-bottom: none; .border_radius(3);
543
+ b.toggle { border-bottom: none; border-top: 5px solid @white; }
544
+ }
545
+ div.blank { border-bottom: none; .border_radius_bottom(3); }
546
+ div.content, div.footer { display: none; }
547
+ }
548
+
549
+
550
+ /* Sidebar Actions */
551
+ #sidebar {
552
+ #actions {
553
+ .box_shadow(0, 0, 0, transparent);
554
+ div.content {
555
+ background: url('/images/transparent_backgrounds/accent_colour_10.png'); text-align: center;
556
+ p.endorsement {
557
+ margin: 0 0 10px; font-size: 14px; font-weight: bold;
558
+ small { font-weight: normal; line-height: inherit; margin: 10px 0 0; }
559
+ :last-child { margin: 0; }
560
+ }
561
+ div.share { margin: 5px 0 0; }
562
+ a.button {
563
+ font-size: 16px; line-height: normal; height: auto; padding: 5px 10px 5px 35px; font-weight: bold; margin: 0; position: relative;
564
+ img { position: absolute; top: 3px; left: 6px; }
565
+ }
566
+ div.flash.notice {
567
+ margin: 10px 0 0; font-size: 22px;
568
+ small { font-weight: normal; margin: 0 0 10px; }
569
+ }
570
+ div.flash.notice.done { margin: 0; }
571
+ small {
572
+ display: block; margin: 10px 0 0; font-size: 11px; color: #808080; line-height: 12px;
573
+ img.favicon { vertical-align: middle; }
574
+ }
575
+ div.blank {
576
+ border: none; background: none; padding: 10px 0 0; border-top: 1px solid (@accent_colour * 0.5 + @white * 0.5);
577
+ margin: 10px 0 0;
578
+ }
579
+ }
580
+ }
581
+ }
582
+
583
+ /* People Lists */
584
+ ul.people {
585
+ margin: 0; padding: 10px 0 0 10px; background: @white;
586
+ > li {
587
+ display: block; margin: 0 10px 10px 0; float: left; padding: 2px; width: 57px; position: relative;
588
+ .border_radius(2); background: @white; list-style: none; border: 1px solid (@light_grey * 0.33 + @white * 0.66);
589
+ a.avatar {
590
+ display: block; width: 59px; height: 59px; overflow: hidden;
591
+ img { width: 100%; height: 100%; }
592
+ }
593
+ a.name { display: block; font-size: 10px; text-align: center; }
594
+ :hover {
595
+ background: @accent_colour;
596
+ a.name { color: @white; }
597
+ }
598
+ }
599
+ }
600
+ ul.people.list {
601
+ padding: 0;
602
+ > li {
603
+ margin: 0 0 10px; padding: 0 0 10px; overflow: hidden; float: none; width: auto; .border_radius(0);
604
+ border: none; border-bottom: 1px solid (@light_grey * 0.33 + @white * 0.66);
605
+ span.points {
606
+ float: right; display: block; padding: 5px; background: @light_grey * 0.15 + @white * 0.85; line-height: 1;
607
+ text-align: center; width: 50px; height: 30px; .border_radius(3); margin: 0 0 0 10px;
608
+ strong { display: block; color: @black; font-size: 16px; margin: 2px 0 0; }
609
+ label { color: @grey; text-transform: uppercase; font-size: 10px; }
610
+ label.long { display: block; }
611
+ label.short { display: none; }
612
+ }
613
+ a.avatar { float: left; width: 40px; height: 40px; }
614
+ a.name { font-size: 14px; font-weight: bold; margin: 0 0 0 50px; text-align: left; }
615
+ a.name.long { display: inline; }
616
+ a.name.short { display: none; }
617
+ span.networks {
618
+ display: block; margin: 0 0 0 50px;
619
+ img.favicon { vertical-align: middle; }
620
+ }
621
+ :hover {
622
+ background: transparent;
623
+ a.name { color: @accent_colour * 0.85 + @black * 0.15; }
624
+ }
625
+ :last-child { padding-bottom: 0; border-bottom: none; margin-bottom: 0; }
626
+ }
627
+ }
628
+ ul.people.list.small {
629
+ > li {
630
+ span.points {
631
+ padding: 3px 6px; height: 18px; font-size: 9px; line-height: 17px; width: 60px;
632
+ strong { font-size: 12px; margin: 0; display: inline; }
633
+ label { font-size: 9px; }
634
+ label.long { display: none; }
635
+ label.short { display: inline; }
636
+ }
637
+ a.avatar { width: 24px; height: 24px; }
638
+ a.name { display: inline; line-height: 24px; margin: 0 0 0 5px; font-size: 12px; height: 24px; }
639
+ a.name.long { display: none; }
640
+ a.name.short { display: inline; }
641
+ span.networks { display: inline; margin: 0; }
642
+ :last-child { padding-bottom: 0; border-bottom: none; margin-bottom: 0; }
643
+ }
644
+ }
645
+ ul.people.tiled {
646
+ > li {
647
+ width: 28px; padding: 2px;
648
+ a.avatar { width: 24px; height: 24px; background: @white; padding: 2px; }
649
+ a.name, small, span.networks, span.points { display: none; }
650
+ }
651
+ }
652
+
653
+ /* Comments */
654
+ #comments {
655
+ ul {
656
+ margin: 0 0 20px; padding: 0;
657
+ li {
658
+ display: block; list-style: none; padding: 0; margin: 0 0 10px;
659
+ span.meta {
660
+ margin: 0; overflow: hidden; display: block;
661
+ small { font-size: 12px; color: @light_grey; float: right; line-height: 16px; display: inline-block; }
662
+ a.avatar {
663
+ display: inline-block; height: 16px; width: 16px; position: relative; top: 3px;
664
+ img { height: 100%; width: 100%; }
665
+ }
666
+ a.name { font-weight: bold; line-height: 16px; display: inline-block; }
667
+ span.inactive { color: @grey; font-weight: bold; line-height: 16px; display: inline-block; }
668
+ }
669
+ b.tail {
670
+ display: block; width: 0; height: 0; margin: 3px 0 0 10px; border: 5px solid transparent; border-top: none;
671
+ border-bottom: 5px solid @white; position: relative; z-index: 2;
672
+ }
673
+ blockquote {
674
+ margin: 0; padding: 10px; .border_radius(3); font-style: normal; background: @white;
675
+ color: @dark_grey; .box_shadow(0, 0, 3, @light_grey * 0.66 + @white * 0.33);
676
+ }
677
+ }
678
+ }
679
+ form {
680
+ margin: 0;
681
+ textarea { width: 500px; }
682
+ }
683
+ }
684
+
685
+ /* Sidebar Categories */
686
+ #sidebar {
687
+ #categories {
688
+ margin: 0 0 20px;
689
+ width: auto;
690
+ p { margin: 0; }
691
+ }
692
+ }
693
+
694
+ #sidebar {
695
+ #ads > ul li, #recommendations > ul li {
696
+ width: 81px;
697
+ div.thumbnail {
698
+ a.thumbnail { height: 60px; width: 81px; }
699
+ }
700
+ div.text {
701
+ a.title { font-size: 11px; height: 14px; line-height: 14px; }
702
+ small { display: none; }
703
+ }
704
+ }
705
+ #brands > ul li {
706
+ width: 55px;
707
+ div.thumbnail {
708
+ a.thumbnail {
709
+ height: 45px; width: 45px;
710
+ img { max-height: 45px; max-width: 45px; }
711
+ }
712
+ }
713
+ div.text { display: none; }
714
+ }
715
+ }
716
+
717
+ /* My Account */
718
+ #accounts_controller {
719
+ #top {
720
+ #page_title {
721
+ #page_options {
722
+ a.button.public_profile {
723
+ float: right; font-size: 16px; line-height: 1; height: auto; padding: 8px 35px 8px 15px; position: relative;
724
+ b.arrow { display: block; height: 0; width: 0; position: absolute; top: 10px; right: 15px; border: 6px solid transparent; border-right: none; border-left: 6px solid @white; margin: 0; }
725
+ }
726
+ a.button.goto_dashboard {
727
+ float: right; font-size: 16px; line-height: 1; height: auto; padding: 8px 15px 8px 35px; margin-right: 5px; position: relative;
728
+ b.arrow { display: block; height: 0; width: 0; position: absolute; top: 10px; left: 15px; border: 6px solid transparent; border-left: none; border-right: 6px solid @white; margin: 0; }
729
+ }
730
+ }
731
+ }
732
+ }
733
+ #account_nav {
734
+ float: left; width: 200px; margin: 0 20px 0 0;
735
+ ul.nav {
736
+ margin: 0; padding: 0;
737
+ li {
738
+ margin: 0 0 5px; display: block; list-style: none; padding: 0;
739
+ a {
740
+ display: block; height: 30px; text-decoration: none; color: @white;
741
+ b {
742
+ border: 15px solid transparent; border-right: none; border-left: 10px solid transparent; width: 0;
743
+ height: 0; float: right; display: none;
744
+ }
745
+ span {
746
+ .border_radius(3); background: @bg; display: block;
747
+ line-height: 30px; padding: 0 10px; font-size: 14px; font-weight: bold; margin: 0 10px 0 0;
748
+ }
749
+ }
750
+ :hover {
751
+ a {
752
+ color: @white;
753
+ b { border-left-color: @bg; display: block; }
754
+ span { background: @bg; .border_radius_right(0); }
755
+ }
756
+ }
757
+ }
758
+ li.current a {
759
+ b { border-left-color: @accent_colour; display: block; }
760
+ span { background: @accent_colour; color: @white; .border_radius_right(0); }
761
+ }
762
+ }
763
+ }
764
+ #main {
765
+ > div {
766
+ margin: 0 0 20px;
767
+ form { margin: 0; }
768
+ }
769
+ #profile {
770
+ a.avatar {
771
+ float: left; display: block;
772
+ width: 70px; overflow: hidden; position: relative; text-decoration: none;
773
+ img { width: 100%; }
774
+ span {
775
+ display: block; line-height: 1; padding: 3px; margin: 5px 0 0; color: @white; background: @accent_colour;
776
+ .border_radius(3); .text_shadow(1, 1, 0, @grey);
777
+ text-align: center; font-size: 10px; font-weight: bold; text-transform: uppercase;
778
+ }
779
+ }
780
+ form {
781
+ margin: 0 0 0 90px;
782
+ h4 { margin: 10px 0 20px; border-bottom: 1px solid (@light_grey * 0.5 + @white * 0.5); padding: 0; color: @bg; font-size: 16px; }
783
+ ul.choices {
784
+ li { width: 30%; }
785
+ }
786
+ div.extra { margin-top: 20px; }
787
+ }
788
+ }
789
+
790
+ #networks {
791
+ ul { margin: 0 -10px -10px 0; padding: 0; overflow: hidden;
792
+ li:hover
793
+ {
794
+ background: @light_grey; display: block; float: left; width: 180px;
795
+ padding: 10px; margin: 0 10px 10px 0; list-style: none; .border_radius(3);
796
+ position: relative;
797
+ * { line-height: normal; }
798
+ img { vertical-align: middle; float: left; }
799
+ .name { font-weight: bold; font-size: 14px; display: block; margin: -2px 0 0 42px; }
800
+ small {
801
+ font-size: 12px; color: @grey; display: block; margin-left: 42px;
802
+ strong { color: @black; font-weight: normal; }
803
+ }
804
+ :hover {
805
+ }
806
+ }
807
+ li.installed {
808
+ background: @white;
809
+ border: 2px solid @accent_colour; padding: 8px;
810
+ }
811
+ li.unavailable {
812
+ .name { color: @black; }
813
+ :hover {
814
+ background: @light_grey;
815
+ }
816
+ }
817
+ li:hover {
818
+ background: @light_grey * 0.5 + @white * 0.5;
819
+ }
820
+ }
821
+ }
822
+ }
823
+ }
824
+
825
+ /* Shopping Style Panel */
826
+ #shopping_style {
827
+ div.header a.button.small { float: right; }
828
+ div.content {
829
+ p {
830
+ margin: 0 0 10px;
831
+ label { text-transform: uppercase; font-size: 11px; display: block; color: @bg; font-weight: bold; }
832
+ span { color: @black; }
833
+ span.toggle { white-space: nowrap; color: @grey; }
834
+ :last-child { margin: 0; }
835
+ }
836
+ p.more { text-align: left; font-weight: normal; }
837
+ p.less { display: none; margin: 0; }
838
+ }
839
+ }
840
+
841
+ /* People Controller */
842
+ #people_controller.index {
843
+ #main {
844
+ div.panel {
845
+ float: left; width: 300px; margin: 0 20px 0 0;
846
+ :last-child { margin-right: 0; }
847
+ }
848
+ }
849
+ }
850
+ #people_controller.show {
851
+ #person_overview, #shopping_style {
852
+ a.button.small {
853
+ }
854
+ }
855
+ #content {
856
+ #shopping_style {
857
+ float: left; width: 240px; margin: 0 20px 0 0;
858
+ }
859
+ #main { width: 360px; }
860
+ }
861
+ }
862
+
863
+ /* Search Results */
864
+ #search_results {
865
+ margin: 0 0 20px;
866
+ li {
867
+ :hover {
868
+ small { color: @white * 0.75 + @accent_colour * 0.25; }
869
+ }
870
+ }
871
+ }
872
+ #search {
873
+ div.content {
874
+ padding: 20px;
875
+ form {
876
+ margin: 0; float: none;
877
+ span.submit_and_options {
878
+ display: block;
879
+ }
880
+ }
881
+ p { margin: 0 0 15px; }
882
+ h4 { font-weight: normal; margin: 0 0 5px; }
883
+ }
884
+ }
885
+
886
+ /* Recommendations */
887
+ #recommendations {
888
+ div.browse {
889
+ margin: 0; padding: 0; background: none;
890
+ ul { min-height: 0; .border_radius(0); }
891
+ }
892
+ }
893
+
894
+ /* Blank States */
895
+ div.blank {
896
+ padding: 20px; background: @bg * 0.05 + @blue * 0.05 + @white * 0.9; position: relative;
897
+ border: 1px solid (@bg * 0.1 + @blue * 0.1 + @white * 0.8); z-index: 1;
898
+ h4 { font-size: 18px; margin: 0 0 10px; }
899
+ h4:last-child { margin: 0; }
900
+ p { font-size: 16px; margin: 0 0 10px; }
901
+ p:last-child { margin: 0; }
902
+ p.with_list_number.large {
903
+ span { margin-left: 48px; display: block; color: @white; }
904
+ }
905
+ p.earn span { font-size: 22px; color: @white; line-height: 48px; font-weight: bold; }
906
+ a { white-space: nowrap; }
907
+ a.hide {
908
+ position: absolute; top: -5px; right: -5px; display: block; height: 16px; width: 16px; padding: 3px; background: #E7E9F6; .border_radius(99);
909
+ }
910
+ }
911
+
912
+ div.blank.small {
913
+ padding: 10px 20px;
914
+ h4 { font-weight: normal; font-size: 16px; }
915
+ p { margin: 0; }
916
+ }
917
+ div.blank.tiny {
918
+ padding: 10px 20px;
919
+ h4 { font-weight: normal; font-size: 14px; }
920
+ p { margin: 0; font-size: 12px; }
921
+ }
922
+ div.blank.rounded {
923
+ .border_radius(3); margin: 0 0 20px;
924
+ }
925
+ div.blank.rounded.bottom { .border_radius_top(0); }
926
+ div.blank.with_border_bottom { border-bottom: 1px solid (@bg * 0.1 + @blue * 0.1 + @white * 0.8); }
927
+ div.blank.no_border_top { border-top: none; }
928
+ div.blank.no_border_bottom { border-bottom: none; }
929
+ div.blank.no_side_borders { border-right: none; border-left: none; }
930
+ div.panel {
931
+ div.blank {
932
+ padding: 10px 20px; overflow: hidden; margin: 0;
933
+ h4 { font-weight: normal; font-size: 14px; }
934
+ p, ul { margin: 0 0 10px; font-size: 12px; }
935
+ p:last-child, ul:last-child { margin: 0; }
936
+ }
937
+ }
938
+
939
+ /* Sidebar Browse */
940
+ #sidebar {
941
+ div.panel {
942
+ div.content.browse {
943
+ padding: 0; margin: 0;
944
+ > ul {
945
+ min-height: 0; .border_radius(0);
946
+ > li {
947
+ div.thumbnail {
948
+ a.thumbnail { padding: 5px; }
949
+ img.marker.media_type { top: 48px; left: 8px; }
950
+ }
951
+ div.footer {
952
+ a.title, a.name { font-size: 11px; font-weight: normal; }
953
+ }
954
+ }
955
+ }
956
+ }
957
+
958
+ div.content.browse.ads > ul > li {
959
+ width: 93px;
960
+ > div.thumbnail a.thumbnail { width: 83px; height: 62px; }
961
+ }
962
+ div.content.browse.brands {
963
+ .border_radius(3);
964
+ > ul {
965
+ background: none;
966
+ > li {
967
+ width: 52px;
968
+ > div.thumbnail {
969
+ padding: 3px;
970
+ a.thumbnail { width: 42px; height: 42px; padding: 2px; }
971
+ }
972
+ li.active { background: @accent_colour; }
973
+ }
974
+ }
975
+ }
976
+ div.footer {
977
+ div.info { float: none; }
978
+ div.pagination { float: none; margin: 3px 0 0; }
979
+ }
980
+ }
981
+ }
982
+
983
+ /* List Numbers */
984
+ label.list_number {
985
+ float: left; background: url('/images/transparent_backgrounds/black_15.png'); padding: 2px; width: 24px; height: 24px; display: block;
986
+ .border_radius(99);
987
+ b {
988
+ display: block; font-weight: bold; font-size: 14px; color: @white; background: @accent_colour; height: 20px; width: 20px; line-height: 20px;
989
+ text-align: center; .border_radius(99); .text_shadow(1, 1, 0px, (@accent_colour * 0.75 + @black * 0.25));
990
+ border: 2px solid @white;
991
+ }
992
+ }
993
+ label.list_number.large {
994
+ padding: 4px; width: 48px; height: 48px; .border_radius(99); position: relative; left: -10px;
995
+ b {
996
+ font-size: 28px; height: 40px; width: 40px; .border_radius(99); line-height: 40px;
997
+ .text_shadow(2, 2, 0px, (@accent_colour * 0.75 + @black * 0.25)); border-width: 4px;
998
+ }
999
+ }
1000
+
1001
+ /* Dashboard */
1002
+ #dashboard_controller {
1003
+ #ads {
1004
+ span.filter.state { float: right; }
1005
+ }
1006
+ #sidebar {
1007
+ #shopping_style div.content {
1008
+ p.less { display: block; }
1009
+ p.more { display: none; }
1010
+ }
1011
+ #influences {
1012
+ div.header {
1013
+ padding-bottom: 0;
1014
+ ul.tabs {
1015
+ position: relative; top: 1px; z-index: 3;
1016
+ li {
1017
+ margin: 0 5px 0 0;
1018
+ a {
1019
+ border: none; background: url('/images/transparent_backgrounds/white_75.png');
1020
+ :hover { color: @black; }
1021
+ }
1022
+ }
1023
+ li.active {
1024
+ a {
1025
+ background: @white; border: none;
1026
+ :hover { color: @black; }
1027
+ }
1028
+ }
1029
+ }
1030
+ }
1031
+
1032
+ div.tab_content {
1033
+ overflow: hidden; padding: 0;
1034
+ > ul {
1035
+ padding: 10px 10px 0; max-height: 280px; min-height: 120px; overflow-y: scroll; .border_radius_bottom(3px);
1036
+ }
1037
+ }
1038
+ div.footer {
1039
+ form {
1040
+ p {
1041
+ margin: 0 0 5px;
1042
+ img.marker { float: right; margin: 5px 0 0 0; }
1043
+ span.invitee {
1044
+ line-height: 26px; padding: 3px 3px 0; font-size: 14px;
1045
+ small { color: @grey; font-size: 12px; }
1046
+ }
1047
+ }
1048
+ p.indent { margin-left: 36px; }
1049
+ p.submit { margin-top: 10px; }
1050
+ }
1051
+ }
1052
+ }
1053
+ }
1054
+
1055
+ div.panel.full {
1056
+ > div.content {
1057
+ margin: 0; padding: 0; background: none;
1058
+ ul {
1059
+ li {
1060
+ width: 148px;
1061
+ div.thumbnail {
1062
+ img.marker.media_type { top: 90px; }
1063
+ a.thumbnail { width: 138px; height: 104px; }
1064
+ }
1065
+ }
1066
+ }
1067
+ }
1068
+ }
1069
+ #people {
1070
+ form {
1071
+ padding: 0 0 5px;
1072
+ input { width: 225px; float: left; margin: 0 5px 0 0; }
1073
+ a.button { height: 23px; line-height: 23px; width: 60px; padding: 0; text-align: center; }
1074
+ }
1075
+ }
1076
+ }
1077
+
1078
+ /* Remove Pages Titles when Browsing */
1079
+ #ads_controller, #brands_controller {
1080
+ #page_title { display: none; }
1081
+ }
1082
+
1083
+ /* Brands > Show */
1084
+ #brands_controller.show {
1085
+ #ads {
1086
+ div.filters {
1087
+ h3 { font-size: 16px; margin: 0; }
1088
+ span.show { float: right; }
1089
+ span.filter.dropdown.localisation { float: right; margin: 0 0 0 10px; }
1090
+ span.filter.state { float: right; margin: 0 0 0 10px; }
1091
+ }
1092
+ }
1093
+ }
1094
+
1095
+ /* FAQ */
1096
+ #pages_controller.faq {
1097
+ #answers {
1098
+ h3 { margin-top: 20px; padding-top: 20px; border-top: 1px solid (@light_grey * 0.75 + @white * 0.25); }
1099
+ h3.first { margin-top: 0; padding-top: 0; border: none; }
1100
+ }
1101
+ #questions {
1102
+ div.content {
1103
+ padding: 20px;
1104
+ ul {
1105
+ margin: 0; padding: 0;
1106
+ li {
1107
+ margin: 0 0 10px; list-style: none; display: block; padding: 0;
1108
+ a { font-size: 14px; }
1109
+ }
1110
+ li:last-child {
1111
+ margin: 0;
1112
+ }
1113
+ }
1114
+ }
1115
+ }
1116
+ }
1117
+
1118
+ /* Person Overview */
1119
+ #person_overview {
1120
+ padding: 20px 10px; position: relative; z-index: 25;
1121
+ #person {
1122
+ float: left; width: 620px;
1123
+ a.avatar {
1124
+ display: block; float: left; width: 60px; height: 60px;
1125
+ img { height: 100%; width: 100%; }
1126
+ }
1127
+ > div {
1128
+ margin: 0 0 0 75px; color: @white; font-size: 14px; .text_shadow(1, 1, 0, @bg * 0.66 + @black * 0.33);
1129
+ }
1130
+ div.name {
1131
+ h2 {
1132
+ margin: 0 0 5px; display: inline;
1133
+ a {
1134
+ font-size: 20px; font-weight: bold; .text_shadow(1, 1, 0, @bg * 0.66 + @black * 0.33);
1135
+ line-height: 1; color: @white; text-decoration: none;
1136
+ :hover { text-decoration: underline; }
1137
+ }
1138
+ a.button.small {
1139
+ font-size: 10px;
1140
+ :hover { text-decoration: none; }
1141
+ }
1142
+ }
1143
+
1144
+ span.points {
1145
+ float: right; display: block; padding: 5px 10px; .border_radius(2); text-align: center; background: @white; position: relative;
1146
+ min-width: 45px;
1147
+ strong { color: @black; font-weight: bold; font-size: 24px; line-height: 1; display: block; .text_shadow(0, 0, 0, transparent); }
1148
+ label { font-size: 9px; text-transform: uppercase; color: @grey; display: block; .text_shadow(0, 0, 0, transparent); font-weight: bold; }
1149
+ }
1150
+ span.points.with_redeem {
1151
+ .border_radius_bottom(0);
1152
+ a.button {
1153
+ display: block; text-align: center; .border_radius_top(0); font-size: 10px; font-weight: bold; padding: 0;
1154
+ position: absolute; height: 18px; left: 0; right: 0; bottom: -19px; line-height: 18px; text-transform: uppercase; border: none;
1155
+ }
1156
+ }
1157
+ div.options { margin: 0; }
1158
+ }
1159
+ div.meta {
1160
+ color: @white * 0.66 + @bg * 0.33;
1161
+ span { color: @white; }
1162
+ label { color: @white * 0.66 + @bg * 0.33; }
1163
+ ul.networks {
1164
+ display: inline; margin: 0; padding: 0;
1165
+ li {
1166
+ display: inline; line-height: 1;
1167
+ img { position: relative; vertical-align: middle; top: -1px; }
1168
+ }
1169
+ }
1170
+ }
1171
+
1172
+ div.extra {
1173
+ font-size: 12px; margin-top: 20px; margin-bottom: 20px;
1174
+ span.toggle {
1175
+ .text_shadow(1, 1, 0, @bg * 0.66 + @black * 0.33);
1176
+ a { font-size: 10px; font-weight: bold; text-transform: uppercase; text-decoration: none; color: @accent_colour; }
1177
+ b.arrow { display: inline-block; width: 0; height: 0; border: 5px solid transparent; position: relative; top: -2px; }
1178
+ }
1179
+ #less_info {
1180
+ span.toggle {
1181
+ b.arrow { border-top: 5px solid @accent_colour; border-bottom: 0; }
1182
+ }
1183
+ }
1184
+ #more_info {
1185
+ span.toggle {
1186
+ float: right;
1187
+ b.arrow { border-bottom: 5px solid @accent_colour; border-top: 0; }
1188
+ }
1189
+ h4 {
1190
+ color: @white; margin: 0 0 10px 0; border-bottom: 1px solid (@white * 0.25 + @bg * 0.75); .text_shadow(1, 1, 0, @bg * 0.66 + @black * 0.33);
1191
+ span { font-size: 12px; }
1192
+ }
1193
+ p {
1194
+ margin: 0 0 5px;
1195
+ label { display: block; float: left; width: 120px; color: @white * 0.66 + @bg * 0.33; }
1196
+ span { display: block; margin: 0 0 0 130px; }
1197
+ }
1198
+ p:last-child { margin: 0; }
1199
+
1200
+ }
1201
+ }
1202
+ div.login {
1203
+ margin: 0 0 0 75px;
1204
+ a.button { font-weight: bold; }
1205
+ }
1206
+ }
1207
+ }
1208
+
1209
+ /* Dashboard Nav */
1210
+ #dashboard_nav {
1211
+ position: absolute; bottom: 0; left: 10px; margin: 0; padding: 0; overflow: hidden;
1212
+ li {
1213
+ display: block; float: left; margin: 0 5px 0 0;
1214
+ a {
1215
+ display: block; height: 28px; padding: 0 10px; line-height: 28px; .border_radius_top(2);
1216
+ text-decoration: none; color: @white; background: url('/images/transparent_backgrounds/accent_colour_30.png'); font-size: 14px;
1217
+ font-weight: bold;
1218
+ :hover { background: url('/images/transparent_backgrounds/accent_colour_45.png'); }
1219
+ }
1220
+ }
1221
+ li.active {
1222
+ a {
1223
+ background: @white; color: @black;
1224
+ :hover { color: @black; }
1225
+ }
1226
+ }
1227
+ }
1228
+
1229
+ /* Dwellometer */
1230
+ #dwellometer {
1231
+ z-index: 45; float: right; .box_shadow(0, 0, 0, transparent); margin: 0;
1232
+ div.content {
1233
+ text-align: center; position: relative;
1234
+ object, object embed { position: relative; z-index: 46; line-height: 0; }
1235
+ div.title {
1236
+ position: absolute; bottom: 10px; left: 0; right: 0; z-index: 50;
1237
+ img { width: 120px; display: block; margin: 0 auto; position: relative; left: -5px; }
1238
+ }
1239
+ }
1240
+ }
1241
+
1242
+ /* Activity Stream */
1243
+ #activity {
1244
+ div.content {
1245
+ ul.events {
1246
+ padding: 0; margin: 0 0 -10px;
1247
+ li {
1248
+ margin: 0; padding: 10px 0; border-bottom: 1px solid (@light_grey * 0.33 + @white * 0.66);
1249
+ list-style: none; overflow: hidden;
1250
+ small.meta {
1251
+ font-size: 12px; color: @light_grey; float: right;
1252
+ }
1253
+ a.button { float: right; margin: 0 0 10px 10px; }
1254
+ a.avatar, a.logo, a.thumbnail {
1255
+ height: 32px; display: block; float: left;
1256
+ img { width: 100%; height: 100%; }
1257
+ }
1258
+ a.avatar, a.logo, a.icon { width: 32px; }
1259
+ a.thumbnail { width: 42px; }
1260
+ div.symbols {
1261
+ float: left; overflow: hidden;
1262
+ b {
1263
+ display: block; float: left; margin: 10px 5px 0;
1264
+ img { height: 12px; width: 12px; }
1265
+ }
1266
+ b.voted { margin: 10px 3px 0; padding: 2px; .border_radius(2); }
1267
+ b.voted.for { background: @colour_positive * 0.33 + @white * 0.66; }
1268
+ b.voted.against { background: @colour_negative * 0.33 + @white * 0.66; }
1269
+ }
1270
+ /* Temporarily removed avatar and symbol */
1271
+ /* div.symbols a.agent, b { display: none; }*/
1272
+ div.description {
1273
+ font-size: 12px; color: @grey;
1274
+ a.agent { font-weight: bold; }
1275
+ }
1276
+ div.comment {
1277
+ margin-top: 2px;
1278
+ b.tail {
1279
+ display: block; margin: 0 0 0 10px; width: 0; height: 0; border: 5px solid transparent;
1280
+ border-top: none; border-bottom: 5px solid (@light_grey * 0.25 + @white * 0.75);
1281
+ }
1282
+ blockquote {
1283
+ margin: 0; font-style: normal; color: @dark_grey;
1284
+ .border_radius(3); background: @light_grey * 0.25 + @white * 0.75; padding: 5px 10px;
1285
+ span.view_comment {
1286
+ color: @grey;
1287
+ }
1288
+ }
1289
+ }
1290
+ div.content {
1291
+ overflow: hidden;
1292
+ }
1293
+ }
1294
+ li.new_comment.ad, li.endorsed.ad, li.voted {
1295
+ div.description, div.content { margin-left: 106px; }
1296
+ /* div.description, div.content { margin-left: 53px; }*/
1297
+ }
1298
+ li.new_comment.brand, li.replied_to, li.endorsed.brand, li.connected, li.sn_setup {
1299
+ div.description, div.content { margin-left: 96px; }
1300
+ /* div.description, div.content { margin-left: 43px; }*/
1301
+ }
1302
+ li.replied_to {
1303
+ div.content {
1304
+ a.thumbnail, a.logo { margin-top: 7px; }
1305
+ }
1306
+ }
1307
+ li.replied_to.ad {
1308
+ div.content {
1309
+ div.comment { margin-left: 52px; }
1310
+ }
1311
+ }
1312
+ li.replied_to.brand {
1313
+ div.content {
1314
+ div.comment { margin-left: 42px; }
1315
+ }
1316
+ }
1317
+ li.voted div.description span.action { .border_radius(2); color: @dark_grey; padding: 0 3px; white-space: nowrap; }
1318
+ li.voted.for div.description span.action { background: @colour_positive * 0.15 + @white * 0.85; }
1319
+ li.voted.against div.description span.action { background: @colour_negative * 0.15 + @white * 0.85; }
1320
+ li:first-child { padding-top: 0; }
1321
+ li:last-child { border-bottom: none; }
1322
+ li:hover div.content div.comment blockquote span.view_comment {
1323
+ }
1324
+ }
1325
+ }
1326
+ }
1327
+
1328
+ /* Login/Register Modal */
1329
+ #login_register {
1330
+ div.location_select,
1331
+ div.location_search { margin-left: 130px; }
1332
+ h3 {
1333
+ small { font-size: 14px; font-weight: normal; display: block; color: @grey; text-align: left; margin: 0; display: block; }
1334
+ }
1335
+ }
1336
+
1337
+ /* Contact Form in Pages */
1338
+ #pages_controller {
1339
+ #sidebar {
1340
+ #contact {
1341
+ margin: 15px 0 0;
1342
+ form {
1343
+ label { text-align: left; float: none; width: auto; font-size: 12px; font-weight: bold; line-height: 1; margin: 0 0 5px; }
1344
+ p.submit.indent {
1345
+ margin: 0;
1346
+ span.with_cancel { display: none; }
1347
+ }
1348
+ }
1349
+ }
1350
+ }
1351
+ }
1352
+
1353
+ /* Exclusive Offers */
1354
+ #offers {
1355
+ div.content {
1356
+ a.gift {
1357
+ display: block; text-align: center;
1358
+ img { height: 100px; }
1359
+ }
1360
+ }
1361
+ }
1362
+
1363
+ div.browse {
1364
+ margin: 0 0 20px;
1365
+ &.class {
1366
+ padding: 0;
1367
+ }
1368
+ div.header {
1369
+ padding: 10px 10px 9px; text-align: left; background: @bg url('/images/panel_header_bg.png') repeat-x top left;
1370
+ border-bottom: 1px solid (@bg * 0.66 + @black * 0.33); line-height: 1; height: 18px;
1371
+ .border_radius_top(3); color: @light_grey;
1372
+ h3 { font-size: 16px; margin: 0; color: @white; .text_shadow(1, 1, 0, @bg * 0.66 + @black * 0.33); }
1373
+ span.filter {
1374
+ float: left; display: block; overflow: hidden; position: relative; z-index: 5;
1375
+ a {
1376
+ margin: 0 1px 0 0; display: block; float: left; padding: 0 8px; height: 18px; font-weight: bold; font-size: 10px; line-height: 18px;
1377
+ text-transform: uppercase; background: url('/images/transparent_backgrounds/black_50.png'); color: @light_grey; text-decoration: none; position: relative; z-index: 3;
1378
+ .active {
1379
+ background: @white; color: @black; z-index: 4;
1380
+ :hover { color: @black; }
1381
+ }
1382
+ :hover { color: @white; }
1383
+ :first-child { .border_radius_left(2); }
1384
+ :last-child { .border_radius_right(2); margin-right: 0; }
1385
+ }
1386
+ }
1387
+
1388
+ span.filter.dropdown {
1389
+ margin: 0; position: relative; overflow: visible;
1390
+ a {
1391
+ .border_radius(2); background: @white; color: @black; margin: 0; position: relative; padding-right: 25px;
1392
+ img { float: left; margin: 4px 5px 0 0; }
1393
+ b.arrow {
1394
+ float: right; display: block; height: 0; width: 0; border: 5px solid transparent; border-top: 5px solid @black; border-bottom: none;
1395
+ position: absolute; top: 6px; right: 10px;
1396
+ }
1397
+ :hover {
1398
+ background: @accent_colour; color: @white;
1399
+ b.arrow { border-top: 5px solid @white; }
1400
+ }
1401
+ }
1402
+ ul {
1403
+ position: absolute; top: 100%; left: 0; margin: 1px 0 0; padding: 0; background: @white; .border_radius(2);
1404
+ .box_shadow(0, 1, 1, @black);
1405
+ li {
1406
+ list-style: none; display: block; padding: 0; margin: 0;
1407
+ a {
1408
+ display: block; height: 18px; line-height: 18px; color: @black; font-size: 10px; text-transform: uppercase; background: transparent;
1409
+ border-bottom: 1px solid (@light_grey * 0.66 + @white * 0.33); float: none; margin: 0; .border_radius(0); white-space: nowrap;
1410
+ :hover { background: url('/images/transparent_backgrounds/accent_colour_25.png'); color: @black; }
1411
+ }
1412
+ :last-child {
1413
+ a { border: none; }
1414
+ }
1415
+ }
1416
+ }
1417
+ }
1418
+ span.filter.dropdown.sort { float: left; margin: 0 0 0 10px; }
1419
+ span.filter.dropdown.localisation { float: left; margin: 0 0 0 10px; }
1420
+ a.more {
1421
+ float: right; color: @white; .text_shadow(1, 1, 0, @bg * 0.66 + @black * 0.33); font-size: 14px; font-weight: bold;
1422
+ position: relative; top: 2px;
1423
+ :hover { text-decoration: none; }
1424
+ }
1425
+ }
1426
+ > ul {
1427
+ margin: 0; background: @white; padding: 10px 0 0 10px; .border_radius(3); position: relative;
1428
+ li {
1429
+ display: block; float: left; list-style: none; margin: 0 10px 10px 0; padding: 5px; position: relative;
1430
+ background: @white; width: 130px; border: 1px solid (@light_grey * 0.33 + @white * 0.66); .border_radius(2);
1431
+ a.remove {
1432
+ position: absolute; height: 16px; width: 16px; padding: 3px; background: @accent_colour;
1433
+ .border_radius(99); display: none; z-index: 3; top: -8px; right: -8px;
1434
+ img { vertical-align: middle; }
1435
+ }
1436
+ div.thumbnail {
1437
+ .border_radius_top(3); position: relative; z-index: 3;
1438
+ .marker {
1439
+ position: absolute; padding: 2px; .border_radius(2); z-index: 3;
1440
+ background: url('/images/transparent_backgrounds/white_75.png'); height: 12px; width: 12px;
1441
+ }
1442
+ .marker.coupon {
1443
+ height: auto; width: auto; top: 10px; right: -3px; padding: 0; background: transparent; overflow: hidden; position: absolute;
1444
+ b {
1445
+ display: block; height: 0; width: 0; float: left; border: 14px solid transparent; border-top: 14px solid @accent_colour;
1446
+ border-bottom: none; border-right: none; float: left;
1447
+ }
1448
+ span {
1449
+ color: @white; font-size: 10px; font-weight: bold; text-transform: uppercase; height: 14px; line-height: 14px; display: block;
1450
+ padding: 0 4px 0 2px; background: @accent_colour; .text_shadow(1, 1, 0px, (@accent_colour * 0.75 + @black * 0.25)); margin: 0 0 0 14px;
1451
+ }
1452
+ }
1453
+ .marker.video {
1454
+ position: absolute; left: 50%; top: 50%; background: @white; width: 10px; height: 10px;
1455
+ b { display: block; width: 0; height: 0; border: 5px solid transparent; border-left: 10px solid @black; border-right: none; }
1456
+ }
1457
+ .marker.endorsed_by_me { background: none; padding: 0; right: 0; bottom: -32px; .border_radius(2); background: @white; }
1458
+ a.thumbnail {
1459
+ display: block; overflow: hidden; position: relative; text-align: center;
1460
+ img { position: relative; display: block; margin: auto; }
1461
+ }
1462
+ }
1463
+ div.text {
1464
+ margin: 3px 0 0; display: block;
1465
+ a { text-decoration: none; }
1466
+ a.title {
1467
+ display: block; text-decoration: none; font-weight: bold; font-size: 12px; line-height: 16px;
1468
+ white-space: nowrap; height: 16px; overflow: hidden;
1469
+ :before {
1470
+ display: block; height: 32px; width: 20px; content: " "; float: right; right: -15px; top: -8px;
1471
+ background: @white; position: relative; z-index: 1; .box_shadow(-5, 0, 10, @white);
1472
+ }
1473
+ }
1474
+ small {
1475
+ font-size: 11px; line-height: 13px; color: @grey; display: block; height: 13px; overflow: hidden; white-space: nowrap;
1476
+ a { font-weight: bold; }
1477
+ :before {
1478
+ display: block; height: 32px; width: 20px; content: " "; float: right; right: -15px; top: -8px;
1479
+ background: @white; position: relative; z-index: 1; .box_shadow(-5, 0, 10, @white);
1480
+ }
1481
+ }
1482
+ }
1483
+ :hover {
1484
+ background: @accent_colour;
1485
+ a.remove { display: block; }
1486
+ div.thumbnail {
1487
+ a.marker.remove, a.marker.video {
1488
+ b { display: inline-block; }
1489
+ }
1490
+ a.marker.video { .box_shadow(0, 0, 2, @black); }
1491
+ }
1492
+ div.text {
1493
+ a { color: @white; }
1494
+ a.title:before { background: @accent_colour; .box_shadow(-5, 0, 10, @accent_colour); }
1495
+ small {
1496
+ color: @white * 0.75 + @accent_colour * 0.25;
1497
+ :before { background: @accent_colour; .box_shadow(-5, 0, 10, @accent_colour); }
1498
+ }
1499
+ }
1500
+ div.footer a { color: @white; }
1501
+ }
1502
+ }
1503
+ > li.ad div.thumbnail a.thumbnail {
1504
+ width: 130px; height: 97px;
1505
+ img { width: 100%; height: 100%; }
1506
+ }
1507
+ > li.brand div.thumbnail a.thumbnail {
1508
+ width: 120px; height: 87px; padding: 5px; background: @white; .border_radius(2);
1509
+ img { max-width: 120px; max-height: 87px; }
1510
+ }
1511
+ li.paginate {
1512
+ margin-bottom: 0;
1513
+ a {
1514
+ display: block; position: relative; text-decoration: none; height: 131px;
1515
+ div.arrow {
1516
+ background: #81c153 url('/images/button_bg.png') repeat-x left top; border: 1px solid (@accent_colour * 0.75 + @black * 0.25);
1517
+ height: 44px; .border_radius(99); width: 44px; margin: 0 auto; position: relative; top: 32px;
1518
+ b { text-indent: -9000px; display: block; border: 10px solid transparent; width: 0; height: 0; position: relative; top: 12px; }
1519
+ }
1520
+ div.label {
1521
+ position: absolute; bottom: 5px; left: 0; right: 0; line-height: 13px;
1522
+ color: @accent_colour * 0.85 + @black * 0.15; text-decoration: none;
1523
+ font-weight: bold; font-size: 12px; text-align: center;
1524
+ }
1525
+ :hover {
1526
+ div.arrow { background: #abd56e url('/images/button_bg.png') repeat-x left -44px; }
1527
+ }
1528
+ }
1529
+ :hover { background: transparent; }
1530
+ }
1531
+ li.paginate.previous a div b { border-right: 15px solid @white; border-left: none; left: 12px; }
1532
+ li.paginate.next a div b { border-left: 15px solid @white; border-right: none; left: 16px; }
1533
+ }
1534
+ > div.footer {
1535
+ padding: 9px 10px 10px; background: @light_grey * 0.75 + @white * 0.25; overflow: hidden;
1536
+ border-top: 1px solid @light_grey; .border_radius_bottom(3);
1537
+ div.info {
1538
+ float: left; color: @grey;
1539
+ strong { color: @black; font-weight: normal; }
1540
+ }
1541
+ div.pagination {
1542
+ float: right;
1543
+ > * {
1544
+ display: inline-block; line-height: 1; padding: 0 6px; line-height: 18px; height: 18px; background: @white;
1545
+ .border_radius(3); text-decoration: none; font-weight: bold;
1546
+ font-size: 10px; text-transform: uppercase;
1547
+ }
1548
+ a { color: @grey; }
1549
+ a:hover { color: @black; }
1550
+ span.disabled { color: @light_grey; }
1551
+ span.current { color: @white; background: @bg; border: none; }
1552
+ span.current:hover { color: @white; }
1553
+ }
1554
+ }
1555
+ }
1556
+ div.browse.with_categories { margin: 0 0 0 160px; }
1557
+ div.browse.with_options > ul { .border_radius_top(0); }
1558
+ div.browse.with_footer > ul { .border_radius_bottom(0); }
1559
+ /* Browse List */
1560
+ div.browse.list {
1561
+ > ul {
1562
+ margin: 0; min-height: 320px;
1563
+ padding: 10px 0 0 10px; overflow: hidden;
1564
+ > li {
1565
+ display: block; list-style: none; margin: 0 10px 10px 0; padding: 5px;
1566
+ .border_radius(3); position: relative; line-height: normal;
1567
+ .marker {
1568
+ position: absolute; padding: 2px; .border_radius(2);
1569
+ background: url('/images/transparent_backgrounds/white_75.png');
1570
+ img { height: 12px; width: 12px; }
1571
+ }
1572
+ img.marker { height: 12px; width: 12px; }
1573
+ span.marker.new {
1574
+ color: black; left: -5px; top: -5px; background: none; background-color: @white * 0.1 + @yellow * 0.6 + @red * 0.3; line-height: 1; padding: 2px 5px;
1575
+ font-weight: bold;
1576
+ }
1577
+ a.marker.media_type {
1578
+ display: inline-block; text-decoration: none; top: 39px; left: 8px;
1579
+ font-size: 10px;
1580
+ b { font-weight: normal; margin: 0 0 0 2px; line-height: 1; display: none; }
1581
+ img { vertical-align: middle; }
1582
+ }
1583
+ a.thumbnail {
1584
+ float: left;
1585
+ width: 68px; display: block; overflow: hidden;
1586
+ border: 1px solid @light_grey;
1587
+ :hover { border-color: @accent_colour; }
1588
+ }
1589
+ span.title_brand {
1590
+ display: block; margin: 0 0 2px 75px;
1591
+ a { margin: 0; display: inline; }
1592
+ a.brand_name { font-weight: normal; font-size: 12px; }
1593
+ }
1594
+ a.ad_title {
1595
+ font-weight: bold; font-size: 14px; margin: 0 0 0 75px; display: block;
1596
+ }
1597
+ a.brand_name {
1598
+ font-weight: bold; font-size: 14px; margin: 0 0 0 75px; display: block;
1599
+ }
1600
+ small {
1601
+ display: block; color: @grey; margin: 0 0 0 75px; font-size: 12px;
1602
+ }
1603
+ small.brand_name { display: inline; margin: 0; }
1604
+ ul.chart {
1605
+ margin: 0 0 0 80px;
1606
+ height: 39px;
1607
+ }
1608
+ ul.networks {
1609
+ margin: 3px 0 0 75px; padding: 0; overflow: hidden;
1610
+ li { display: block; float: left; margin: 0 5px 0 0; line-height: 1; }
1611
+ }
1612
+ div.points {
1613
+ display: none;
1614
+ font-size: 12px; text-align: right;
1615
+ label { color: @grey; }
1616
+ }
1617
+ a.remove { bottom: -3px; right: -3px; }
1618
+ }
1619
+ li.ad {
1620
+ a.thumbnail { height: 51px; }
1621
+ span.title_brand {
1622
+ small.brand_name {
1623
+ display: block;
1624
+ }
1625
+ }
1626
+ }
1627
+ li.brand {
1628
+ a.thumbnail { height: 68px; }
1629
+ }
1630
+ }
1631
+ }
1632
+ div.browse.list.with_options ul { .border_radius_top(0); }
1633
+ div.browse.list.with_footer ul { .border_radius_bottom(0); }
1634
+ div.browse.list.cols_2 {
1635
+ > ul {
1636
+ > li {
1637
+ width: 285px; float: left;
1638
+ :hover {
1639
+ background: @white;
1640
+ }
1641
+ }
1642
+ }
1643
+ }
1644
+ div.browse.ads.list {
1645
+ > ul {
1646
+ > li {
1647
+ height: 53px;
1648
+ a.thumbnail {
1649
+ height: 51px;
1650
+ }
1651
+ }
1652
+ }
1653
+ }
1654
+ div.browse.brands.list {
1655
+ > ul {
1656
+ > li {
1657
+ height: 68px;
1658
+ a.thumbnail {
1659
+ height: 66px;
1660
+ }
1661
+ }
1662
+ }
1663
+ }
1664
+
1665
+ /* Categories List */
1666
+ #categories {
1667
+ margin: 40px 0 0; width: 160px; float: left; position: relative; z-index: 1;
1668
+ ul {
1669
+ margin: 0; padding: 10px 0 0;
1670
+ li {
1671
+ list-style: none; margin: 0; padding: 0; font-size: 14px;
1672
+ a { color: @grey; display: block; padding: 5px 10px 5px 15px; text-decoration: none; .border_radius_left(3); }
1673
+ a:hover { color: @black; background: @light_grey * 0.15 + @white * 0.85; }
1674
+ }
1675
+ .all a { font-weight: bold; }
1676
+ .current a {
1677
+ background: @white; color: @black; border: 1px solid (@light_grey * 0.25 + @white * 0.75); border-right: none; border-left: 5px solid @bg;
1678
+ padding-left: 10px;
1679
+ }
1680
+ }
1681
+ }
1682
+
1683
+ /* Ads > Show */
1684
+ #ad {
1685
+ div.header {
1686
+ overflow: hidden;
1687
+ h3 { font-size: 16px; margin: 0 0 3px; }
1688
+ small {
1689
+ a.category { font-weight: bold; color: @accent_colour; }
1690
+ span.networks img { position: relative; top: 3px; }
1691
+ }
1692
+ span.brand {
1693
+ float: right; color: @white;
1694
+ a.brand_name { font-weight: bold; color: @accent_colour; }
1695
+ }
1696
+ }
1697
+ div.content {
1698
+ padding: 0; position: relative;
1699
+ a.toggle_size {
1700
+ display: block; .border_radius(3); background-color: @black; padding: 0 5px 0 26px;
1701
+ background-position: 5px center; background-repeat: no-repeat; text-decoration: none; margin: 5px 5px 0 0;
1702
+ position: absolute; top: 0; right: 0; line-height: 25px; z-index: 45;
1703
+ }
1704
+ img.creative { margin: 0 auto; max-width: 540px; display: block; }
1705
+ object { position: relative; z-index: 44; }
1706
+ object.video { line-height: 0; font-size: 0; }
1707
+ object embed { position: relative; z-index: 45; line-height: 0; font-size: 0; }
1708
+ }
1709
+ div.content.not_video {
1710
+ padding: 40px; text-align: center;
1711
+ * { margin-left: auto; margin-right: auto; }
1712
+ object.flash { margin-bottom: 0; }
1713
+ }
1714
+ div.footer {
1715
+ padding: 0;
1716
+ div.vote_views {
1717
+ padding: 5px 10px; overflow: hidden;
1718
+ div.share { float: right; margin: 2px 0 0 0; }
1719
+ #login_register_msg, #encourage_vote_msg { line-height: 22px; font-weight: bold; color: @black; }
1720
+ }
1721
+ }
1722
+ }
1723
+ #sidebar {
1724
+ #meta {
1725
+ table {
1726
+ margin: 0;
1727
+ tr:last-child td { padding-bottom: 0; }
1728
+ td {
1729
+ padding: 0 0 5px;
1730
+ ul.networks {
1731
+ margin: 0; padding: 0;
1732
+ li {
1733
+ list-style: none; display: inline;
1734
+ }
1735
+ li {
1736
+ }
1737
+ }
1738
+ }
1739
+ td.label { color: @grey; white-space: nowrap; width: 1%; text-align: right; padding-right: 5px; }
1740
+ }
1741
+ }
1742
+ }
1743
+
1744
+ /* Voting */
1745
+ div.voted {
1746
+ font-size: 12px; line-height: 22px; color: @black; display: inline-block; font-weight: bold;
1747
+ img { float: left; margin-right: 5px; padding: 3px; .border_radius(3); }
1748
+ }
1749
+ #voted_up {
1750
+ img { background: @colour_positive * 0.66 + @bg * 0.15; }
1751
+ }
1752
+ #voted_down {
1753
+ img { background: @colour_negative * 0.66 + @bg * 0.15; }
1754
+ }
1755
+ #encourage_comment {
1756
+ display: inline-block; line-height: 22px; font-weight: bold;
1757
+ }
1758
+ #vote {
1759
+ overflow: hidden; font-size: 12px; line-height: 22px; color: @black; float: left;
1760
+ a {
1761
+ color: @white; font-weight: bold; overflow: hidden; display: block;
1762
+ width: 16px; text-decoration: none; text-align: center; font-size: 10px; padding: 3px; text-transform: uppercase;
1763
+ }
1764
+ a.up {
1765
+ float: left; background: @colour_positive * 0.66 + @bg * 0.15; .border_radius_left(3);
1766
+ :hover { background: @colour_positive * 0.85 + @bg * 0.15; }
1767
+ }
1768
+ a.down {
1769
+ float: left; background: @colour_negative * 0.66 + @bg * 0.15; .border_radius_right(3);
1770
+ margin: 0 5px 0 1px;
1771
+ :hover { background: @colour_negative * 0.85 + @bg * 0.15; }
1772
+ }
1773
+ }
1774
+ #vote.disabled {
1775
+ a.up {
1776
+ background: (@colour_positive * 0.66 + @bg * 0.15) * 0.15 + @grey * 0.85;
1777
+ :hover { background: (@colour_positive * 0.85 + @bg * 0.15) * 0.25 + @grey * 0.75; }
1778
+ }
1779
+ a.down {
1780
+ background: (@colour_negative * 0.66 + @bg * 0.15) * 0.15 + @grey * 0.85;
1781
+ :hover { background: (@colour_negative * 0.85 + @bg * 0.15) * 0.25 + @grey * 0.75; }
1782
+ }
1783
+ }
1784
+ #sidebar {
1785
+ #ads > ul li, #recommendations > ul li {
1786
+ width: 81px;
1787
+ div.thumbnail {
1788
+ a.thumbnail { height: 60px; width: 81px; }
1789
+ }
1790
+ div.text {
1791
+ a.title { font-size: 11px; height: 14px; line-height: 14px; }
1792
+ small { display: none; }
1793
+ }
1794
+ }
1795
+ #brands > ul li {
1796
+ width: 55px;
1797
+ div.thumbnail {
1798
+ a.thumbnail {
1799
+ height: 45px; width: 45px;
1800
+ img { max-height: 45px; max-width: 45px; }
1801
+ }
1802
+ }
1803
+ div.text { display: none; }
1804
+ }
1805
+ }
1806
+
1807
+ /* My Account */
1808
+ #accounts_controller {
1809
+ #top {
1810
+ #page_title {
1811
+ #page_options {
1812
+ a.button.public_profile {
1813
+ float: right; font-size: 16px; line-height: 1; height: auto; padding: 8px 35px 8px 15px; position: relative;
1814
+ b.arrow { display: block; height: 0; width: 0; position: absolute; top: 10px; right: 15px; border: 6px solid transparent; border-right: none; border-left: 6px solid @white; margin: 0; }
1815
+ }
1816
+ a.button.goto_dashboard {
1817
+ float: right; font-size: 16px; line-height: 1; height: auto; padding: 8px 15px 8px 35px; margin-right: 5px; position: relative;
1818
+ b.arrow { display: block; height: 0; width: 0; position: absolute; top: 10px; left: 15px; border: 6px solid transparent; border-left: none; border-right: 6px solid @white; margin: 0; }
1819
+ }
1820
+ }
1821
+ }
1822
+ }
1823
+ #account_nav {
1824
+ float: left; width: 200px; margin: 0 20px 0 0;
1825
+ ul.nav {
1826
+ margin: 0; padding: 0;
1827
+ li {
1828
+ margin: 0 0 5px; display: block; list-style: none; padding: 0;
1829
+ a {
1830
+ display: block; height: 30px; text-decoration: none; color: @white;
1831
+ b {
1832
+ border: 15px solid transparent; border-right: none; border-left: 10px solid transparent; width: 0;
1833
+ height: 0; float: right; display: none;
1834
+ }
1835
+ span {
1836
+ .border_radius(3); background: @bg; display: block;
1837
+ line-height: 30px; padding: 0 10px; font-size: 14px; font-weight: bold; margin: 0 10px 0 0;
1838
+ }
1839
+ }
1840
+ :hover {
1841
+ a {
1842
+ color: @white;
1843
+ b { border-left-color: @bg; display: block; }
1844
+ span { background: @bg; .border_radius_right(0); }
1845
+ }
1846
+ }
1847
+ }
1848
+ li.current a {
1849
+ b { border-left-color: @accent_colour; display: block; }
1850
+ span { background: @accent_colour; color: @white; .border_radius_right(0); }
1851
+ }
1852
+ }
1853
+ }
1854
+ #main {
1855
+ > div {
1856
+ margin: 0 0 20px;
1857
+ form { margin: 0; }
1858
+ }
1859
+ #profile {
1860
+ a.avatar {
1861
+ float: left; display: block;
1862
+ width: 70px; overflow: hidden; position: relative; text-decoration: none;
1863
+ img { width: 100%; }
1864
+ span {
1865
+ display: block; line-height: 1; padding: 3px; margin: 5px 0 0; color: @white; background: @accent_colour;
1866
+ .border_radius(3); .text_shadow(1, 1, 0, @grey);
1867
+ text-align: center; font-size: 10px; font-weight: bold; text-transform: uppercase;
1868
+ }
1869
+ }
1870
+ form {
1871
+ margin: 0 0 0 90px;
1872
+ h4 { margin: 10px 0 20px; border-bottom: 1px solid (@light_grey * 0.5 + @white * 0.5); padding: 0; color: @bg; font-size: 16px; }
1873
+ ul.choices {
1874
+ li { width: 30%; }
1875
+ }
1876
+ div.extra { margin-top: 20px; }
1877
+ }
1878
+ }
1879
+
1880
+ #networks {
1881
+ ul { margin: 0 -10px -10px 0; padding: 0; overflow: hidden;
1882
+ li:hover
1883
+ {
1884
+ background: @light_grey; display: block; float: left; width: 180px;
1885
+ padding: 10px; margin: 0 10px 10px 0; list-style: none; .border_radius(3);
1886
+ position: relative;
1887
+ * { line-height: normal; }
1888
+ img { vertical-align: middle; float: left; }
1889
+ .name { font-weight: bold; font-size: 14px; display: block; margin: -2px 0 0 42px; }
1890
+ small {
1891
+ font-size: 12px; color: @grey; display: block; margin-left: 42px;
1892
+ strong { color: @black; font-weight: normal; }
1893
+ }
1894
+ :hover {
1895
+ }
1896
+ }
1897
+ li.installed {
1898
+ background: @white;
1899
+ border: 2px solid @accent_colour; padding: 8px;
1900
+ }
1901
+ li.unavailable {
1902
+ .name { color: @black; }
1903
+ :hover {
1904
+ background: @light_grey;
1905
+ }
1906
+ }
1907
+ li:hover {
1908
+ background: @light_grey * 0.5 + @white * 0.5;
1909
+ }
1910
+ }
1911
+ }
1912
+ }
1913
+ }
1914
+
1915
+ /* Shopping Style Panel */
1916
+ #shopping_style {
1917
+ div.header a.button.small { float: right; }
1918
+ div.content {
1919
+ p {
1920
+ margin: 0 0 10px;
1921
+ label { text-transform: uppercase; font-size: 11px; display: block; color: @bg; font-weight: bold; }
1922
+ span { color: @black; }
1923
+ span.toggle { white-space: nowrap; color: @grey; }
1924
+ :last-child { margin: 0; }
1925
+ }
1926
+ p.more { text-align: left; font-weight: normal; }
1927
+ p.less { display: none; margin: 0; }
1928
+ }
1929
+ }
1930
+
1931
+ /* People Controller */
1932
+ #people_controller.index {
1933
+ #main {
1934
+ div.panel {
1935
+ float: left; width: 300px; margin: 0 20px 0 0;
1936
+ :last-child { margin-right: 0; }
1937
+ }
1938
+ }
1939
+ }
1940
+ #people_controller.show {
1941
+ #person_overview, #shopping_style {
1942
+ a.button.small {
1943
+ }
1944
+ }
1945
+ #content {
1946
+ #shopping_style {
1947
+ float: left; width: 240px; margin: 0 20px 0 0;
1948
+ }
1949
+ #main { width: 360px; }
1950
+ }
1951
+ }
1952
+
1953
+ /* Search Results */
1954
+ #search_results {
1955
+ margin: 0 0 20px;
1956
+ li {
1957
+ :hover {
1958
+ small { color: @white * 0.75 + @accent_colour * 0.25; }
1959
+ }
1960
+ }
1961
+ }
1962
+ #search {
1963
+ div.content {
1964
+ padding: 20px;
1965
+ form {
1966
+ margin: 0; float: none;
1967
+ span.submit_and_options {
1968
+ display: block;
1969
+ }
1970
+ }
1971
+ p { margin: 0 0 15px; }
1972
+ h4 { font-weight: normal; margin: 0 0 5px; }
1973
+ }
1974
+ }
1975
+
1976
+ /* Recommendations */
1977
+ #recommendations {
1978
+ div.browse {
1979
+ margin: 0; padding: 0; background: none;
1980
+ ul { min-height: 0; .border_radius(0); }
1981
+ }
1982
+ }
1983
+
1984
+ /* Blank States */
1985
+ div.blank {
1986
+ padding: 20px; background: @bg * 0.05 + @blue * 0.05 + @white * 0.9; position: relative;
1987
+ border: 1px solid (@bg * 0.1 + @blue * 0.1 + @white * 0.8); z-index: 1;
1988
+ h4 { font-size: 18px; margin: 0 0 10px; }
1989
+ h4:last-child { margin: 0; }
1990
+ p { font-size: 16px; margin: 0 0 10px; }
1991
+ p:last-child { margin: 0; }
1992
+ p.with_list_number.large {
1993
+ span { margin-left: 48px; display: block; color: @white; }
1994
+ }
1995
+ p.earn span { font-size: 22px; color: @white; line-height: 48px; font-weight: bold; }
1996
+ a { white-space: nowrap; }
1997
+ a.hide {
1998
+ position: absolute; top: -5px; right: -5px; display: block; height: 16px; width: 16px; padding: 3px; background: #E7E9F6; .border_radius(99);
1999
+ }
2000
+ }
2001
+
2002
+ div.blank.small {
2003
+ padding: 10px 20px;
2004
+ h4 { font-weight: normal; font-size: 16px; }
2005
+ p { margin: 0; }
2006
+ }
2007
+ div.blank.tiny {
2008
+ padding: 10px 20px;
2009
+ h4 { font-weight: normal; font-size: 14px; }
2010
+ p { margin: 0; font-size: 12px; }
2011
+ }
2012
+ div.blank.rounded {
2013
+ .border_radius(3); margin: 0 0 20px;
2014
+ }
2015
+ div.blank.rounded.bottom { .border_radius_top(0); }
2016
+ div.blank.with_border_bottom { border-bottom: 1px solid (@bg * 0.1 + @blue * 0.1 + @white * 0.8); }
2017
+ div.blank.no_border_top { border-top: none; }
2018
+ div.blank.no_border_bottom { border-bottom: none; }
2019
+ div.blank.no_side_borders { border-right: none; border-left: none; }
2020
+ div.panel {
2021
+ div.blank {
2022
+ padding: 10px 20px; overflow: hidden; margin: 0;
2023
+ h4 { font-weight: normal; font-size: 14px; }
2024
+ p, ul { margin: 0 0 10px; font-size: 12px; }
2025
+ p:last-child, ul:last-child { margin: 0; }
2026
+ }
2027
+ }
2028
+
2029
+ #yelow {
2030
+ #short {
2031
+ color: #fea;
2032
+ }
2033
+ #long {
2034
+ color: #ffeeaa;
2035
+ }
2036
+ #rgba {
2037
+ color: rgba(255, 238, 170, 0.1);
2038
+ }
2039
+ }
2040
+
2041
+ #blue {
2042
+ #short {
2043
+ color: #00f;
2044
+ }
2045
+ #long {
2046
+ color: #0000ff;
2047
+ }
2048
+ #rgba {
2049
+ color: rgba(0, 0, 255, 0.1);
2050
+ }
2051
+ }
2052
+
2053
+ #overflow {
2054
+ .a { color: #111111 - #444444; } // #000000
2055
+ .b { color: #eee + #fff; } // #ffffff
2056
+ .c { color: #aaa * 3; } // #ffffff
2057
+ .d { color: #00ee00 + #009900; } // #00ff00
2058
+ }
2059
+
2060
+ #grey {
2061
+ color: rgb(200, 200, 200);
2062
+ }
2063
+
2064
+ #808080 {
2065
+ color: hsl(50, 0%, 50%);
2066
+ }
2067
+
2068
+ #00ff00 {
2069
+ color: hsl(120, 100%, 50%);
2070
+ }
2071
+ /******************\
2072
+ * *
2073
+ * Comment Header *
2074
+ * *
2075
+ \******************/
2076
+
2077
+ /*
2078
+
2079
+ Comment
2080
+
2081
+ */
2082
+
2083
+ /*
2084
+ * Comment Test
2085
+ *
2086
+ * - cloudhead (http://cloudhead.net)
2087
+ *
2088
+ */
2089
+
2090
+ ////////////////
2091
+ @var: "content";
2092
+ ////////////////
2093
+
2094
+ /* Colors
2095
+ * ------
2096
+ * #EDF8FC (background blue)
2097
+ * #166C89 (darkest blue)
2098
+ *
2099
+ * Text:
2100
+ * #333 (standard text) // A comment within a comment!
2101
+ * #1F9EC9 (standard link)
2102
+ *
2103
+ */
2104
+
2105
+ /* @group Variables
2106
+ ------------------- */
2107
+ #comments /* boo */ {
2108
+ /**/ // An empty comment
2109
+ color: red; /* A C-style comment */
2110
+ background-color: orange; // A little comment
2111
+ font-size: 12px;
2112
+
2113
+ /* lost comment */ content: @var;
2114
+
2115
+ border: 1px solid black;
2116
+
2117
+ // padding & margin //
2118
+ padding: 0;
2119
+ margin: 2em;
2120
+ } //
2121
+
2122
+ /* commented out
2123
+ #more-comments {
2124
+ color: grey;
2125
+ }
2126
+ */
2127
+
2128
+ #last { color: blue }
2129
+ //
2130
+ .comma-delimited {
2131
+ background: url(bg.jpg) no-repeat, url(bg.png) repeat-x top left, url(bg);
2132
+ text-shadow: -1px -1px 1px red, 6px 5px 5px yellow;
2133
+ -moz-box-shadow: 0pt 0pt 2px rgba(255, 255, 255, 0.4) inset,
2134
+ 0pt 4px 6px rgba(255, 255, 255, 0.4) inset;
2135
+ }
2136
+ @font-face {
2137
+ font-family: Headline;
2138
+ src: local(Futura-Medium),
2139
+ url(fonts.svg#MyGeometricModern) format("svg");
2140
+ }
2141
+ .other {
2142
+ -moz-transform: translate(0, 11em) rotate(-90deg);
2143
+ }
2144
+ p:not([class*="lead"]) {
2145
+ color: black;
2146
+ }
2147
+
2148
+ input[type="text"].class#id[attr=32]:not(1) {
2149
+ color: white;
2150
+ }
2151
+
2152
+ div#id.class[a=1][b=2].class:not(1) {
2153
+ color: white;
2154
+ }
2155
+
2156
+ ul.comma > li:not(:only-child)::after {
2157
+ color: white;
2158
+ }
2159
+
2160
+ ol.comma > li:nth-last-child(2)::after {
2161
+ color: white;
2162
+ }
2163
+
2164
+ li:nth-child(4n+1),
2165
+ li:nth-child(-5n),
2166
+ li:nth-child(-n+2) {
2167
+ color: white;
2168
+ }
2169
+
2170
+ a[href^="http://"] {
2171
+ color: black;
2172
+ }
2173
+
2174
+ a[href$="http://"] {
2175
+ color: black;
2176
+ }
2177
+
2178
+ form[data-disabled] {
2179
+ color: black;
2180
+ }
2181
+
2182
+ p::before {
2183
+ color: black;
2184
+ }
2185
+ @charset "utf-8";
2186
+ div { color: black; }
2187
+ div { width: 99%; }
2188
+
2189
+ * {
2190
+ min-width: 45em;
2191
+ }
2192
+
2193
+ h1, h2 > a > p, h3 {
2194
+ color: none;
2195
+ }
2196
+
2197
+ div.class {
2198
+ color: blue;
2199
+ }
2200
+
2201
+ div#id {
2202
+ color: green;
2203
+ }
2204
+
2205
+ .class#id {
2206
+ color: purple;
2207
+ }
2208
+
2209
+ .one.two.three {
2210
+ color: grey;
2211
+ }
2212
+
2213
+ @media print {
2214
+ font-size: 3em;
2215
+ }
2216
+
2217
+ @media screen {
2218
+ font-size: 10px;
2219
+ }
2220
+
2221
+ @font-face {
2222
+ font-family: 'Garamond Pro';
2223
+ src: url("/fonts/garamond-pro.ttf");
2224
+ }
2225
+
2226
+ a:hover, a:link {
2227
+ color: #999;
2228
+ }
2229
+
2230
+ p, p:first-child {
2231
+ text-transform: none;
2232
+ }
2233
+
2234
+ q:lang(no) {
2235
+ quotes: none;
2236
+ }
2237
+
2238
+ p + h1 {
2239
+ font-size: 2.2em;
2240
+ }
2241
+
2242
+ #shorthands {
2243
+ border: 1px solid #000;
2244
+ font: 12px/16px Arial;
2245
+ margin: 1px 0;
2246
+ padding: 0 auto;
2247
+ background: url("http://www.lesscss.org/spec.html") no-repeat 0 4px;
2248
+ }
2249
+
2250
+ #more-shorthands {
2251
+ margin: 0;
2252
+ padding: 1px 0 2px 0;
2253
+ font: normal small/20px 'Trebuchet MS', Verdana, sans-serif;
2254
+ }
2255
+
2256
+ .misc {
2257
+ -moz-border-radius: 2px;
2258
+ display: -moz-inline-stack;
2259
+ width: .1em;
2260
+ background-color: #009998;
2261
+ background-image: url(images/image.jpg);
2262
+ background: -webkit-gradient(linear, left top, left bottom, from(red), to(blue));
2263
+ margin: ;
2264
+ }
2265
+
2266
+ #important {
2267
+ color: red !important;
2268
+ width: 100%!important;
2269
+ height: 20px ! important;
2270
+ }
2271
+
2272
+ #functions {
2273
+ @var: 10;
2274
+ color: color("red");
2275
+ width: increment(15);
2276
+ height: undefined("self");
2277
+ border-width: add(2, 3);
2278
+ variable: increment(@var);
2279
+ }
2280
+
2281
+ #built-in {
2282
+ @r: 32;
2283
+ escaped: e("-Some::weird(#thing, y)");
2284
+ lighten: lighten(#ff0000, 50%);
2285
+ darken: darken(#ff0000, 50%);
2286
+ saturate: saturate(#29332f, 20%);
2287
+ desaturate: desaturate(#203c31, 20%);
2288
+ greyscale: greyscale(#203c31);
2289
+ format: %("rgb(%d, %d, %d)", @r, 128, 64);
2290
+ format-string: %("hello %s", "world");
2291
+ eformat: e(%("rgb(%d, %d, %d)", @r, 128, 64));
2292
+ }
2293
+
2294
+ @var: @a;
2295
+ @a: 100%;
2296
+
2297
+ .lazy-eval {
2298
+ width: @var;
2299
+ }
2300
+ .mixin (@a: 1px, @b: 50%) {
2301
+ width: @a * 5;
2302
+ height: @b - 1%;
2303
+ }
2304
+
2305
+ .mixina (@style, @width, @color: black) {
2306
+ border: @width @style @color;
2307
+ }
2308
+
2309
+ .mixiny
2310
+ (@a: 0, @b: 0) {
2311
+ margin: @a;
2312
+ padding: @b;
2313
+ }
2314
+
2315
+ .hidden() {
2316
+ color: transparent;
2317
+ }
2318
+
2319
+ .two-args {
2320
+ color: blue;
2321
+ .mixin(2px, 100%);
2322
+ .mixina(dotted, 2px);
2323
+ }
2324
+
2325
+ .one-arg {
2326
+ .mixin(3px);
2327
+ }
2328
+
2329
+ .no-parens {
2330
+ .mixin;
2331
+ }
2332
+
2333
+ .no-args {
2334
+ .mixin();
2335
+ }
2336
+
2337
+ .var-args {
2338
+ @var: 9;
2339
+ .mixin(@var, @var * 2);
2340
+ }
2341
+
2342
+ .multi-mix {
2343
+ .mixin(2px, 30%);
2344
+ .mixiny(4, 5);
2345
+ }
2346
+
2347
+ .maxa(@arg1: 10, @arg2: #f00) {
2348
+ padding: @arg1 * 2px;
2349
+ color: @arg2;
2350
+ }
2351
+
2352
+ body {
2353
+ .maxa(15);
2354
+ }
2355
+
2356
+ @glob: 5;
2357
+ .global-mixin(@a:2) {
2358
+ width: @glob + @a;
2359
+ }
2360
+
2361
+ .scope-mix {
2362
+ .global-mixin(3);
2363
+ }
2364
+
2365
+ .nested-ruleset (@width: 200px) {
2366
+ width: @width;
2367
+ .column { margin: @width; }
2368
+ }
2369
+ .content {
2370
+ .nested-ruleset(600px);
2371
+ }
2372
+
2373
+ //
2374
+
2375
+ .same-var-name2(@radius) {
2376
+ radius: @radius;
2377
+ }
2378
+ .same-var-name(@radius) {
2379
+ .same-var-name2(@radius);
2380
+ }
2381
+ #same-var-name {
2382
+ .same-var-name(5px);
2383
+ }
2384
+
2385
+ //
2386
+
2387
+ .var-inside () {
2388
+ @var: 10px;
2389
+ width: @var;
2390
+ }
2391
+ #var-inside { .var-inside; }
2392
+ .mix-inner (@var) {
2393
+ border-width: @var;
2394
+ }
2395
+
2396
+ .mix (@a: 10) {
2397
+ .inner {
2398
+ height: @a * 10;
2399
+
2400
+ .innest {
2401
+ width: @a;
2402
+ .mix-inner(@a * 2);
2403
+ }
2404
+ }
2405
+ }
2406
+
2407
+ .class {
2408
+ .mix(30);
2409
+ }
2410
+ .mixin () {
2411
+ zero: 0;
2412
+ }
2413
+ .mixin (@a: 1px) {
2414
+ one: 1;
2415
+ }
2416
+ .mixin (@a) {
2417
+ one-req: 1;
2418
+ }
2419
+ .mixin (@a: 1px, @b: 2px) {
2420
+ two: 2;
2421
+ }
2422
+
2423
+ .mixin (@a, @b, @c) {
2424
+ three-req: 3;
2425
+ }
2426
+
2427
+ .mixin (@a: 1px, @b: 2px, @c: 3px) {
2428
+ three: 3;
2429
+ }
2430
+
2431
+ .zero {
2432
+ .mixin();
2433
+ }
2434
+
2435
+ .one {
2436
+ .mixin(1);
2437
+ }
2438
+
2439
+ .two {
2440
+ .mixin(1, 2);
2441
+ }
2442
+
2443
+ .three {
2444
+ .mixin(1, 2, 3);
2445
+ }
2446
+
2447
+ //
2448
+
2449
+ .mixout ('left') {
2450
+ left: 1;
2451
+ }
2452
+
2453
+ .mixout ('right') {
2454
+ right: 1;
2455
+ }
2456
+
2457
+ .left {
2458
+ .mixout('left');
2459
+ }
2460
+ .right {
2461
+ .mixout('right');
2462
+ }
2463
+
2464
+ //
2465
+
2466
+ .border (@side, @width) {
2467
+ color: black;
2468
+ .border-side(@side, @width);
2469
+ }
2470
+ .border-side (left, @w) {
2471
+ border-left: @w;
2472
+ }
2473
+ .border-side (right, @w) {
2474
+ border-right: @w;
2475
+ }
2476
+
2477
+ .border-right {
2478
+ .border(right, 4px);
2479
+ }
2480
+ .border-left {
2481
+ .border(left, 4px);
2482
+ }
2483
+
2484
+ //
2485
+
2486
+
2487
+ .border-radius (@r) {
2488
+ both: @r * 10;
2489
+ }
2490
+ .border-radius (@r, left) {
2491
+ left: @r;
2492
+ }
2493
+ .border-radius (@r, right) {
2494
+ right: @r;
2495
+ }
2496
+
2497
+ .only-right {
2498
+ .border-radius(33, right);
2499
+ }
2500
+ .only-left {
2501
+ .border-radius(33, left);
2502
+ }
2503
+ .left-right {
2504
+ .border-radius(33);
2505
+ }
2506
+ .mixin { border: 1px solid black; }
2507
+ .mixout { border-color: orange; }
2508
+ .borders { border-style: dashed; }
2509
+
2510
+ #namespace {
2511
+ .borders {
2512
+ border-style: dotted;
2513
+ }
2514
+ .biohazard {
2515
+ content: "death";
2516
+ .man {
2517
+ color: transparent;
2518
+ }
2519
+ }
2520
+ }
2521
+ #theme {
2522
+ > .mixin {
2523
+ background-color: grey;
2524
+ }
2525
+ }
2526
+ #container {
2527
+ color: black;
2528
+ .mixin;
2529
+ .mixout;
2530
+ #theme > .mixin;
2531
+ }
2532
+
2533
+ #header {
2534
+ .milk {
2535
+ color: white;
2536
+ .mixin;
2537
+ #theme > .mixin;
2538
+ }
2539
+ #cookie {
2540
+ .chips {
2541
+ #namespace .borders;
2542
+ .calories {
2543
+ #container;
2544
+ }
2545
+ }
2546
+ .borders;
2547
+ }
2548
+ }
2549
+ .secure-zone { #namespace .biohazard .man; }
2550
+ .direct {
2551
+ #namespace > .borders;
2552
+ }
2553
+ #operations {
2554
+ color: #110000 + #000011 + #001100; // #111111
2555
+ height: 10px / 2px + 6px - 1px * 2; // 9px
2556
+ width: 2 * 4 - 5em; // 3em
2557
+ .spacing {
2558
+ height: 10px / 2px+6px-1px*2;
2559
+ width: 2 * 4-5em;
2560
+ }
2561
+ substraction: 20 - 10 - 5 - 5; // 0
2562
+ division: 20 / 5 / 4; // 1
2563
+ }
2564
+
2565
+ @x: 4;
2566
+ @y: 12em;
2567
+
2568
+ .with-variables {
2569
+ height: @x + @y; // 16em
2570
+ width: 12 + @y; // 24em
2571
+ size: 5cm - @x; // 1cm
2572
+ }
2573
+
2574
+ @z: -2;
2575
+
2576
+ .negative {
2577
+ height: 2px + @z; // 0px
2578
+ width: 2px - @z; // 4px
2579
+ }
2580
+
2581
+ .shorthands {
2582
+ padding: -1px 2px 0 -4px; //
2583
+ }
2584
+
2585
+ .colors {
2586
+ color: #123; // #112233
2587
+ border-color: #234 + #111111; // #334455
2588
+ background-color: #222222 - #fff; // #000000
2589
+ .other {
2590
+ color: 2 * #111; // #222222
2591
+ border-color: #333333 / 3 + #111; // #222222
2592
+ }
2593
+ }
2594
+ .parens {
2595
+ @var: 1px;
2596
+ border: (@var * 2) solid black;
2597
+ margin: (@var * 1) (@var + 2) (4 * 4) 3;
2598
+ width: (6 * 6);
2599
+ padding: 2px (6px * 6px);
2600
+ }
2601
+
2602
+ .more-parens {
2603
+ @var: (2 * 2);
2604
+ padding: (2 * @var) 4 4 (@var * 1px);
2605
+ width: (@var * @var) * 6;
2606
+ height: (7 * 7) + (8 * 8);
2607
+ margin: 4 * (5 + 5) / 2 - (@var * 2);
2608
+ //margin: (6 * 6)px;
2609
+ }
2610
+
2611
+ .nested-parens {
2612
+ width: 2 * (4 * (2 + (1 + 6))) - 1;
2613
+ height: ((2+3)*(2+3) / (9-4)) + 1;
2614
+ }
2615
+
2616
+ .mixed-units {
2617
+ margin: 2px 4em 1 5pc;
2618
+ padding: (2px + 4px) 1em 2px 2;
2619
+ }
2620
+ #first > .one {
2621
+ > #second .two > #deux {
2622
+ width: 50%;
2623
+ #third {
2624
+ &:focus {
2625
+ color: black;
2626
+ #fifth {
2627
+ > #sixth {
2628
+ .seventh #eighth {
2629
+ + #ninth {
2630
+ color: purple;
2631
+ }
2632
+ }
2633
+ }
2634
+ }
2635
+ }
2636
+ height: 100%;
2637
+ }
2638
+ #fourth, #five, #six {
2639
+ color: #110000;
2640
+ .seven, .eight > #nine {
2641
+ border: 1px solid black;
2642
+ }
2643
+ #ten {
2644
+ color: red;
2645
+ }
2646
+ }
2647
+ }
2648
+ font-size: 2em;
2649
+ }
2650
+ @x: blue;
2651
+ @z: transparent;
2652
+ @mix: none;
2653
+
2654
+ .mixin {
2655
+ @mix: #989;
2656
+ }
2657
+
2658
+ .tiny-scope {
2659
+ color: @mix; // #989
2660
+ .mixin;
2661
+ }
2662
+
2663
+ .scope1 {
2664
+ @y: orange;
2665
+ @z: black;
2666
+ color: @x; // blue
2667
+ border-color: @z; // black
2668
+ .hidden {
2669
+ @x: #131313;
2670
+ }
2671
+ .scope2 {
2672
+ @y: red;
2673
+ color: @x; // blue
2674
+ .scope3 {
2675
+ @local: white;
2676
+ color: @y; // red
2677
+ border-color: @z; // black
2678
+ background-color: @local; // white
2679
+ }
2680
+ }
2681
+ }h1, h2, h3 {
2682
+ a, p {
2683
+ &:hover {
2684
+ color: red;
2685
+ }
2686
+ }
2687
+ }
2688
+
2689
+ #all { color: blue; }
2690
+ #the { color: blue; }
2691
+ #same { color: blue; }
2692
+
2693
+ ul, li, div, q, blockquote, textarea {
2694
+ margin: 0;
2695
+ }
2696
+
2697
+ td {
2698
+ margin: 0;
2699
+ padding: 0;
2700
+ }
2701
+
2702
+ td, input {
2703
+ line-height: 1em;
2704
+ }
2705
+ #strings {
2706
+ background-image: url("http://son-of-a-banana.com");
2707
+ quotes: "~" "~";
2708
+ content: "#*%:&^,)!.(~*})";
2709
+ empty: "";
2710
+ brackets: "{" "}";
2711
+ }
2712
+ #comments {
2713
+ content: "/* hello */ // not-so-secret";
2714
+ }
2715
+ #single-quote {
2716
+ quotes: "'" "'";
2717
+ content: '""#!&""';
2718
+ empty: '';
2719
+ }
2720
+ @a: 2;
2721
+ @x: @a * @a;
2722
+ @y: @x + 1;
2723
+ @z: @x * 2 + @y;
2724
+
2725
+ .variables {
2726
+ width: @z + 1cm; // 14cm
2727
+ }
2728
+
2729
+ @b: @a * 10;
2730
+ @c: #888;
2731
+
2732
+ @fonts: "Trebuchet MS", Verdana, sans-serif;
2733
+ @f: @fonts;
2734
+
2735
+ @quotes: "~" "~";
2736
+ @q: @quotes;
2737
+
2738
+ .variables {
2739
+ height: @b + @x + 0px; // 24px
2740
+ color: @c;
2741
+ font-family: @f;
2742
+ quotes: @q;
2743
+ }
2744
+
2745
+ .redefinition {
2746
+ @var: 4;
2747
+ @var: 2;
2748
+ @var: 3;
2749
+ three: @var;
2750
+ }
2751
+
2752
+ .values {
2753
+ @a: 'Trebuchet';
2754
+ font-family: @a, @a, @a;
2755
+ }
2756
+
2757
+
2758
+ .whitespace
2759
+ { color: white; }
2760
+
2761
+ .whitespace
2762
+ {
2763
+ color: white;
2764
+ }
2765
+ .whitespace
2766
+ { color: white; }
2767
+
2768
+ .whitespace{color:white;}
2769
+ .whitespace { color : white ; }
2770
+
2771
+ .white,
2772
+ .space,
2773
+ .mania
2774
+ { color: white; }
2775
+
2776
+ .no-semi-column { color: white }
2777
+ .no-semi-column {
2778
+ color: white;
2779
+ white-space: pre
2780
+ }
2781
+ .no-semi-column {border: 2px solid white}
2782
+ .newlines {
2783
+ background: the,
2784
+ great,
2785
+ wall;
2786
+ border: 2px
2787
+ solid
2788
+ black;
2789
+ }
2790
+ .empty {
2791
+
2792
+ }
2793
+ #yelow {
2794
+ #short {
2795
+ color: #fea;
2796
+ }
2797
+ #long {
2798
+ color: #ffeeaa;
2799
+ }
2800
+ #rgba {
2801
+ color: rgba(255, 238, 170, 0.1);
2802
+ }
2803
+ }
2804
+
2805
+ #blue {
2806
+ #short {
2807
+ color: #00f;
2808
+ }
2809
+ #long {
2810
+ color: #0000ff;
2811
+ }
2812
+ #rgba {
2813
+ color: rgba(0, 0, 255, 0.1);
2814
+ }
2815
+ }
2816
+
2817
+ #overflow {
2818
+ .a { color: #111111 - #444444; } // #000000
2819
+ .b { color: #eee + #fff; } // #ffffff
2820
+ .c { color: #aaa * 3; } // #ffffff
2821
+ .d { color: #00ee00 + #009900; } // #00ff00
2822
+ }
2823
+
2824
+ #grey {
2825
+ color: rgb(200, 200, 200);
2826
+ }
2827
+
2828
+ #808080 {
2829
+ color: hsl(50, 0%, 50%);
2830
+ }
2831
+
2832
+ #00ff00 {
2833
+ color: hsl(120, 100%, 50%);
2834
+ }
2835
+ /******************\
2836
+ * *
2837
+ * Comment Header *
2838
+ * *
2839
+ \******************/
2840
+
2841
+ /*
2842
+
2843
+ Comment
2844
+
2845
+ */
2846
+
2847
+ /*
2848
+ * Comment Test
2849
+ *
2850
+ * - cloudhead (http://cloudhead.net)
2851
+ *
2852
+ */
2853
+
2854
+ ////////////////
2855
+ @var: "content";
2856
+ ////////////////
2857
+
2858
+ /* Colors
2859
+ * ------
2860
+ * #EDF8FC (background blue)
2861
+ * #166C89 (darkest blue)
2862
+ *
2863
+ * Text:
2864
+ * #333 (standard text) // A comment within a comment!
2865
+ * #1F9EC9 (standard link)
2866
+ *
2867
+ */
2868
+
2869
+ /* @group Variables
2870
+ ------------------- */
2871
+ #comments /* boo */ {
2872
+ /**/ // An empty comment
2873
+ color: red; /* A C-style comment */
2874
+ background-color: orange; // A little comment
2875
+ font-size: 12px;
2876
+
2877
+ /* lost comment */ content: @var;
2878
+
2879
+ border: 1px solid black;
2880
+
2881
+ // padding & margin //
2882
+ padding: 0;
2883
+ margin: 2em;
2884
+ } //
2885
+
2886
+ /* commented out
2887
+ #more-comments {
2888
+ color: grey;
2889
+ }
2890
+ */
2891
+
2892
+ #last { color: blue }
2893
+ //
2894
+ .comma-delimited {
2895
+ background: url(bg.jpg) no-repeat, url(bg.png) repeat-x top left, url(bg);
2896
+ text-shadow: -1px -1px 1px red, 6px 5px 5px yellow;
2897
+ -moz-box-shadow: 0pt 0pt 2px rgba(255, 255, 255, 0.4) inset,
2898
+ 0pt 4px 6px rgba(255, 255, 255, 0.4) inset;
2899
+ }
2900
+ @font-face {
2901
+ font-family: Headline;
2902
+ src: local(Futura-Medium),
2903
+ url(fonts.svg#MyGeometricModern) format("svg");
2904
+ }
2905
+ .other {
2906
+ -moz-transform: translate(0, 11em) rotate(-90deg);
2907
+ }
2908
+ p:not([class*="lead"]) {
2909
+ color: black;
2910
+ }
2911
+
2912
+ input[type="text"].class#id[attr=32]:not(1) {
2913
+ color: white;
2914
+ }
2915
+
2916
+ div#id.class[a=1][b=2].class:not(1) {
2917
+ color: white;
2918
+ }
2919
+
2920
+ ul.comma > li:not(:only-child)::after {
2921
+ color: white;
2922
+ }
2923
+
2924
+ ol.comma > li:nth-last-child(2)::after {
2925
+ color: white;
2926
+ }
2927
+
2928
+ li:nth-child(4n+1),
2929
+ li:nth-child(-5n),
2930
+ li:nth-child(-n+2) {
2931
+ color: white;
2932
+ }
2933
+
2934
+ a[href^="http://"] {
2935
+ color: black;
2936
+ }
2937
+
2938
+ a[href$="http://"] {
2939
+ color: black;
2940
+ }
2941
+
2942
+ form[data-disabled] {
2943
+ color: black;
2944
+ }
2945
+
2946
+ p::before {
2947
+ color: black;
2948
+ }
2949
+ @charset "utf-8";
2950
+ div { color: black; }
2951
+ div { width: 99%; }
2952
+
2953
+ * {
2954
+ min-width: 45em;
2955
+ }
2956
+
2957
+ h1, h2 > a > p, h3 {
2958
+ color: none;
2959
+ }
2960
+
2961
+ div.class {
2962
+ color: blue;
2963
+ }
2964
+
2965
+ div#id {
2966
+ color: green;
2967
+ }
2968
+
2969
+ .class#id {
2970
+ color: purple;
2971
+ }
2972
+
2973
+ .one.two.three {
2974
+ color: grey;
2975
+ }
2976
+
2977
+ @media print {
2978
+ font-size: 3em;
2979
+ }
2980
+
2981
+ @media screen {
2982
+ font-size: 10px;
2983
+ }
2984
+
2985
+ @font-face {
2986
+ font-family: 'Garamond Pro';
2987
+ src: url("/fonts/garamond-pro.ttf");
2988
+ }
2989
+
2990
+ a:hover, a:link {
2991
+ color: #999;
2992
+ }
2993
+
2994
+ p, p:first-child {
2995
+ text-transform: none;
2996
+ }
2997
+
2998
+ q:lang(no) {
2999
+ quotes: none;
3000
+ }
3001
+
3002
+ p + h1 {
3003
+ font-size: 2.2em;
3004
+ }
3005
+
3006
+ #shorthands {
3007
+ border: 1px solid #000;
3008
+ font: 12px/16px Arial;
3009
+ margin: 1px 0;
3010
+ padding: 0 auto;
3011
+ background: url("http://www.lesscss.org/spec.html") no-repeat 0 4px;
3012
+ }
3013
+
3014
+ #more-shorthands {
3015
+ margin: 0;
3016
+ padding: 1px 0 2px 0;
3017
+ font: normal small/20px 'Trebuchet MS', Verdana, sans-serif;
3018
+ }
3019
+
3020
+ .misc {
3021
+ -moz-border-radius: 2px;
3022
+ display: -moz-inline-stack;
3023
+ width: .1em;
3024
+ background-color: #009998;
3025
+ background-image: url(images/image.jpg);
3026
+ background: -webkit-gradient(linear, left top, left bottom, from(red), to(blue));
3027
+ margin: ;
3028
+ }
3029
+
3030
+ #important {
3031
+ color: red !important;
3032
+ width: 100%!important;
3033
+ height: 20px ! important;
3034
+ }
3035
+
3036
+ #functions {
3037
+ @var: 10;
3038
+ color: color("red");
3039
+ width: increment(15);
3040
+ height: undefined("self");
3041
+ border-width: add(2, 3);
3042
+ variable: increment(@var);
3043
+ }
3044
+
3045
+ #built-in {
3046
+ @r: 32;
3047
+ escaped: e("-Some::weird(#thing, y)");
3048
+ lighten: lighten(#ff0000, 50%);
3049
+ darken: darken(#ff0000, 50%);
3050
+ saturate: saturate(#29332f, 20%);
3051
+ desaturate: desaturate(#203c31, 20%);
3052
+ greyscale: greyscale(#203c31);
3053
+ format: %("rgb(%d, %d, %d)", @r, 128, 64);
3054
+ format-string: %("hello %s", "world");
3055
+ eformat: e(%("rgb(%d, %d, %d)", @r, 128, 64));
3056
+ }
3057
+
3058
+ @var: @a;
3059
+ @a: 100%;
3060
+
3061
+ .lazy-eval {
3062
+ width: @var;
3063
+ }
3064
+ .mixin (@a: 1px, @b: 50%) {
3065
+ width: @a * 5;
3066
+ height: @b - 1%;
3067
+ }
3068
+
3069
+ .mixina (@style, @width, @color: black) {
3070
+ border: @width @style @color;
3071
+ }
3072
+
3073
+ .mixiny
3074
+ (@a: 0, @b: 0) {
3075
+ margin: @a;
3076
+ padding: @b;
3077
+ }
3078
+
3079
+ .hidden() {
3080
+ color: transparent;
3081
+ }
3082
+
3083
+ .two-args {
3084
+ color: blue;
3085
+ .mixin(2px, 100%);
3086
+ .mixina(dotted, 2px);
3087
+ }
3088
+
3089
+ .one-arg {
3090
+ .mixin(3px);
3091
+ }
3092
+
3093
+ .no-parens {
3094
+ .mixin;
3095
+ }
3096
+
3097
+ .no-args {
3098
+ .mixin();
3099
+ }
3100
+
3101
+ .var-args {
3102
+ @var: 9;
3103
+ .mixin(@var, @var * 2);
3104
+ }
3105
+
3106
+ .multi-mix {
3107
+ .mixin(2px, 30%);
3108
+ .mixiny(4, 5);
3109
+ }
3110
+
3111
+ .maxa(@arg1: 10, @arg2: #f00) {
3112
+ padding: @arg1 * 2px;
3113
+ color: @arg2;
3114
+ }
3115
+
3116
+ body {
3117
+ .maxa(15);
3118
+ }
3119
+
3120
+ @glob: 5;
3121
+ .global-mixin(@a:2) {
3122
+ width: @glob + @a;
3123
+ }
3124
+
3125
+ .scope-mix {
3126
+ .global-mixin(3);
3127
+ }
3128
+
3129
+ .nested-ruleset (@width: 200px) {
3130
+ width: @width;
3131
+ .column { margin: @width; }
3132
+ }
3133
+ .content {
3134
+ .nested-ruleset(600px);
3135
+ }
3136
+
3137
+ //
3138
+
3139
+ .same-var-name2(@radius) {
3140
+ radius: @radius;
3141
+ }
3142
+ .same-var-name(@radius) {
3143
+ .same-var-name2(@radius);
3144
+ }
3145
+ #same-var-name {
3146
+ .same-var-name(5px);
3147
+ }
3148
+
3149
+ //
3150
+
3151
+ .var-inside () {
3152
+ @var: 10px;
3153
+ width: @var;
3154
+ }
3155
+ #var-inside { .var-inside; }
3156
+ .mix-inner (@var) {
3157
+ border-width: @var;
3158
+ }
3159
+
3160
+ .mix (@a: 10) {
3161
+ .inner {
3162
+ height: @a * 10;
3163
+
3164
+ .innest {
3165
+ width: @a;
3166
+ .mix-inner(@a * 2);
3167
+ }
3168
+ }
3169
+ }
3170
+
3171
+ .class {
3172
+ .mix(30);
3173
+ }
3174
+ .mixin () {
3175
+ zero: 0;
3176
+ }
3177
+ .mixin (@a: 1px) {
3178
+ one: 1;
3179
+ }
3180
+ .mixin (@a) {
3181
+ one-req: 1;
3182
+ }
3183
+ .mixin (@a: 1px, @b: 2px) {
3184
+ two: 2;
3185
+ }
3186
+
3187
+ .mixin (@a, @b, @c) {
3188
+ three-req: 3;
3189
+ }
3190
+
3191
+ .mixin (@a: 1px, @b: 2px, @c: 3px) {
3192
+ three: 3;
3193
+ }
3194
+
3195
+ .zero {
3196
+ .mixin();
3197
+ }
3198
+
3199
+ .one {
3200
+ .mixin(1);
3201
+ }
3202
+
3203
+ .two {
3204
+ .mixin(1, 2);
3205
+ }
3206
+
3207
+ .three {
3208
+ .mixin(1, 2, 3);
3209
+ }
3210
+
3211
+ //
3212
+
3213
+ .mixout ('left') {
3214
+ left: 1;
3215
+ }
3216
+
3217
+ .mixout ('right') {
3218
+ right: 1;
3219
+ }
3220
+
3221
+ .left {
3222
+ .mixout('left');
3223
+ }
3224
+ .right {
3225
+ .mixout('right');
3226
+ }
3227
+
3228
+ //
3229
+
3230
+ .border (@side, @width) {
3231
+ color: black;
3232
+ .border-side(@side, @width);
3233
+ }
3234
+ .border-side (left, @w) {
3235
+ border-left: @w;
3236
+ }
3237
+ .border-side (right, @w) {
3238
+ border-right: @w;
3239
+ }
3240
+
3241
+ .border-right {
3242
+ .border(right, 4px);
3243
+ }
3244
+ .border-left {
3245
+ .border(left, 4px);
3246
+ }
3247
+
3248
+ //
3249
+
3250
+
3251
+ .border-radius (@r) {
3252
+ both: @r * 10;
3253
+ }
3254
+ .border-radius (@r, left) {
3255
+ left: @r;
3256
+ }
3257
+ .border-radius (@r, right) {
3258
+ right: @r;
3259
+ }
3260
+
3261
+ .only-right {
3262
+ .border-radius(33, right);
3263
+ }
3264
+ .only-left {
3265
+ .border-radius(33, left);
3266
+ }
3267
+ .left-right {
3268
+ .border-radius(33);
3269
+ }
3270
+ .mixin { border: 1px solid black; }
3271
+ .mixout { border-color: orange; }
3272
+ .borders { border-style: dashed; }
3273
+
3274
+ #namespace {
3275
+ .borders {
3276
+ border-style: dotted;
3277
+ }
3278
+ .biohazard {
3279
+ content: "death";
3280
+ .man {
3281
+ color: transparent;
3282
+ }
3283
+ }
3284
+ }
3285
+ #theme {
3286
+ > .mixin {
3287
+ background-color: grey;
3288
+ }
3289
+ }
3290
+ #container {
3291
+ color: black;
3292
+ .mixin;
3293
+ .mixout;
3294
+ #theme > .mixin;
3295
+ }
3296
+
3297
+ #header {
3298
+ .milk {
3299
+ color: white;
3300
+ .mixin;
3301
+ #theme > .mixin;
3302
+ }
3303
+ #cookie {
3304
+ .chips {
3305
+ #namespace .borders;
3306
+ .calories {
3307
+ #container;
3308
+ }
3309
+ }
3310
+ .borders;
3311
+ }
3312
+ }
3313
+ .secure-zone { #namespace .biohazard .man; }
3314
+ .direct {
3315
+ #namespace > .borders;
3316
+ }
3317
+ #operations {
3318
+ color: #110000 + #000011 + #001100; // #111111
3319
+ height: 10px / 2px + 6px - 1px * 2; // 9px
3320
+ width: 2 * 4 - 5em; // 3em
3321
+ .spacing {
3322
+ height: 10px / 2px+6px-1px*2;
3323
+ width: 2 * 4-5em;
3324
+ }
3325
+ substraction: 20 - 10 - 5 - 5; // 0
3326
+ division: 20 / 5 / 4; // 1
3327
+ }
3328
+
3329
+ @x: 4;
3330
+ @y: 12em;
3331
+
3332
+ .with-variables {
3333
+ height: @x + @y; // 16em
3334
+ width: 12 + @y; // 24em
3335
+ size: 5cm - @x; // 1cm
3336
+ }
3337
+
3338
+ @z: -2;
3339
+
3340
+ .negative {
3341
+ height: 2px + @z; // 0px
3342
+ width: 2px - @z; // 4px
3343
+ }
3344
+
3345
+ .shorthands {
3346
+ padding: -1px 2px 0 -4px; //
3347
+ }
3348
+
3349
+ .colors {
3350
+ color: #123; // #112233
3351
+ border-color: #234 + #111111; // #334455
3352
+ background-color: #222222 - #fff; // #000000
3353
+ .other {
3354
+ color: 2 * #111; // #222222
3355
+ border-color: #333333 / 3 + #111; // #222222
3356
+ }
3357
+ }
3358
+ .parens {
3359
+ @var: 1px;
3360
+ border: (@var * 2) solid black;
3361
+ margin: (@var * 1) (@var + 2) (4 * 4) 3;
3362
+ width: (6 * 6);
3363
+ padding: 2px (6px * 6px);
3364
+ }
3365
+
3366
+ .more-parens {
3367
+ @var: (2 * 2);
3368
+ padding: (2 * @var) 4 4 (@var * 1px);
3369
+ width: (@var * @var) * 6;
3370
+ height: (7 * 7) + (8 * 8);
3371
+ margin: 4 * (5 + 5) / 2 - (@var * 2);
3372
+ //margin: (6 * 6)px;
3373
+ }
3374
+
3375
+ .nested-parens {
3376
+ width: 2 * (4 * (2 + (1 + 6))) - 1;
3377
+ height: ((2+3)*(2+3) / (9-4)) + 1;
3378
+ }
3379
+
3380
+ .mixed-units {
3381
+ margin: 2px 4em 1 5pc;
3382
+ padding: (2px + 4px) 1em 2px 2;
3383
+ }
3384
+ #first > .one {
3385
+ > #second .two > #deux {
3386
+ width: 50%;
3387
+ #third {
3388
+ &:focus {
3389
+ color: black;
3390
+ #fifth {
3391
+ > #sixth {
3392
+ .seventh #eighth {
3393
+ + #ninth {
3394
+ color: purple;
3395
+ }
3396
+ }
3397
+ }
3398
+ }
3399
+ }
3400
+ height: 100%;
3401
+ }
3402
+ #fourth, #five, #six {
3403
+ color: #110000;
3404
+ .seven, .eight > #nine {
3405
+ border: 1px solid black;
3406
+ }
3407
+ #ten {
3408
+ color: red;
3409
+ }
3410
+ }
3411
+ }
3412
+ font-size: 2em;
3413
+ }
3414
+ @x: blue;
3415
+ @z: transparent;
3416
+ @mix: none;
3417
+
3418
+ .mixin {
3419
+ @mix: #989;
3420
+ }
3421
+
3422
+ .tiny-scope {
3423
+ color: @mix; // #989
3424
+ .mixin;
3425
+ }
3426
+
3427
+ .scope1 {
3428
+ @y: orange;
3429
+ @z: black;
3430
+ color: @x; // blue
3431
+ border-color: @z; // black
3432
+ .hidden {
3433
+ @x: #131313;
3434
+ }
3435
+ .scope2 {
3436
+ @y: red;
3437
+ color: @x; // blue
3438
+ .scope3 {
3439
+ @local: white;
3440
+ color: @y; // red
3441
+ border-color: @z; // black
3442
+ background-color: @local; // white
3443
+ }
3444
+ }
3445
+ }h1, h2, h3 {
3446
+ a, p {
3447
+ &:hover {
3448
+ color: red;
3449
+ }
3450
+ }
3451
+ }
3452
+
3453
+ #all { color: blue; }
3454
+ #the { color: blue; }
3455
+ #same { color: blue; }
3456
+
3457
+ ul, li, div, q, blockquote, textarea {
3458
+ margin: 0;
3459
+ }
3460
+
3461
+ td {
3462
+ margin: 0;
3463
+ padding: 0;
3464
+ }
3465
+
3466
+ td, input {
3467
+ line-height: 1em;
3468
+ }
3469
+ #strings {
3470
+ background-image: url("http://son-of-a-banana.com");
3471
+ quotes: "~" "~";
3472
+ content: "#*%:&^,)!.(~*})";
3473
+ empty: "";
3474
+ brackets: "{" "}";
3475
+ }
3476
+ #comments {
3477
+ content: "/* hello */ // not-so-secret";
3478
+ }
3479
+ #single-quote {
3480
+ quotes: "'" "'";
3481
+ content: '""#!&""';
3482
+ empty: '';
3483
+ }
3484
+ @a: 2;
3485
+ @x: @a * @a;
3486
+ @y: @x + 1;
3487
+ @z: @x * 2 + @y;
3488
+
3489
+ .variables {
3490
+ width: @z + 1cm; // 14cm
3491
+ }
3492
+
3493
+ @b: @a * 10;
3494
+ @c: #888;
3495
+
3496
+ @fonts: "Trebuchet MS", Verdana, sans-serif;
3497
+ @f: @fonts;
3498
+
3499
+ @quotes: "~" "~";
3500
+ @q: @quotes;
3501
+
3502
+ .variables {
3503
+ height: @b + @x + 0px; // 24px
3504
+ color: @c;
3505
+ font-family: @f;
3506
+ quotes: @q;
3507
+ }
3508
+
3509
+ .redefinition {
3510
+ @var: 4;
3511
+ @var: 2;
3512
+ @var: 3;
3513
+ three: @var;
3514
+ }
3515
+
3516
+ .values {
3517
+ @a: 'Trebuchet';
3518
+ font-family: @a, @a, @a;
3519
+ }
3520
+
3521
+
3522
+ .whitespace
3523
+ { color: white; }
3524
+
3525
+ .whitespace
3526
+ {
3527
+ color: white;
3528
+ }
3529
+ .whitespace
3530
+ { color: white; }
3531
+
3532
+ .whitespace{color:white;}
3533
+ .whitespace { color : white ; }
3534
+
3535
+ .white,
3536
+ .space,
3537
+ .mania
3538
+ { color: white; }
3539
+
3540
+ .no-semi-column { color: white }
3541
+ .no-semi-column {
3542
+ color: white;
3543
+ white-space: pre
3544
+ }
3545
+ .no-semi-column {border: 2px solid white}
3546
+ .newlines {
3547
+ background: the,
3548
+ great,
3549
+ wall;
3550
+ border: 2px
3551
+ solid
3552
+ black;
3553
+ }
3554
+ .empty {
3555
+
3556
+ }
3557
+ #yelow {
3558
+ #short {
3559
+ color: #fea;
3560
+ }
3561
+ #long {
3562
+ color: #ffeeaa;
3563
+ }
3564
+ #rgba {
3565
+ color: rgba(255, 238, 170, 0.1);
3566
+ }
3567
+ }
3568
+
3569
+ #blue {
3570
+ #short {
3571
+ color: #00f;
3572
+ }
3573
+ #long {
3574
+ color: #0000ff;
3575
+ }
3576
+ #rgba {
3577
+ color: rgba(0, 0, 255, 0.1);
3578
+ }
3579
+ }
3580
+
3581
+ #overflow {
3582
+ .a { color: #111111 - #444444; } // #000000
3583
+ .b { color: #eee + #fff; } // #ffffff
3584
+ .c { color: #aaa * 3; } // #ffffff
3585
+ .d { color: #00ee00 + #009900; } // #00ff00
3586
+ }
3587
+
3588
+ #grey {
3589
+ color: rgb(200, 200, 200);
3590
+ }
3591
+
3592
+ #808080 {
3593
+ color: hsl(50, 0%, 50%);
3594
+ }
3595
+
3596
+ #00ff00 {
3597
+ color: hsl(120, 100%, 50%);
3598
+ }
3599
+ /******************\
3600
+ * *
3601
+ * Comment Header *
3602
+ * *
3603
+ \******************/
3604
+
3605
+ /*
3606
+
3607
+ Comment
3608
+
3609
+ */
3610
+
3611
+ /*
3612
+ * Comment Test
3613
+ *
3614
+ * - cloudhead (http://cloudhead.net)
3615
+ *
3616
+ */
3617
+
3618
+ ////////////////
3619
+ @var: "content";
3620
+ ////////////////
3621
+
3622
+ /* Colors
3623
+ * ------
3624
+ * #EDF8FC (background blue)
3625
+ * #166C89 (darkest blue)
3626
+ *
3627
+ * Text:
3628
+ * #333 (standard text) // A comment within a comment!
3629
+ * #1F9EC9 (standard link)
3630
+ *
3631
+ */
3632
+
3633
+ /* @group Variables
3634
+ ------------------- */
3635
+ #comments /* boo */ {
3636
+ /**/ // An empty comment
3637
+ color: red; /* A C-style comment */
3638
+ background-color: orange; // A little comment
3639
+ font-size: 12px;
3640
+
3641
+ /* lost comment */ content: @var;
3642
+
3643
+ border: 1px solid black;
3644
+
3645
+ // padding & margin //
3646
+ padding: 0;
3647
+ margin: 2em;
3648
+ } //
3649
+
3650
+ /* commented out
3651
+ #more-comments {
3652
+ color: grey;
3653
+ }
3654
+ */
3655
+
3656
+ #last { color: blue }
3657
+ //
3658
+ .comma-delimited {
3659
+ background: url(bg.jpg) no-repeat, url(bg.png) repeat-x top left, url(bg);
3660
+ text-shadow: -1px -1px 1px red, 6px 5px 5px yellow;
3661
+ -moz-box-shadow: 0pt 0pt 2px rgba(255, 255, 255, 0.4) inset,
3662
+ 0pt 4px 6px rgba(255, 255, 255, 0.4) inset;
3663
+ }
3664
+ @font-face {
3665
+ font-family: Headline;
3666
+ src: local(Futura-Medium),
3667
+ url(fonts.svg#MyGeometricModern) format("svg");
3668
+ }
3669
+ .other {
3670
+ -moz-transform: translate(0, 11em) rotate(-90deg);
3671
+ }
3672
+ p:not([class*="lead"]) {
3673
+ color: black;
3674
+ }
3675
+
3676
+ input[type="text"].class#id[attr=32]:not(1) {
3677
+ color: white;
3678
+ }
3679
+
3680
+ div#id.class[a=1][b=2].class:not(1) {
3681
+ color: white;
3682
+ }
3683
+
3684
+ ul.comma > li:not(:only-child)::after {
3685
+ color: white;
3686
+ }
3687
+
3688
+ ol.comma > li:nth-last-child(2)::after {
3689
+ color: white;
3690
+ }
3691
+
3692
+ li:nth-child(4n+1),
3693
+ li:nth-child(-5n),
3694
+ li:nth-child(-n+2) {
3695
+ color: white;
3696
+ }
3697
+
3698
+ a[href^="http://"] {
3699
+ color: black;
3700
+ }
3701
+
3702
+ a[href$="http://"] {
3703
+ color: black;
3704
+ }
3705
+
3706
+ form[data-disabled] {
3707
+ color: black;
3708
+ }
3709
+
3710
+ p::before {
3711
+ color: black;
3712
+ }
3713
+ @charset "utf-8";
3714
+ div { color: black; }
3715
+ div { width: 99%; }
3716
+
3717
+ * {
3718
+ min-width: 45em;
3719
+ }
3720
+
3721
+ h1, h2 > a > p, h3 {
3722
+ color: none;
3723
+ }
3724
+
3725
+ div.class {
3726
+ color: blue;
3727
+ }
3728
+
3729
+ div#id {
3730
+ color: green;
3731
+ }
3732
+
3733
+ .class#id {
3734
+ color: purple;
3735
+ }
3736
+
3737
+ .one.two.three {
3738
+ color: grey;
3739
+ }
3740
+
3741
+ @media print {
3742
+ font-size: 3em;
3743
+ }
3744
+
3745
+ @media screen {
3746
+ font-size: 10px;
3747
+ }
3748
+
3749
+ @font-face {
3750
+ font-family: 'Garamond Pro';
3751
+ src: url("/fonts/garamond-pro.ttf");
3752
+ }
3753
+
3754
+ a:hover, a:link {
3755
+ color: #999;
3756
+ }
3757
+
3758
+ p, p:first-child {
3759
+ text-transform: none;
3760
+ }
3761
+
3762
+ q:lang(no) {
3763
+ quotes: none;
3764
+ }
3765
+
3766
+ p + h1 {
3767
+ font-size: 2.2em;
3768
+ }
3769
+
3770
+ #shorthands {
3771
+ border: 1px solid #000;
3772
+ font: 12px/16px Arial;
3773
+ margin: 1px 0;
3774
+ padding: 0 auto;
3775
+ background: url("http://www.lesscss.org/spec.html") no-repeat 0 4px;
3776
+ }
3777
+
3778
+ #more-shorthands {
3779
+ margin: 0;
3780
+ padding: 1px 0 2px 0;
3781
+ font: normal small/20px 'Trebuchet MS', Verdana, sans-serif;
3782
+ }
3783
+
3784
+ .misc {
3785
+ -moz-border-radius: 2px;
3786
+ display: -moz-inline-stack;
3787
+ width: .1em;
3788
+ background-color: #009998;
3789
+ background-image: url(images/image.jpg);
3790
+ background: -webkit-gradient(linear, left top, left bottom, from(red), to(blue));
3791
+ margin: ;
3792
+ }
3793
+
3794
+ #important {
3795
+ color: red !important;
3796
+ width: 100%!important;
3797
+ height: 20px ! important;
3798
+ }
3799
+
3800
+ #functions {
3801
+ @var: 10;
3802
+ color: color("red");
3803
+ width: increment(15);
3804
+ height: undefined("self");
3805
+ border-width: add(2, 3);
3806
+ variable: increment(@var);
3807
+ }
3808
+
3809
+ #built-in {
3810
+ @r: 32;
3811
+ escaped: e("-Some::weird(#thing, y)");
3812
+ lighten: lighten(#ff0000, 50%);
3813
+ darken: darken(#ff0000, 50%);
3814
+ saturate: saturate(#29332f, 20%);
3815
+ desaturate: desaturate(#203c31, 20%);
3816
+ greyscale: greyscale(#203c31);
3817
+ format: %("rgb(%d, %d, %d)", @r, 128, 64);
3818
+ format-string: %("hello %s", "world");
3819
+ eformat: e(%("rgb(%d, %d, %d)", @r, 128, 64));
3820
+ }
3821
+
3822
+ @var: @a;
3823
+ @a: 100%;
3824
+
3825
+ .lazy-eval {
3826
+ width: @var;
3827
+ }
3828
+ .mixin (@a: 1px, @b: 50%) {
3829
+ width: @a * 5;
3830
+ height: @b - 1%;
3831
+ }
3832
+
3833
+ .mixina (@style, @width, @color: black) {
3834
+ border: @width @style @color;
3835
+ }
3836
+
3837
+ .mixiny
3838
+ (@a: 0, @b: 0) {
3839
+ margin: @a;
3840
+ padding: @b;
3841
+ }
3842
+
3843
+ .hidden() {
3844
+ color: transparent;
3845
+ }
3846
+
3847
+ .two-args {
3848
+ color: blue;
3849
+ .mixin(2px, 100%);
3850
+ .mixina(dotted, 2px);
3851
+ }
3852
+
3853
+ .one-arg {
3854
+ .mixin(3px);
3855
+ }
3856
+
3857
+ .no-parens {
3858
+ .mixin;
3859
+ }
3860
+
3861
+ .no-args {
3862
+ .mixin();
3863
+ }
3864
+
3865
+ .var-args {
3866
+ @var: 9;
3867
+ .mixin(@var, @var * 2);
3868
+ }
3869
+
3870
+ .multi-mix {
3871
+ .mixin(2px, 30%);
3872
+ .mixiny(4, 5);
3873
+ }
3874
+
3875
+ .maxa(@arg1: 10, @arg2: #f00) {
3876
+ padding: @arg1 * 2px;
3877
+ color: @arg2;
3878
+ }
3879
+
3880
+ body {
3881
+ .maxa(15);
3882
+ }
3883
+
3884
+ @glob: 5;
3885
+ .global-mixin(@a:2) {
3886
+ width: @glob + @a;
3887
+ }
3888
+
3889
+ .scope-mix {
3890
+ .global-mixin(3);
3891
+ }
3892
+
3893
+ .nested-ruleset (@width: 200px) {
3894
+ width: @width;
3895
+ .column { margin: @width; }
3896
+ }
3897
+ .content {
3898
+ .nested-ruleset(600px);
3899
+ }
3900
+
3901
+ //
3902
+
3903
+ .same-var-name2(@radius) {
3904
+ radius: @radius;
3905
+ }
3906
+ .same-var-name(@radius) {
3907
+ .same-var-name2(@radius);
3908
+ }
3909
+ #same-var-name {
3910
+ .same-var-name(5px);
3911
+ }
3912
+
3913
+ //
3914
+
3915
+ .var-inside () {
3916
+ @var: 10px;
3917
+ width: @var;
3918
+ }
3919
+ #var-inside { .var-inside; }
3920
+ .mix-inner (@var) {
3921
+ border-width: @var;
3922
+ }
3923
+
3924
+ .mix (@a: 10) {
3925
+ .inner {
3926
+ height: @a * 10;
3927
+
3928
+ .innest {
3929
+ width: @a;
3930
+ .mix-inner(@a * 2);
3931
+ }
3932
+ }
3933
+ }
3934
+
3935
+ .class {
3936
+ .mix(30);
3937
+ }
3938
+ .mixin () {
3939
+ zero: 0;
3940
+ }
3941
+ .mixin (@a: 1px) {
3942
+ one: 1;
3943
+ }
3944
+ .mixin (@a) {
3945
+ one-req: 1;
3946
+ }
3947
+ .mixin (@a: 1px, @b: 2px) {
3948
+ two: 2;
3949
+ }
3950
+
3951
+ .mixin (@a, @b, @c) {
3952
+ three-req: 3;
3953
+ }
3954
+
3955
+ .mixin (@a: 1px, @b: 2px, @c: 3px) {
3956
+ three: 3;
3957
+ }
3958
+
3959
+ .zero {
3960
+ .mixin();
3961
+ }
3962
+
3963
+ .one {
3964
+ .mixin(1);
3965
+ }
3966
+
3967
+ .two {
3968
+ .mixin(1, 2);
3969
+ }
3970
+
3971
+ .three {
3972
+ .mixin(1, 2, 3);
3973
+ }
3974
+
3975
+ //
3976
+
3977
+ .mixout ('left') {
3978
+ left: 1;
3979
+ }