stupid.css 13 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375
  1. /************
  2. Created by Massimo Di Pierro
  3. Stupid.css is what the names says, take it with a grain of salt
  4. License: BSD
  5. ************/
  6. /*** basic styles ***/
  7. html {box-sizing:border-box;}
  8. *, *:after, *:before {border:0; margin:0; padding:0; box-sizing:inherit;}
  9. html, body {max-width: 100vw; overflow-x: hidden}
  10. body {font-family:"HelveticaNeue-Light", "Helvetica Neue Light", "Helvetica Neue", Helvetica, Arial, "Lucida Grande", sans-serif}
  11. p, li {margin-bottom:0.5em}
  12. p {text-align:justify}
  13. label, strong {font-weight:bold}
  14. ul {list-style-type:none; padding-left:20px}
  15. a {text-decoration:none; color:#26a69a; white-space:nowrap}
  16. a:hover {cursor:pointer}
  17. h1,h2,h3,h4,h5,h6{font-weight:bold}
  18. h1{font-size:4em; margin:1.0em 0 0.25em 0}
  19. h2{font-size:2.4em; margin:0.9em 0 0.25em 0}
  20. h3{font-size:1.8em; margin:0.8em 0 0.25em 0}
  21. h4{font-size:1.6em; margin:0.7em 0 0.25em 0}
  22. h5{font-size:1.4em; margin:0.6em 0 0.25em 0}
  23. h6{font-size:1.2em; margin:0.5em 0 0.25em 0}
  24. table {border-collapse:collapse}
  25. tbody tr:hover {background-color:#fbf6d9}
  26. thead tr {background-color:#f1f1f1}
  27. tbody tr {border-bottom:2px solid #f1f1f1}
  28. td, th {padding: 5px; text-align: left; vertical-align:top}
  29. thead th {vertical-align:bottom}
  30. header, main, footer {display:block; with:100%} /* IE fix */
  31. @media all and (max-width:599px) {
  32. h1{font-size:2em}
  33. h2{font-size:1.8em}
  34. h3{font-size:1.6em}
  35. h4{font-size:1.4em}
  36. h5{font-size:1.2em}
  37. h6{font-size:1.0em}
  38. }
  39. /*** buttons ***/
  40. .btn, button, [type=button], [type=submit] {padding:0.5em 1em; margin:0 0.5em 0.5em 0; display:inline-block; background-color:#26a69a; color:white}
  41. .btn:hover, button:hover, [type=button]:hover, [type=submit]:hover {box-shadow:0 0 10px #666; text-decoration:none; cursor:pointer}
  42. .btn.small, table .btn {padding:0.25em 0.5em; font-size:0.8em}
  43. .btn.large {padding:1em 2em; font-size:1.2em}
  44. .oval {border-radius:50%}
  45. /*** helpers ***/
  46. .rounded {-moz-border-radius:5px; border-radius:5px}
  47. .padded {padding:10px 20px}
  48. .center {text-align:center; margin-left:auto; margin-right:auto}
  49. .center>div {text-align:left}
  50. .right {right:0; text-align:right}
  51. .middle div {vertical-align:middle}
  52. .bottom div {vertical-align:bottom}
  53. .xscroll {overflow-x:scroll}
  54. .yscroll {overflow-y:scroll}
  55. .nowrap {white-space:nowrap; overflow-x:hidden}
  56. .fill {width:100%}
  57. .lifted {box-shadow:5px 5px 10px #666}
  58. .relative {position:relative}
  59. .relative>div {position:absolute}
  60. .spaced {margin-bottom:20px; margin-top:20px}
  61. .hidden {display:none !important}
  62. /*** forms ***/
  63. input:not([type]), input:not([type=checkbox]):not([type=radio]):not([type=button]):not([type=submit]), [type=file]:before {outline:none; padding:0.5em 1em; margin:0.5px; border-bottom:1px solid #ddd; width:100%}
  64. textarea {width:100%; border:1px solid #ddd; padding:4px 8px; outline:none; outline:none}
  65. select {-webkit-appearance:none; outline:none; padding:0.5em 1em; border-radius:0; margin:0.5px; border-bottom:1px solid #ddd; width:100%;background-color:transparent}
  66. input, textarea, select, button, .btn {font-size:12px}
  67. input:not([type]):hover, input:not([type=checkbox]):not([type=radio]):not([type=button]):not([type=submit]):hover, select:hover, textarea:hover {background-color:#fbf6d9; transition:background-color 1s ease}
  68. input:invalid, input.error, textarea:invalid, textarea.error {background: #ffdfdf}
  69. /*** grid ***/
  70. .container {margin-right:-20px}
  71. .container>.quarter, .container>.half, .container>.third, .container>.twothirds, .container>.threequarters {display:inline-block; padding: 0 20px 0 0; vertical-align:top}
  72. .container>.fill{display: inline-block}
  73. .container img, .container video {max-width:100%}
  74. @media all and (min-width:800px) {
  75. .max900 {max-width:900px; margin-left:auto; margin-right:auto}
  76. .quarter {width:25%; margin-right:-5px}
  77. .half {width:50%; margin-right:-10px}
  78. .third {width:33.33%; margin-right:-6.66px}
  79. .twothirds {width:66.66%; margin-right:-13.33px}
  80. .threequarters {width:75%; margin-right:-15px}
  81. }
  82. @media all and (min-width:600px) and (max-width:799px) {
  83. .quarter.compressible {width:25%; margin-right:-5px}
  84. .half.compressible {width:50%; margin-right:-10px}
  85. .threequarters.compressible {width:75%; margin-right:-15px}
  86. .quarter:not(.compressible), .half:not(.compressible), .threequarters:not(.compressible) {width:100%; margin-right:-20px}
  87. .third {width:33.33%; margin-right:-6.66px}
  88. .twothirds {width:66.66%; margin-right:-13.33px}
  89. label.quarter:not(.compressible).right, label.half:not(.compressible).right, label.threequarters:not(.compressible).right {float:left; text-align:left}
  90. }
  91. @media all and (max-width:599px) {
  92. .quarter:not(.compressible), .half:not(.compressible), .third:not(.compressible), .twothirds:not(.compressible), .threequarters:not(.compressible) {width:100%;}
  93. label.quarter:not(.compressible).right, label.half:not(.compressible).right, label.threequarters:not(.compressible).right,
  94. label.third:not(.compressible).right, label.twothirds:not(.compressible).right {float:left; text-align:left}
  95. .quarter.compressible {width:25%; margin-right:-5px}
  96. .half.compressible {width:50%; margin-right:-10px}
  97. .third.compressible {width:33.33%; margin-right:-6.66px}
  98. .twothirds.compressible {width:66.66%; margin-right:-13.33px}
  99. .threequarters.compressible {width:75%; margin-right:-15px}
  100. }
  101. /*** progress bar from http://codepen.io/holdencreative/details/pvxGxy ***/
  102. .progress {
  103. position:relative;
  104. height:8px;
  105. display:block;
  106. background-color:#acece6;
  107. background-clip:padding-box;
  108. overflow:hidden;
  109. }
  110. .progress .determinate {
  111. position:absolute;
  112. background-color:inherit;
  113. top:0;
  114. bottom:0;
  115. background-color:#26a69a;
  116. transition:width .3s linear;
  117. }
  118. .progress .indeterminate {
  119. background-color:#26a69a;
  120. }
  121. .progress .indeterminate:before {
  122. content:'';
  123. position:absolute;
  124. background-color:inherit;
  125. top:0;
  126. left:0;
  127. bottom:0;
  128. will-change:left, right;
  129. animation:indeterminate 2.1s cubic-bezier(0.65, 0.815, 0.735, 0.395) infinite;
  130. }
  131. .progress .indeterminate:after {
  132. content:'';
  133. position:absolute;
  134. background-color:inherit;
  135. top:0;
  136. left:0;
  137. bottom:0;
  138. will-change:left, right;
  139. animation:indeterminate-short 2.1s cubic-bezier(0.165, 0.84, 0.44, 1) infinite;
  140. animation-delay:1.15s;
  141. }
  142. @-webkit-keyframes indeterminate {
  143. 0% {left:-35%; right:100%}
  144. 60% {left:100%; right:-90%}
  145. 100% {left:100%; right:-90%}
  146. }
  147. @-moz-keyframes indeterminate {
  148. 0% {left:-35%; right:100%}
  149. 60% {left:100%; right:-90%}
  150. 100% {left:100%; right:-90%}
  151. }
  152. @keyframes indeterminate {
  153. 0% {left:-35%; right:100%}
  154. 60% {left:100%; right:-90%}
  155. 100% {left:100%; right:-90%}
  156. }
  157. @-webkit-keyframes indeterminate-short {
  158. 0% {left:-200%; right:100%}
  159. 60% {left:107%; right:-8%}
  160. 100% {left:107%; right:-8%}
  161. }
  162. @-moz-keyframes indeterminate-short {
  163. 0% {left:-200%; right:100%}
  164. 60% {left:107%; right:-8%}
  165. 100% {left:107%; right:-8%}
  166. }
  167. @keyframes indeterminate-short {
  168. 0% {left:-200%; right:100%}
  169. 60% {left:107%; right:-8%}
  170. 100% {left:107%; right:-8%}
  171. }
  172. /**** dropdown menu from http://codepen.io/philhoyt/pen/ujHzd ***/
  173. .menu {list-style:none; position:relative; margin:0; padding:0}
  174. .menu.right {float:right}
  175. .menu a {padding:0 15px; text-decoration:none;text-align:left;font-family:"HelveticaNeue-Light", "Helvetica Neue Light", "Helvetica Neue", Helvetica, Arial, "Lucida Grande", sans-serif; text-align:left}
  176. .menu li {position:relative; float:left; margin:0; padding:0}
  177. .menu ul {background:white; border:1px solid #e1e1e1; visibility:hidden; opacity:0; position:absolute; top:110%; padding:0; z-index:1000; transition:all 0.2s ease-out; list-style-type:none; box-shadow:5px 5px 10px #666}
  178. .menu ul a {padding:10px 15px; color:#333; font-weight:700; font-size:12px; line-height:16px; display: block}
  179. .menu ul li {float:none}
  180. .menu ul ul {top:0; left:80%; z-index:1100}
  181. .menu li:hover > ul {visibility:visible; opacity:1}
  182. .menu>li>ul>li:first-child:before{content:''; position:absolute; width:1px; height:1px; border:10px solid transparent; left:50px; top:-20px; margin-left:-10px; border-bottom-color:white}
  183. .menu.dark ul {background:#111111; border:1px solid #111111}
  184. .menu.dark ul a {color:white}
  185. .menu.dark>li>ul>li:first-child:before{border-bottom-color:#111111}
  186. @media all and (max-width:599px) {
  187. header .menu li, header .menu ul {width: 100%}
  188. header .menu.right {float:left; text-align:left}
  189. header .menu ul ul {top:2.5em; left:-1px}
  190. }
  191. @media all and (min-width:600px) {
  192. .ham {display:none!important}
  193. .burger.accordion * {max-height:1000px; overflow:visible}
  194. }
  195. /*** sliding sidebar ***/
  196. .sidebar {
  197. position:fixed;
  198. z-index:1000;
  199. -webkit-transition:all 0.5s, -webkit-transform 0.5s;
  200. transition:all 0.5s, transform 0.5s;
  201. left:0;
  202. top:0;
  203. height:100vh;
  204. box-shadow:0 0 10px #666;
  205. width:220px;
  206. padding:0 10px 0 10px;
  207. margin-left:-210px;
  208. }
  209. .sidebar:hover {margin-left:0}
  210. .sidebar.right {text-align: left; left: auto; right: 0; margin-right: -210px}
  211. .sidebar.right:hover {margin-right:0}
  212. /*** pulsating ring from https://jsfiddle.net/mandynicole/7xrKP/ *******/
  213. .pulse:after {
  214. content:"";
  215. border:3px solid #00e6ac;
  216. -webkit-border-radius:30px;
  217. height:40px;
  218. width:40px;
  219. position:absolute;
  220. margin-left:-20px;
  221. margin-top:-20px;
  222. -webkit-animation:pulsate 1s ease-out;
  223. -webkit-animation-iteration-count:infinite;
  224. opacity:0.0
  225. }
  226. @-webkit-keyframes pulsate {
  227. 0% {-webkit-transform:scale(0.1, 0.1); opacity:0.0}
  228. 50% {opacity:1.0}
  229. 100% {-webkit-transform:scale(1.2, 1.2); opacity:0.0}
  230. }
  231. /**** underline effect ***/
  232. a:not(.btn):not(.noeffect) {position:relative}
  233. a:not(.btn):not(.noeffect):hover {color:#26a69a}
  234. a:not(.btn):not(.noeffect):hover:after {width:100%}
  235. a:not(.btn):not(.noeffect):after {
  236. display:block;
  237. position:absolute;
  238. left:0;
  239. bottom:-1px;
  240. width:0;
  241. height:2px;
  242. background-color:#26a69a;
  243. content:"";
  244. transition:width 0.2s;
  245. }
  246. /**** modal ***/
  247. .modal {
  248. position:fixed;
  249. z-index:9999;
  250. top:0;
  251. bottom:0;
  252. left:0;
  253. right:0;
  254. background-color:rgba(0,0,0,0.8);
  255. padding-top:20vh;
  256. transition:opacity 500ms;
  257. visibility:hidden;
  258. opacity:0;
  259. }
  260. .modal:target {visibility:visible; opacity:1}
  261. .modal div {margin-left:auto; margin-right:auto}
  262. .modal .close:not(.btn) {position:absolute; top:10px; right:10px; font-size:20px}
  263. .modal .close {transition:all 200ms}
  264. /*** tooltips from http://codepen.io/trezy/pen/Khnzy ***/
  265. [data-tooltip] {position:relative}
  266. [data-tooltip]:before, [data-tooltip]:after {display:none; position:absolute; top:0}
  267. [data-tooltip]:hover:after,[data-tooltip]:hover:before {display:block}
  268. [data-tooltip]:hover:before {
  269. border-bottom:.6em solid #111111;
  270. border-bottom:.6em solid #111111;
  271. border-left:7px solid transparent;
  272. border-right:7px solid transparent;
  273. content:"";
  274. left:0;
  275. margin-top:12px;
  276. z-index:2000;
  277. }
  278. [data-tooltip]:hover:after {
  279. z-index:2000;
  280. background-color:rgba(0,0,0,0.8);
  281. border:4px solid rgba(0,0,0,0.8);
  282. border-radius:7px;
  283. color:white;
  284. text-transform:none;
  285. font-size: 12px;
  286. content:attr(data-tooltip);
  287. left:0;
  288. top:2px;
  289. margin-left:-20px;
  290. margin-top:1.5em;
  291. padding:5px 15px;
  292. white-space:pre-wrap;
  293. min-width:100px;
  294. }
  295. /*** accordion ***/
  296. .accordion>label{cursor:pointer}
  297. .accordion>input ~ label:before {content:"▲ "; color:#ddd}
  298. .accordion>input:checked ~ label:before {content:"▼ "; color:#ddd}
  299. .accordion>input {display:none}
  300. .accordion>input:checked ~ *:not(label) {
  301. max-height: 1000px !important;
  302. overflow:visible !important;
  303. -webkit-transition: max-height .3s ease-in;
  304. transition: max-height .3s ease-in;
  305. }
  306. .accordion>*:not(label) {
  307. max-height: 0;
  308. overflow: hidden;
  309. margin: 0;
  310. padding: 0;
  311. -webkit-transition: max-height .3s ease-out;
  312. transition: max-height .3s ease-out;
  313. }
  314. /*** cards from http://codepen.io/edeesims/pen/iGDzk ***/
  315. .card {perspective: 500px; max-width:100%}
  316. .card>div {
  317. position: absolute;
  318. width: 100%;
  319. height: 100%;
  320. box-shadow: 0 0 15px rgba(0,0,0,0.1);
  321. transition: transform 1s;
  322. transform-style: preserve-3d;
  323. }
  324. .card:hover>div {
  325. transform: rotateY( 180deg ) ;
  326. transition: transform 0.5s;
  327. }
  328. .card>div>div {
  329. position: absolute;
  330. height: 100%;
  331. width: 100%;
  332. backface-visibility: hidden;
  333. }
  334. .card>div>div:nth-child(2) {
  335. transform: rotateY( 180deg );
  336. }
  337. /**** tags ****/
  338. .tags > span {
  339. padding: 4px 9px;
  340. white-space: nowrap;
  341. color: white;
  342. background-color: #26a69a;
  343. border-radius: 5px;
  344. font-size:12px;
  345. margin: 2px 5px 2px 0;
  346. display: inline-block;
  347. }
  348. .tags.dismissible > span:hover {opacity: 0.5}
  349. .tags.dismissible > span:not(.off):after {content:" ✕"}
  350. .tags > span.off {background-color: #ccc}
  351. .tags.dismissible > span.off:hover {background-color:#26a69a}
  352. /*** colors from http://clrs.cc/ ***/
  353. .navy{background-color:#001f3f;color:white}.blue{background-color:#0074d9;color:white}.aqua{background-color:#7fdbff;color:#111111}.teal{background-color:#39cccc;color:white}.olive{background-color:#3d9970;color:white}.green{background-color:#2ecc40;color:white}.aquamarine{background-color:#26a69a;color:white}.lime{background-color:#01ff70;color:#111111}.yellow{background-color:#ffdc00;color:#111111}.orange{background-color:#ff851b;color:white}.red{background-color:#cc1f00;color:white}.fuchsia{background-color:#f012be;color:white}.pink{background-color:#ee6e73;color:white}.purple{background-color:#b10dc9;color:white}.maroon{background-color:#85144b;color:white}.white{background-color:#fff;color:#111111;-webkit-box-shadow:inset 0px 0px 0px 1px #ddd;-moz-box-shadow:inset 0px 0px 0px 1px #ddd;box-shadow:inset 0px 0px 0px 1px #ddd}.gray{background-color:#aaa;color:white}.silver{background-color:#f1f1f1;color:#111111}.black{background-color:#111111;color:white}.glass{background:rgba(255,255,255,0.5);color:#111111}