@font-face { font-family: 'Open Sans'; font-style: normal; font-weight: 300; src: local('Open Sans Light'), local('OpenSans-Light'), url('../fonts/opensans-light.woff') format('woff'); } @font-face { font-family: 'Open Sans'; font-style: normal; font-weight: 400; src: local('Open Sans'), local('OpenSans'), url('../fonts/opensans.woff') format('woff'); } template { display: none; } .wrapper { max-width: 320px; min-width: 180px; margin: 0 auto; padding: 20px 600px 20px 20px; position: relative; } .wrapper:before, .wrapper:after { content: ""; position: absolute; bottom: 20px; box-shadow: 0 0 20px rgba(0,0,0,0.4); z-index: -1; width: 50%; height: 25%; } .wrapper:before { left: 35px; -webkit-transform: rotate(-1deg); -webkit-transform-origin: 0 100%; -moz-transform: rotate(-1deg); -moz-transform-origin: 0 100%; transform: rotate(-1deg); transform-origin: 0 100%; } .wrapper:after { right: 35px; -webkit-transform: rotate(1deg); -webkit-transform-origin: 100% 100%; -moz-transform: rotate(1deg); -moz-transform-origin: 100% 100%; transform: rotate(1deg); transform-origin: 100% 100%; } .header { margin: 0 -532px 20px 0; padding: 0 20px; text-shadow: 0px 1px 0px rgba(255, 255, 255, 0.74902); } .title { margin: 0; font-weight: 100; font-size: 48px; letter-spacing: -2px; } .subtitle { overflow: hidden; position: absolute; left: -999em; width: 0; height: 0; } .content .settings { position: absolute; right: 0.25em; bottom: 0.25em; font-size: 1.5em; border: none; background: none; color: #999; cursor: pointer; } .content .settings:focus, .content .settings:hover { color: inherit; } #output { width: 340px; height: 340px; margin: auto; } .label { margin: 0 0 0.25em 0; font-weight: normal; font-size: 1em; color: #666; } .item { margin: 0 0 1em 0; min-height: 2em; } .item label { font-size: 0.8em; display: block; } .overlay { position: absolute; top: -1px; left: -1px; right: -1px; bottom: -1px; color: #484848; border: solid 1px #EEE; border-radius: 3px; background: rgba(255,255,255,0.95); overflow: auto; } .overlay.hidden { display: none; } .overlay .header { position: absolute; top: 0.5em; left: 0.5em; right: 0.5em; height: 2em; border-bottom: solid 1px #999; margin: 0; padding: 1em; } .overlay .header .title { font-size: 1.25em; font-weight: bold; margin: 0; padding: 0; letter-spacing: 0; } .overlay .header label { margin-right: 1em; } .overlay .header input { font: inherit; width: 25%; } .overlay .header button { cursor: pointer; font-size: 2em; border: none; background: none; position: absolute; top: 50%; right: 0; margin-top: -0.66em; } .overlay .hidden { position: absolute; left: -99em; } .overlay .panel { position: absolute; top: 5em; left: 0.5em; right: 0.5em; bottom: 0.5em; overflow: auto; margin: 0; padding: 0.5em; } .overlay ul { margin: 0; padding: 0; list-style: none; } .overlay li { margin: 0; padding: 0; display: inline-block; } .overlay li label { font-size: 4em; width: 1.5em; height: 1em; line-height: 1em; padding: 0.25em 0; cursor: pointer; border-radius: 10px; text-align: center; color: #666; } .overlay .fa-:before { content: "\00A0"; } .overlay li :focus + label, .overlay li label:hover { background: rgba(0,0,0,0.05); color: #333; } .overlay li :focus + label { outline: -webkit-focus-ring-color auto 5px; } .overlay li :checked + label { background: rgba(0,0,0,0.1); color: #000; } #raster { -webkit-transform-origin: 50% 25%; -moz-transform-origin: 50% 25%; transform-origin: 50% 25%; max-width: 100%; } @media screen and (max-width: 800px) { .wrapper { width: auto; max-width: 100%; min-width: 0; padding: 5px; margin: 0; } .header { margin: 0 0 20px; } .content { margin-right: 0; padding-right: 20px; } #output { float: none; margin: 0 auto; max-width: 100%; height: auto; } }