/*! HTML5 Boilerplate v7.3.0 | MIT License | https://html5boilerplate.com/ */ /* main.css 2.0.0 | MIT License | https://github.com/h5bp/main.css#readme */ /* * What follows is the result of much research on cross-browser styling. * Credit left inline and big thanks to Nicolas Gallagher, Jonathan Neal, * Kroc Camen, and the H5BP dev community and team. */ /* ========================================================================== Base styles: opinionated defaults ========================================================================== */ @font-face { font-family: "Papyrus"; src: url("../fonts/papyrus.eot"); /* IE9*/ src: url("../fonts/papyrus.eot?#iefix") format("embedded-opentype"), url("../fonts/papyrus.woff2") format("woff2"), url("../fonts/papyrus.woff") format("woff"), url("../fonts/papyrus.ttf") format("truetype"), url("../fonts/papyrus.svg#PapyrusW01") format("svg"); /* iOS 4.1- */ } html, body { font-size: 1.2em; line-height: 1.4; background: url("../img/background.jpg") center center; background-size: cover; color: white; height: 100%; font-family: "Roboto Condensed", sans-serif; -webkit-font-smoothing: subpixel-antialiased; } /* * Remove text-shadow in selection highlight: * https://twitter.com/miketaylr/status/12228805301 * * Vendor-prefixed and regular ::selection selectors cannot be combined: * https://stackoverflow.com/a/16982510/7133471 * * Customize the background color to match your design. */ ::-moz-selection { background: #b3d4fc; text-shadow: none; } ::selection { background: #b3d4fc; text-shadow: none; } /* * A better looking default horizontal rule */ hr { display: block; height: 1px; border: 0; border-top: 1px solid #ccc; margin: 1em 0; padding: 0; } /* * Remove the gap between audio, canvas, iframes, * images, videos and the bottom of their containers: * https://github.com/h5bp/html5-boilerplate/issues/440 */ audio, canvas, iframe, img, svg, video { vertical-align: middle; } /* * Remove default fieldset styles. */ fieldset { border: 0; margin: 0; padding: 0; } /* * Allow only vertical resizing of textareas. */ textarea { resize: vertical; } /* ========================================================================== Browser Upgrade Prompt ========================================================================== */ .browserupgrade { margin: 0.2em 0; background: #ccc; color: #000; padding: 0.2em 0; } /* ========================================================================== Author's custom styles ========================================================================== */ .square { width: 100%; height: 100%; position: relative; border-radius: 50%; box-sizing: border-box; padding: 20px; } .square .circle { background: url("../img/demon-head2.png") center center no-repeat; background-size: 10%; } .square.public .circle { background-image: url("../img/demon-head.png"); } .square .player { margin-bottom: 10px; } .square .player .shroud { content: " "; background: url("../img/shroud.png") center -10px no-repeat; background-size: auto 100%; position: absolute; margin-left: -50px; width: 100px; height: 100px; left: 50%; top: 0; cursor: pointer; opacity: 0; transition: opacity 200ms; z-index: 2; } .square .player .shroud:hover { opacity: 1; } .square .player.dead .shroud { opacity: 1; } .square .player.dead .name { color: #999; } .square.public .player.dead .shroud { display: none; } .square.public .player.dead:after { background: url("../img/vote.png") center center no-repeat; background-size: 40%; height: 153px; } .square.public .player.dead.traveller:after { filter: grayscale(100%); } .square.public .player.dead.no-vote:after { display: none; } .square .token { border-radius: 50%; height: 153px; width: 153px; background: url("../img/token.png") center center; background-size: 100%; text-align: center; position: relative; color: black; margin: auto; font-weight: 600; text-shadow: -1px -1px 0 #fff, 1px -1px 0 #fff, -1px 1px 0 #fff, 1px 1px 0 #fff, 0 0 5px rgba(0, 0, 0, 0.75); padding-top: 105px; box-sizing: border-box; font-family: "Papyrus", serif; border: 3px solid black; box-shadow: 0 0 10px rgba(0, 0, 0, 0.5); cursor: pointer; } .square .token:before { content: " "; background-size: 100%; position: absolute; width: 100%; height: 100%; left: 0; top: 0; } .square .token span { position: absolute; width: 100%; height: 100%; background-size: 100%; left: 0; top: 0; pointer-events: none; } .square .token span.leaf-left { background-image: url("../img/leaf-left.png"); } .square .token span.leaf-orange { background-image: url("../img/leaf-orange.png"); } .square .token span.leaf-right { background-image: url("../img/leaf-right.png"); } .square .token span.leaf-top1 { background-image: url("../img/leaf-top1.png"); } .square .token span.leaf-top2 { background-image: url("../img/leaf-top2.png"); } .square .token span.leaf-top3 { background-image: url("../img/leaf-top3.png"); } .square .token span.leaf-top4 { background-image: url("../img/leaf-top4.png"); } .square .token span.leaf-top5 { background-image: url("../img/leaf-top5.png"); } .square.public .token { background-image: url("../img/life.png"); } .square.public .token:before, .square.public .token:after, .square.public .token span { display: none; } .square.public .player.dead .token { background-image: url("../img/death.png"); } .square.public .player.traveller .token { filter: grayscale(100%); } .square .name { font-size: 120%; line-height: 120%; text-shadow: -2px -2px 0 #000, 2px -2px 0 #000, -2px 2px 0 #000, 2px 2px 0 #000, 0 0 10px rgba(0, 0, 0, 0.75); } .square .reminder { background: url("../img/reminder.png") center center; background-size: 100%; width: 75px; height: 75px; color: black; font-size: 50%; font-weight: bold; display: block; margin: 5px -37.5px 0; text-align: center; position: relative; box-sizing: border-box; padding-top: 45px; border-radius: 50%; border: 3px solid black; box-shadow: 0 0 10px rgba(0, 0, 0, 0.5); transition: opacity 200ms; cursor: pointer; } .square .reminder:before, .square .reminder:after { content: " "; position: absolute; left: 0; top: 0; width: 100%; height: 100%; background-size: 100%; background-position: center 0; background-repeat: no-repeat; background-image: url("../img/icon-plus.png"); transition: opacity 200ms; } .square .reminder:after { background-image: url("../img/icon-x.png"); opacity: 0; } .square .reminder.add { opacity: 0; } .square .reminder.add:after { display: none; } .square .reminder:hover:before { opacity: 0; } .square .reminder:hover:after { opacity: 1; } .square .circle li:hover .reminder.add { opacity: 1; } .square .circle li:hover .reminder.add:before { opacity: 1; } .square.public .reminder { display: none; } .square .controls { position: absolute; right: 0; top: 0; } /* ========================================================================== Helper classes ========================================================================== */ /* * Hide visually and from screen readers */ .hidden { display: none !important; } /* * Hide only visually, but have it available for screen readers: * https://snook.ca/archives/html_and_css/hiding-content-for-accessibility * * 1. For long content, line feeds are not interpreted as spaces and small width * causes content to wrap 1 word per line: * https://medium.com/@jessebeach/beware-smushed-off-screen-accessible-text-5952a4c2cbfe */ .sr-only { border: 0; clip: rect(0, 0, 0, 0); height: 1px; margin: -1px; overflow: hidden; padding: 0; position: absolute; white-space: nowrap; width: 1px; /* 1 */ } /* * Extends the .sr-only class to allow the element * to be focusable when navigated to via the keyboard: * https://www.drupal.org/node/897638 */ .sr-only.focusable:active, .sr-only.focusable:focus { clip: auto; height: auto; margin: 0; overflow: visible; position: static; white-space: inherit; width: auto; } /* * Hide visually and from screen readers, but maintain layout */ .invisible { visibility: hidden; } /* * Clearfix: contain floats * * For modern browsers * 1. The space content is one way to avoid an Opera bug when the * `contenteditable` attribute is included anywhere else in the document. * Otherwise it causes space to appear at the top and bottom of elements * that receive the `clearfix` class. * 2. The use of `table` rather than `block` is only necessary if using * `:before` to contain the top-margins of child elements. */ .clearfix:before, .clearfix:after { content: " "; /* 1 */ display: table; /* 2 */ } .clearfix:after { clear: both; } /* ========================================================================== EXAMPLE Media Queries for Responsive Design. These examples override the primary ('mobile first') styles. Modify as content requires. ========================================================================== */ @media only screen and (min-width: 35em) { /* Style adjustments for viewports that meet the condition */ } @media print, (-webkit-min-device-pixel-ratio: 1.25), (min-resolution: 1.25dppx), (min-resolution: 120dpi) { /* Style adjustments for high resolution devices */ } /* ========================================================================== Print styles. Inlined to avoid the additional HTTP request: https://www.phpied.com/delay-loading-your-print-css/ ========================================================================== */ @media print { *, *:before, *:after { background: transparent !important; color: #000 !important; /* Black prints faster */ box-shadow: none !important; text-shadow: none !important; } a, a:visited { text-decoration: underline; } a[href]:after { content: " (" attr(href) ")"; } abbr[title]:after { content: " (" attr(title) ")"; } /* * Don't show links that are fragment identifiers, * or use the `javascript:` pseudo protocol */ a[href^="#"]:after, a[href^="javascript:"]:after { content: ""; } pre { white-space: pre-wrap !important; } pre, blockquote { border: 1px solid #999; page-break-inside: avoid; } /* * Printing Tables: * https://web.archive.org/web/20180815150934/http://css-discuss.incutio.com/wiki/Printing_Tables */ thead { display: table-header-group; } tr, img { page-break-inside: avoid; } p, h2, h3 { orphans: 3; widows: 3; } h2, h3 { page-break-after: avoid; } } /*# sourceMappingURL=main.css.map */