Lungo.theme.scaffold.less 7.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371
  1. /**
  2. * Stylesheet
  3. *
  4. * @namespace LUNGO.Theme
  5. * @class Default
  6. *
  7. * @author Javier Jimenez Villar <javi@tapquo.com> || @soyjavi
  8. */
  9. @import "constants.less";
  10. @import "mixins.less";
  11. @theme: #999;
  12. @theme-light: #ccc;
  13. @theme-dark: #333;
  14. @theme-highlight: #93d6e7;
  15. @theme-highlight-color: #1b6777;
  16. @theme-highlight-text-shadow: 0 1px 0 rgba(255,255,255,0.2);
  17. @color-border: #2566a4;
  18. @color-border-light: #64b9e2;
  19. @color-main: #2c8bca;
  20. @color-main-dark: #154f93;
  21. @color-secondary: #353b42;
  22. @color-secondary-dark: #272a2d;
  23. @background-secondary: #353b42 -webkit-gradient(linear, left top, left bottom, color-stop(0%, #353b42), color-stop(100%, #272a2d));
  24. .app {
  25. background: @black;
  26. font-family: Helvetica, Arial, sans-serif;
  27. }
  28. /* @group <header> & <footer> & <article> */
  29. section > header {
  30. background: @theme;
  31. .box-shadow(~"inset 0 1px 0 "@theme-light~", inset 0 -1px 0 "@theme-dark);
  32. z-index: 2;
  33. & .title , .subtitle {
  34. color: @white;
  35. }
  36. }
  37. section > footer {
  38. background: @theme-dark;
  39. border-top: 1px inset @black;
  40. color: @white;
  41. }
  42. article {
  43. background: @theme-light;
  44. }
  45. /* @end */
  46. /* @group <nav> */
  47. header nav {
  48. & a {
  49. color: @white;
  50. }
  51. &:not(.plain) {
  52. & a {
  53. .box-shadow(~"1px 0 0 rgba(255,255,255,0.2), inset -1px 0 0 rgba(0,0,0,0.2)");
  54. &.accept { background: rgba(0, 255, 0, 0.4); }
  55. &.cancel { background: rgba(255, 0, 0, 0.4); }
  56. }
  57. &.right a { .box-shadow(~"-1px 0 0 rgba(255,255,255,0.2), inset 1px 0 0 rgba(0,0,0,0.2)"); }
  58. & a:active { .box-shadow(~"inset 1px 0 1px rgba(0,0,0,0.1), inset -1px 0 0 rgba(0,0,0,0.1), inset 0 0 42px rgba(0,0,0,0.5)"); }
  59. }
  60. &.plain a:active { text-shadow: 0 0 4px rgba(255,255,255,0.5); }
  61. }
  62. .toolbar a {
  63. color: @theme-light;
  64. &.current, &.active {
  65. color: @white;
  66. background: @black;
  67. .box-shadow(~"inset 0 1px 1px rgba(0,0,0,1), -1px 0 0 rgba(255,255,255,0.05), 1px 1px 0 rgba(255,255,255,0.05)");
  68. }
  69. }
  70. .groupbar {
  71. background: @theme-dark;
  72. // border-bottom: solid 1px rgba(0,0,0,1);
  73. //.box-shadow(~"inset 0 1px 8px rgba(0,0,0,0.3)");
  74. & a {
  75. color: @theme;
  76. &.current {
  77. color: @white;
  78. .box-shadow(inset 0 -3px 0 @white);
  79. //border-bottom: inset 3px @white;
  80. }
  81. }
  82. }
  83. /* @end */
  84. /* @group <aside> */
  85. aside {
  86. color: #fff;
  87. background: #272727;
  88. background: #333;
  89. & header, footer {
  90. .box-shadow(~"inset 0 1px 0 rgba(0,0,0,0.1), inset 0 -1px 0 rgba(255,255,255,0.1)");
  91. background: #272727;
  92. }
  93. & article {
  94. background: none;
  95. }
  96. & .list {
  97. & ul {
  98. background: none;
  99. }
  100. & li {
  101. color: #F0F0F0;
  102. border-bottom: 1px solid #2f2f2f;
  103. & strong {
  104. text-shadow: 0 1px 1px black;
  105. color: #fff;
  106. }
  107. & small {
  108. color: rgba(255,255,255,0.3);
  109. }
  110. }
  111. }
  112. & a {
  113. color: @theme;
  114. }
  115. & a.current {
  116. background: #2f2f2f;
  117. color: @white;
  118. }
  119. }
  120. section.aside {
  121. .box-shadow(~"-4px 0 8px rgba(0,0,0,0.5)");
  122. &.right { .box-shadow(~"4px 0 8px rgba(0,0,0,0.5)"); }
  123. }
  124. @media handheld, only screen and (min-width: 768px) {
  125. section.current, section.show {
  126. .box-shadow(~"-4px 0 8px rgba(0,0,0,0.5)");
  127. &.right { .box-shadow(~"4px 0 8px rgba(0,0,0,0.5)"); }
  128. }
  129. }
  130. /* @end */
  131. /* @group .list */
  132. .list, .list li:not(.toolbar) a { color: #2a2a2a; }
  133. .list {
  134. & ul {
  135. background: #fff;
  136. }
  137. & li {
  138. border-bottom: 1px inset @theme-light;
  139. &:last-child { border-bottom: none; }
  140. &.selectable:active {
  141. background: @theme-light;
  142. color: @theme-dark;
  143. & small, & .right:not(.bubble), & strong {
  144. color: @white;
  145. text-shadow: none;
  146. }
  147. }
  148. & small, & .right:not(.bubble) {
  149. color: @theme;
  150. }
  151. & strong {
  152. color: @theme-dark;
  153. }
  154. }
  155. &.indented li {
  156. /*
  157. border-left: solid 1px #e1e1e1;
  158. border-right: solid 1px #e1e1e1;
  159. &:first-child { border-top: solid 1px #e1e1e1; }
  160. &:last-child { border-bottom: solid 1px #e1e1e1; }
  161. */
  162. }
  163. & .anchor {
  164. color: @theme-dark;
  165. background: @theme-light;
  166. border-bottom: none;
  167. &.contrast {
  168. background: @theme-dark;
  169. color: @theme-light;
  170. }
  171. }
  172. & .toolbar {
  173. border-bottom-color: rgba(0,0,0,0.2);
  174. & .toolbar a {
  175. .box-shadow(~"1px 0px 0px #d9d9d9");
  176. &:last-child { .box-shadow(none); }
  177. &.current {
  178. background: transparent;
  179. color: #333;
  180. text-shadow: none !important;
  181. }
  182. }
  183. }
  184. }
  185. /* @end */
  186. /* @group widgets */
  187. .splash {
  188. background: @theme-dark;
  189. color: #fff;
  190. text-shadow: 0px 1px 0px rgba(0,0,0,0.2);
  191. }
  192. &.indented {
  193. & ul {
  194. border: 1px solid @theme;
  195. .box-shadow(0 1px 1px rgba(0,0,0,0.05));
  196. }
  197. & li {
  198. &:first-child {
  199. }
  200. &:last-child {
  201. }
  202. }
  203. }
  204. /* @group .button */
  205. .button {
  206. color: @white;
  207. font-weight: bold;
  208. &:active { }
  209. &.default {
  210. background: @theme;
  211. &:active, &.active { background: @theme-dark;}
  212. }
  213. }
  214. /* @end */
  215. /* @group <form> */
  216. form {
  217. & label {
  218. color: #999;
  219. }
  220. }
  221. input:not([type=checkbox]), textarea, select {
  222. border: 1px solid #ccc;
  223. color: @theme-dark;
  224. border-radius: 0px;
  225. font-family: Helvetica, Arial, sans-serif;
  226. &:focus {
  227. background: @theme-light;
  228. border-color: @theme-dark;
  229. }
  230. &.rounded {
  231. border-top: none;
  232. &:last-of-type { border-bottom: none; }
  233. }
  234. }
  235. .select:after {
  236. background: #ccc;
  237. color: white;
  238. }
  239. /* @group .range */
  240. input[type="checkbox"] + span, input[type="radio"] + span {
  241. color: #fff;
  242. background: @theme;
  243. }
  244. input[type="checkbox"] + span::before,
  245. input[type="radio"] + span::before {
  246. background: @theme-light;
  247. }
  248. input[type="checkbox"]:checked + span,
  249. input[type="radio"]:checked + span {
  250. background: @theme-dark;
  251. }
  252. /* @end */
  253. /* @group range */
  254. input[type="range"] {
  255. background-color: @theme-light;
  256. &:active {
  257. background: @theme;
  258. }
  259. &::-webkit-slider-thumb {
  260. background: @theme;
  261. }
  262. &:active::-webkit-slider-thumb {
  263. background: @theme-dark;
  264. }
  265. }
  266. /* @end */
  267. /* @group .progress */
  268. .progress {
  269. .labels {
  270. font-weight: bold;
  271. color: @theme;
  272. }
  273. & .bar {
  274. background: @theme-light;
  275. & .value {
  276. background: @theme-dark;
  277. & .label {
  278. font-weight: bold;
  279. color: @white;
  280. }
  281. }
  282. }
  283. }
  284. /* @end */
  285. /* @end */
  286. .bubble {
  287. color: #fff;
  288. &.count {
  289. background: @theme;
  290. }
  291. }
  292. header .bubble.count {
  293. background: @theme-dark;
  294. }
  295. article .list .bubble {
  296. .box-shadow(~'inset 1px 0 0 rgba(0,0,0,0.3), inset 0 1px 0 rgba(0,0,0,0.3), inset -1px 0 0 rgba(0,0,0,0.3), inset 0 -1px 0 rgba(0,0,0,0.3)');
  297. }
  298. aside .list .bubble {
  299. background: rgba(0,0,0,0.25);
  300. .box-shadow(~'inset 0 1px 0 #1b212a), inset 0 -1px 0 #454c56');
  301. .box-shadow(~'inset 0 1px 0 rgba(0,0,0,0.3), inset 0 -1px 0 rgba(255,255,255,0.2)');
  302. }
  303. /* @end */