/* ==========================================================================
   HTML5 Boilerplate styles - h5bp.com (generated via initializr.com)
   ========================================================================== */

html,
button,
input,
select,
textarea {
    color: #222;
}

body, html {
    width: 100%;
    height: 100%;
    font-size: 1em;
    line-height: 1.4;

    -ms-touch-action: none;
    touch-action: none;
    -ms-overflow-style: none;

    overflow: hidden;
    position: fixed; /* iOS Safari fix for landscape iPad */
}

/*
::-moz-selection {
    background: #b3d4fc;
    text-shadow: none;
}

::selection {
    background: #b3d4fc;
    text-shadow: none;
}
*/

* {
    -webkit-tap-highlight-color: rgba(0,0,0,0);
    -webkit-tap-highlight-color: transparent;
}

hr {
    display: block;
    height: 1px;
    border: 0;
    border-top: 1px solid #ccc;
    margin: 1em 0;
    padding: 0;
}

img {
    vertical-align: middle;
}

fieldset {
    border: 0;
    margin: 0;
    padding: 0;
}

textarea {
    resize: vertical;
}

.chromeframe {
    margin: 0.2em 0;
    background: #ccc;
    color: #000;
    padding: 0.2em 0;
}


/*
===================== TEMP added by Wookie
*/

.popup {
    position: absolute;
    z-index: 1000;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    background: rgba(255,255,255,0.5);
    padding: 0;
}

.popup .content {
    background-color: #f7f1e7;
    width: 460px;
    margin-left: auto;
    margin-right: auto;
    position: relative;
    padding: 0;
}

.loadingScreen {
    width: 100%;
    height: 100%;
    position: absolute;
    z-index: 2000;
    top: 0;
    left: 0;
    background: #fff;

    -webkit-transform: translatez(0);
    transform: translatez(0);
}

.loadingScreenContainer {
    min-width: 300px;
    margin: 30px auto 0 auto;

    -webkit-transform: translatez(0);
    transform: translatez(0);
}

.loadingScreenLogo {
    width: 287px;
    height: 110px;
    display: block;
    margin: 0 auto 20px auto;
}

.playButtonContainer {
    width: 300px;
    height:100px;
    margin: 0 auto;
    text-align: center;
    background-color:#C226A2;
}

.playButton {
    width: 300px;
    height: 100px;
}

.progressBar {
    font-family: "Roboto Condensed", "Helvetica", "Helvetica Neue", "Arial", sans-serif;
    font-size: 30pt;
    color: white;
    margin-top: -65px;

    transition: opacity 0.3s ease;
    -webkit-transition: opacity 0.3s ease;

    cursor: pointer;
}

.loadingScreen svg {
    cursor: pointer;
}

.loadingScreen svg rect {
    opacity: 0.75;
    transition: opacity 1s ease-out;
    -webkit-transition: opacity 1s ease-out;
}

.loadingScreen .playButton path {
    transition: stroke-dashoffset 0.75s ease-in-out,
                opacity 0.75s ease-out;
    -webkit-transition: stroke-dashoffset 0.75s ease-in-out,
                opacity 0.75s ease-out;
}

.loadingScreenMessage {
    text-align: center;
    padding: 0 30px;
    margin-top: 30px;
}

.loadingScreenMessage a,
.loadingScreenPlatforms a {
    border-bottom: solid 1px #C226A2;
    color: #938671;
    text-decoration: none;
}

.loadingScreenMessage a:hover,
.loadingScreenPlatforms a:hover {
    color: #C226A2;
}

.loadingScreenPlatforms {
    width: 100%;
    position: absolute;
    bottom: 20px;
    text-align: center;
}

.tutorialOverlay {
    transition: all 0.75s ease;
}

#tutorial .content {
    font-family: "Roboto";
    font-weight: 100;
    color: white;
    transition: all 0.5s ease;
}

#libraryOverlay {
    position: absolute; 
    margin-left: 33px;
    height: 100%;
    width: 52px; /* it covers only element images */
}

.broadcast {
    overflow: hidden;
}

.broadcast .content {
    white-space: nowrap;
}

.outerNotificationBox {
    position: absolute;
    bottom: 0;
    margin-left: 50%;
    z-index: 1000;
    pointer-events: none;
}

.notificationBox {
    position: relative;
    bottom: 0;
    left: 0;
    min-height: 60px;
    max-height: 100px;
    width: 380px;
    background: #e8ded0;
    margin-left: -50%;
    line-height: 1.5;
    pointer-events: auto;
    -webkit-transition: bottom 0.4s ease-out;
    transition: bottom 0.4s ease-out;
}

.notificationBox.show {
    bottom: 0;
}

.notificationBox.hide {
    bottom: -100px;
    -webkit-transition: bottom 0.2s ease-out;
    transition: bottom 0.2s ease-out;
}

.notificationBox .close {
    position: absolute;
    top: 5px;
    right: 5px;
    cursor: pointer;
}

.notificationBox .content {
    margin-right: 45px;
    padding:5px 0 5px 5px;
}

.library .element{
    float: left;
}

.alphabet {
    height: 100%;
    overflow: hidden;
}

.hidden {
    display: none;
}

.visible {
    display: block;
}

.toggleFullscreen {
    display: none;
    width: 29px;
    height: 29px;
    cursor: pointer;
    position: absolute;
    top: 10px;
    left: 10px;
    -webkit-touch-callout: none;
    -webkit-tap-highlight-color: rgba(0,0,0,0);
    background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAB0AAAAdBAMAAACkvXo8AAAAElBMVEUAAADV1dXo3tDp3dL/v7/o3tDxDfasAAAABXRSTlMABrgYBKk7qoUAAAB0SURBVBjTbc/BCYAwEETRBCwgWIEevAvRu1iBBNJ/KwZ/mFFwbw/+YSeEEJequ5rD+DaBTWAT2IlAngnkQiDXJxhyzjtuAddNYBPYCuRyfF3XX5+2Vtg8aRPYBLg9vxE0c32mzJNxwgpSt1dUB9iB7QA7uAHMx1brSZFnbAAAAABJRU5ErkJggg==');
}

:-webkit-full-screen .toggleFullscreen {
    background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAB0AAAAdBAMAAACkvXo8AAAAGFBMVEUAAADp39Pq38/p3tHo3tDo3tDf39/o3tA1q3PCAAAAB3RSTlMALTBObtwIVaOPMwAAAGlJREFUGNN9yssJgDAQhOHRqGcXxTriaUuxDxPZ9jUgeQzif/uYAdB5NPWBbJ4cyPVBZDGLktqS1XJnsiNDyY4MJQ/k/stH62v829/YkWyeHMjmyaG4HCZJrc8qMiOndqLOkaFkR8YO4AaZ11fNtEe+jAAAAABJRU5ErkJggg==');
}

:-moz-full-screen .toggleFullscreen {
    background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAB0AAAAdBAMAAACkvXo8AAAAGFBMVEUAAADp39Pq38/p3tHo3tDo3tDf39/o3tA1q3PCAAAAB3RSTlMALTBObtwIVaOPMwAAAGlJREFUGNN9yssJgDAQhOHRqGcXxTriaUuxDxPZ9jUgeQzif/uYAdB5NPWBbJ4cyPVBZDGLktqS1XJnsiNDyY4MJQ/k/stH62v829/YkWyeHMjmyaG4HCZJrc8qMiOndqLOkaFkR8YO4AaZ11fNtEe+jAAAAABJRU5ErkJggg==');
}

:-ms-full-screen .toggleFullscreen {
    background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAB0AAAAdBAMAAACkvXo8AAAAGFBMVEUAAADp39Pq38/p3tHo3tDo3tDf39/o3tA1q3PCAAAAB3RSTlMALTBObtwIVaOPMwAAAGlJREFUGNN9yssJgDAQhOHRqGcXxTriaUuxDxPZ9jUgeQzif/uYAdB5NPWBbJ4cyPVBZDGLktqS1XJnsiNDyY4MJQ/k/stH62v829/YkWyeHMjmyaG4HCZJrc8qMiOndqLOkaFkR8YO4AaZ11fNtEe+jAAAAABJRU5ErkJggg==');
}

.historyButtons {
    position: absolute;
    bottom: 10px;
    left: 400px;
}

.elementLoadingImage {
    background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEoAAABKCAMAAAArDjJDAAAAkFBMVEUAAAAAAAAAAAAAAAAAAAACAgIAAAADAwMCAgIAAAAAAAAAAAAAAAAAAAAAAAAAAAD////MzMwAAADk5ORdXV3a2tp0dHQICAj8/Pzw8PD19fXq6uoXFxfe3t5sbGzR0dHOzs7i4uJCQkLAwMA1NTVNTU0mJiawsLCYmJiKioqjo6NhYWHZ2dl+fn5XV1fT09PRrWOXAAAAEHRSTlMAYTbBS9Uk++MDdRapmQyK8ORcjAAAAdBJREFUWMPt1l2WojAQhuEoguBffyltEwFBEWlttfe/vJm7HGhNhXA1Z3wWkMMbQijx9vbPGgfUFY6FjznlxbataCgSHkYk0XWkmfAwoS90nWgkPKxiuqFtS2rut1khpWhRcST8xDXazirxPAx0Qds3TYSXD1qjbaeWwsu0RteZkmF9xpdf4ZIydKVq4bFSoir89kMrn75vGIMKl2qH37RaePSd8cytf+HE9HEfNN+X4hmdB3376IznClp5XlbDCxemb2DhijbAy8L5sD5D0qhfn8ZLedir74bXtn0KR3TCa2WfP1iQa1g0YY++AjYPiob1GXeaDewzmth57tjC7kqR59zhP4WEOdJPmxR17Nx3lDZ718IZlSilzUGv6cOpr0Eq7Xaop4IX0eNvn90nLjR26bujlAyduRTGDXaSk6FSCd93xV4aAwpntMdBsrTDqBXXps8iM8Mk08e6m2HS0qdNn7WQe4dBbvqYwjpktqrCWro4YsMc+OkPjtLFHgUxT3XG2nGpG7NU0DjvVRWzY78uJe+gU+6MjqnA7uDyUA92wA3oBJ0d7TKNUsXc9zxX6pqCoy/K4UqOQlLVxq5SFI8FL5ksQjW1ChejRLy9/cf+ADN8f5lRBqTtAAAAAElFTkSuQmCC");
    background-size: 50px 50px;
}

.noTransition {
    transition: none !important;
    -webkit-transition: none !important;
}

.notificationLink {
    text-decoration: none;
    color: #938671;
}

/*
 / =====================================
*/

body {
    font: 16px/26px "Roboto", sans-serif-light, "Roboto Condensed", "Helvetica", "Helvetica Neue", "Arial", sans-serif;
    font-weight: 300;
    color: #938671;
}

.workspace,
.side,
.ui,
.progress,
.broadcast,
.login,
.menuTabs,
.loadingScreen,
.menuCheckboxLabel {
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none; 
}

.workspace {
    width: 100%;
    height: 100%;
    background-image: url('../img/workspace-background.png');
}

.workspace .element {
    position: absolute;
    z-index: 100;
}

.workspace img {
}

.workspace .element .elementName {
    text-align: center;

    transition: opacity 0.15s ease;
    -webkit-transition: opacity 0.15s ease;
}

.elementName {
    cursor: default;
    pointer-events: none;
}

.element img, .element span {
    cursor: pointer;
    -webkit-touch-callout: none;
    -webkit-tap-highlight-color: rgba(0,0,0,0);
}

.finalElement div {
    text-decoration: underline;
}

.side {
    background-color: #f7f1e7;
    position: absolute;
    overflow: hidden;
    background-image: url('../img/library-background.png');
    z-index: 100;
}

.alphabet {
    min-height: 100%;
    top: 0;
    border-right: 1px solid #fffcfc;
    position: absolute;
}

.alphabet ul {
    list-style: none;
    text-align: center;
    padding: 0;
    margin: 0;
}

.alphabet li {
    cursor: pointer;
    padding: 4px 0;
}

.outerLibrary {
    height: 100%;
    overflow: hidden;
}

.library {
    overflow: hidden;
}

.library .element{
}

.library .element img, .library .element span {
    width: 50px;
    height: 50px;
    float: left;
}

.library .element .elementName {
}

.libraryFade {
    width: 29px;
    height: 100%;
    position: absolute;
    top: 0;
    right: 0;
    background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAB0AAAABCAYAAAAih6XvAAAACXBIWXMAAA7DAAAOwwHHb6hkAAAAU0lEQVR4nDXJSw6AMBACUGjrr7ZqTLz/+bp3aUSMcfHCwFBSQGvTOSunS/lKLPFmvcUlgJugHcQByLhCqO4FQLbRfRDRE+h9d/4l76/oLcrwCX8+Vj8V0MFbfqQAAAAASUVORK5CYII=');
    background-repeat: repeat-y;
    pointer-events: none;
}

.progress {
    position: absolute;
    font-family: "Roboto", sans-serif-light, sans-serif;
    font-weight: 100;
    color: #e8ded0;
    cursor: pointer;
}

.icons {
    position: absolute;
}

.icon {
    -webkit-touch-callout: none;
    -webkit-tap-highlight-color: rgba(0,0,0,0);
    float: left;
    background-position: center center;
    background-repeat: no-repeat;
}

.icon:active,
.toggleFullscreen:active {
    opacity: 0.7;
}

.iconMenu {
    background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACMAAAAjAgMAAABjt1vKAAAADFBMVEUAAADp3tHn3s/o3tCQbMP2AAAAA3RSTlMAdIvLTyKEAAAAIElEQVQY02P4DwV/qMQiHayCghVUckEoFISQ7hRqhwYAZZvW4VxuN5AAAAAASUVORK5CYII=');
}

.iconClear {
    background-image: url('../img/clear.png');
    background-position: bottom;
}

.iconScreenshot {
    background-image: url('../img/screenshot.png');
}

.broadcast {
    position: absolute;
    cursor: default;
}

.broadcast a {
    text-decoration: none;
    color: #938671;
    border-bottom: solid 1px #e8ded0;
}

.broadcast a:hover {
    color: #C226A2;
}

.login {
    position: absolute;
    cursor: pointer;
}

.panel {
    /* start temporary style */
    position: absolute;
    z-index: 1000;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    background: rgba(255,255,255,0.5);
    padding: 0;
    display: none;
    /* end temporary style */
}

.panel .content {
    background-color: #f7f1e7;
    width: 460px;
    margin-left: auto;
    margin-right: auto;
    position: relative;
    padding: 0;
}

.panel h3 {
    clear: both;
    margin: 16px 0 0 0;
}
.closePanel,
.notificationBox .close {
    width: 30px;
    height: 30px;
    background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACgAAAAoAgMAAADxkFD+AAAADFBMVEUAAACShnGThnGThnHNmJQEAAAAA3RSTlMAjNd191TuAAAAd0lEQVQY02WR2xGAMAgE8UersBeLohBLsyQ9OWZxJI9hkk2AI86wrZHt7s+wZWxHeculKXuP0qiWUd8I9dYHabT39DdFGe5AaUhwoQWLMSzUsFDDQg0bxQXgGZ8R4h+YdEiS1CmIMr/FIwlCTfkQdUpNA2ZbaNYNOKYfr3bYp54AAAAASUVORK5CYII=');
    background-repeat: no-repeat;
    background-position: center;
}

.closePanel {
    position: absolute;
    padding: 17px 14px 0 0;
    top: 1px;
    right: 1px;
    background-size: 30px 30px;
    background-position: left bottom;
    cursor: pointer;
}

.outerMenuTabs {
    width: 400px;
    height: 55px;
    overflow: hidden;
}

.menuTabs {
    height: 50px;
    list-style: none;
    padding: 4px 0 0 0;
    margin: 0 auto 0 10px;
    margin-top: 0;
    margin-bottom: 0;
    font-family: "Roboto Condensed", "sans-serif-condensed", sans-serif;
    border-bottom: 1px solid rgba(232, 222, 208, 0.5);
}

.menuTabs li {
    float: left;
    padding: 10px 6px 0 6px;
    cursor: pointer;
    border-right: 1px solid rgba(232, 222, 208, 0.5);
    margin-top: 10px;
    -webkit-touch-callout: none;
    -webkit-tap-highlight-color: rgba(0,0,0,0);
    margin-bottom: 4px;
}

.menuTabs li:hover,
.menuTabs .active {
    border-bottom: 4px solid #e8ded0;
    margin-bottom: 0;
}

.menuTabs li:last-of-type {
    border-right: 0;
}

li.menuwelcome {
    background-image: url('../img/home.svg');
    background-size: 30px;
    background-repeat: no-repeat;
    padding-left: 30px;
    background-position: 0 6px;
}

li.menusettings {
    background-image: url('../img/settings.svg');
    background-size: 26px;
    background-repeat: no-repeat;
    padding-left: 30px;
    background-position: 3px 8px;
}

li.menuleaderboards {
    background-image: url('../img/leaderboard.svg');
    background-size: 27px;
    background-repeat: no-repeat;
    padding-left: 30px;
    background-position: 3px 8px;
}

li.menuachievements {
    background-image: url('../img/achievements.svg');
    background-size: 27px;
    background-repeat: no-repeat;
    padding-left: 30px;
    background-position: 3px 8px;
}

.menuContent {
    width: 100%;
    clear: both;
    overflow: hidden;
    position: absolute;
}

.menuContent a {
    color: #938671;
    text-decoration: none;
    border-bottom: 1px solid #e8ded0;
}

.menuContent a:hover {
    color: #75005D;
}

.menuScroll {
    padding: 0 15px 100px 15px;
}

.menuContent ul {
    list-style: none;
    margin-left: 0;
    padding-left: 0;
}

.menuSelect {
    height: 34px;
    border: 2px solid #e8ded0;
    margin-bottom: 10px;
    background-color: #f7f1e7;
    font-family: 'Roboto';
    color: #938671;
}

.menuButton {
    border: 2px solid #e8ded0;
    background-color: #f7f1e7;
    padding: 6px 10px;
    font-family: 'Roboto';
    color: #938671;
}

.menuButtonContainer {
    margin-top: 10px;
}

.menuCheckbox {
    display: none;
}

input[type=checkbox].menuCheckbox + label.menuCheckboxLabel {
    display: inline-block;
    line-height: 34px;
    padding-left: 40px;
    background-image: url('../img/menu-checkbox-unchecked.png');
    background-repeat: no-repeat;
    margin-bottom: 10px;
    cursor: pointer;
}

input[type=checkbox].menuCheckbox:checked + label.menuCheckboxLabel {
    background-image: url('../img/menu-checkbox-checked.png');
}

.menuSocialMedia {
    width: 100%;
    height: 60px;
    margin-bottom: 20px;
}

.menuSocialMedia li {
    width: 60px;
    height: 60px;
    margin-right: 20px;
    float: left;
}

.menuSocialMedia a {
    display: block;
    border: 0;
}

.menuSocialMedia img {
    width: 60px;
    height: 60px;
}

.loggedInAs {
    margin-top: 20px;
}

.achievementImage {
    width: 50px;
    height: 50px;
    margin-right: -50px;
    float: left;
}

.achievementTitle {
    margin-left: 60px;
}

.achievementDescription {
    font-weight: 100;
    margin-left: 60px;
}

.achievementSpacer {
    margin-bottom: 30px;
    clear: both;
}

.leaderboardList li {
    width: 100%;
    height: 40px;
    margin-bottom: 10px;
    clear: both;
}

.leaderboardScore {
    width: 30px;
    display: block;
    float: left;
    padding: 5px 5px 0 0;
    text-align: right;
}

.leaderboardAvatar {
    width: 40px;
    height: 40px;
    border-radius: 100%;
    display: block;
    float: left;
    margin-right: 5px;
}

.leaderboardName {
    padding-top: 5px;
    display: block;
}

.currentPlayer .leaderboardName {
    border-bottom: 2px solid #e8ded0;
}

/*  =========== TEMP ============== */
.googlePlusHaxor {
    display: none;
}

body > :first-child {
    pointer-events: none;
}

body > :first-child > div div iframe {
    pointer-events: auto;
}

.waitingIndicator {
    position:relative;
    width:64px;
    height:64px;
    -moz-transform:scale(0.6);
    -webkit-transform:scale(0.6);
    -ms-transform:scale(0.6);
    -o-transform:scale(0.6);
    transform:scale(0.6);
}

.waitingIndicator:after {
    border-width: 0 3px 0 0;
    border-style: solid;
    border-color: rgba(0, 0, 0, .5);
    border-radius: 50%;
    display: block;
    height: 50px;
    left: 50%;
    margin: -25px 0 0 -25px;
    position: absolute;
    top: 50%;
    width: 50px;

    content: "";

    animation: spin 1s infinite linear;
    -webkit-animation: spin 1s infinite linear;
}

@keyframes spin {
    from { transform: rotate(0deg); }
    to { transform: rotate(360deg); }
}
@-webkit-keyframes spin {
    from { -webkit-transform: rotate(0deg); }
    to { -webkit-transform: rotate(360deg); }
}
/* =============== END TEMP ==============*/

.elementInfoBox {
    position: absolute;
    background: #f7f1e7;
    color: #938671;
    padding: 10px;
}

.elementInfoInnerContainer {
    margin-bottom: 20px;
}

.elementInfoBox .close {
    width: 20px;
    height: 20px;
    background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACgAAAAoCAYAAACM/rhtAAAACXBIWXMAAA7DAAAOwwHHb6hkAAABl0lEQVR4nM3Y3U6DMBQH8BZujc9jvF280HeZ0X2whAcgcSpb3MMs28Kt25WPJPaEVcEBbc85UP4JyeGjzS+hLQ1ykzx/CSEP4zhdiAFlk0xehMjvAlXvVBF9JE/vvlE6hSWPVLkLt9kpexjdXkkhpvejm2t1vveNk0JO1Ft9G8erRQgXt9nxMARkFZfO4Vqob/pG1uEqQJ/IJtwF0AeyDVcL7BNpwjUC+0Da4FqBXSJtcUZgF0gXnBWQE+mKswZyIDE4JyAFicU5AzFICg4FdEFScWigDZIDRwK2IblwEElprKN2v69qgznLRZ4WnfLgir6YopHnbllwkICjE0guvoO6mhrSGNQpjzl1fHJ+u8nA/xOC+9tNAjbNVk4kGmhaSriQKKDtOseBdAZqHKx5j/FqZnqeinQCVnHrqW07QAIO2roirYFY3B/ytMcgrYBUHAVpBHLhsMhWIDcOg2wEdoVzRdYCu8a5IC+AfeFskRVg3zgb5C/QF86EDIeAa0PK89/0yDeunNJmZBnAr34ohoKDFBa5BNsPlgH3lSmETvoAAAAASUVORK5CYII=');
    background-repeat: no-repeat;
    background-position: center;
    position: absolute;
    top: 5px;
    right: 5px;
    cursor: pointer;
}

.elementInfoBox h3 {
    max-width: 130px;
    margin: -5px 0 7px 0;
    line-height: 1.17em;
}

.elementInfoBox div ul {
    margin: 0 0 14px 0;
    padding: 0;
    list-style: none;
}

.elementInfoBox div ul li {
    height: 20px;
}

.elementInfoBox .elementInfoBoxIcon {
    width: 20px;
    height: 20px;
}

.elementInfoBox .shareButton {
    text-decoration: none;
    background-color: #e8ded0;
    color: #938671;
    padding: 5px 10px;
    float: right;
    border: 0;
}

.searchBar {
    width: 20%;
    position: absolute;
    z-index: 990;
    top: 45%;
    left: 38%;
    background: rgba(232, 222, 208, 0.5);
    border: 0;
    padding: 10px;
    color: #938671;
}

.searchBar:focus {
    outline: 0;
}

/* social menu tab */
.socialLinks {
	margin: 0;
	padding: 0;
}
.socialLinks li {
	list-style-type: none;
}

/* ===============
    ALL: IE Fixes
   =============== */

.ie7 .title {
    padding-top: 20px;
}

/* ==========================================================================
   Night Mode
   ========================================================================== */

body.nightMode {
    color: #9779A6;
}

.nightMode .loadingScreen {
    background-color: #201A24;
}

.nightMode .loadingScreenMessage a,
.nightMode .loadingScreenPlatforms a {
    color: #9779A6;
}

.nightMode .loadingScreenMessage a:hover,
.nightMode .loadingScreenPlatforms a:hover {
    color: #C226A2;
}

.nightMode .workspace {
    background-color: #171319;
    background-size: 0 0;
}

.nightMode .side {
    background-color: #201A24;
    background-size: 0 0;
}

.nightMode .progress {
    color: #5D4A66;
}

.nightMode .libraryFade {
    display: none;
}

.nightMode .alphabet {
    border-right: 1px solid #5D4A66;
}

.nightMode .panel {
    background-color: rgba(0, 0, 0, 0.7);
}

.nightMode .panel .content {
    background-color: #171319;
}

.nightMode .menuTabs {
    border-bottom: 1px solid #201A24;
}

.nightMode .menuTabs li {
    border-right: 1px solid #201A24;
}

.nightMode .menuTabs li:last-of-type {
    border-right: 0;
}

.nightMode .menuTabs li:hover,
.nightMode .menuTabs .active {
    border-bottom: 4px solid #5D4A66;
}

.nightMode .menuSelect,
.nightMode .menuButton {
    color: #9779A6;
    background-color: #171319;
    border-color: #5D4A66;
}

.nightMode .menuContent a,
.nightMode .broadcast .content a {
    color: #9779A6;
    border-bottom: 1px solid #5D4A66;
}

.nightMode .menuContent a:hover,
.nightMode .broadcast .content a:hover {
    color: #75005D;
}

.nightMode .menuSocialMedia a {
    border-bottom: 0;
}

.nightMode input[type=checkbox].menuCheckbox + label.menuCheckboxLabel {
    background-image: url('../img/night-mode-menu-checkbox-unchecked.png');
}

.nightMode input[type=checkbox].menuCheckbox:checked + label.menuCheckboxLabel {
    background-image: url('../img/night-mode-menu-checkbox-checked.png');
}

.nightMode .elementInfoBox {
    color: #171319;
    background-color: #5D4A66 
}

.nightMode .elementInfoBox .shareButton {
    color: #201A24;
    background-color: #9779A6; 
}

.nightMode .searchBar {
    color: #171319;
    background-color: #5D4A66;
}

.nightMode .iconClear {
    background-image: url('../img/night-mode-clear.png');
}

.nightMode .iconScreenshot {
    background-image: url('../img/night-mode-screenshot.png');
}

.nightMode .iconMenu {
    background-image: url('../img/night-mode-menu.png');
}

.nightMode .closePanel,
.nightMode .notificationBox .close {
    background-image: url('../img/night-mode-cross-panel.png');
}

.nightMode .elementInfoBox .close {
    background-image: url('../img/night-mode-cross-panel-dark.png');
}

.nightMode .toggleFullscreen {
    background-image: url('../img/night-mode-fullscreen.png');
}

:-webkit-full-screen .nightMode .toggleFullscreen {
    background-image: url('../img/night-mode-un-fullscreen.png');
}

:-moz-full-screen .nightMode .toggleFullscreen {
    background-image: url('../img/night-mode-un-fullscreen.png');
}

:-ms-full-screen .nightMode .toggleFullscreen {
    background-image: url('../img/night-mode-un-fullscreen.png');
}

/* ==========================================================================
   Media Queries
   ========================================================================== */

@media only screen and (min-width: 768px) {
    .workspace .element {
        width: 74px;
        height: 74px;
    }

    .workspace img {
        width: 74px;
        height: 74px;
    }

    .workspace .element .elementName {
        text-align: center;
        width: 174px;
        margin-left: -50px;
    }

    .side {
        width: 250px;
        height: 100%;
        top: 0;
        right: 0;
        position: absolute;
        overflow: hidden;
    }

    .alphabet {
        width: 30px;
        min-height: 100%;
        top: 0;
        position: absolute;
    }

    .library{
        margin-left: 34px;
        overflow: hidden;
    }

    .library .element{
        width: 250px;
        height: 50px;
        padding: 5px 0;
    }

    .library .element img, .library .element span {
        padding-right: 3px;
        float: left;
    }

    .library .element .elementName {
        padding: 12px 0;
    }

    .progressShare {
        text-decoration: none;
    }

    .progress {
        bottom: 26px;
        left: 10px;
        font-size: 60pt;
        text-decoration: none;
    }

    .icons {
        width: 35px;
        right: 260px;
        bottom: 10px;
    }

    .icon {
        width: 35px;
        height: 35px;
        margin-top: 10px;
        cursor: pointer;
    }

    .broadcast {
        right: 260px;
        top: 2px;
    }

    .login {
        right: 320px;
        bottom: 2px;
    }
}
/* 
564 - peak 
598 - n4

*/
@media only screen and (min-width: 598px) and (max-width: 767px) {
    .workspace .element {
        width: 64px;
        height: 64px;
    }

    .workspace img {
        width: 64px;
        height: 64px;
    }

    .workspace .element .elementName {
        text-align: center;
        width: 164px;
        margin-left: -50px;
        font-size: 90%;
    }

    .side {
        width: 210px;
        height: 100%;
        top: 0;
        right: 0;
        position: absolute;
        overflow: hidden;
        font-size: 90%;
    }

    .alphabet {
        width: 30px;
        min-height: 100%;
        top: 0;
        position: absolute;
    }

    .library{
        margin-left: 34px;
        overflow: hidden;
    }

    .library .element{
        width: 250px;
        height: 50px;
        padding: 5px 0;
    }

    .library .element img {
        padding-right: 3px;
        float: left;
    }

    .library .element .elementName {
        padding: 12px 0;
    }

    .progress {
        bottom: 20px;
        left: 10px;
        font-size: 50pt;
    }

    .icons {
        width: 35px;
        right: 220px;
        bottom: 10px;
    }

    .icon {
        width: 35px;
        height: 35px;
        margin-top: 10px;
    }

    .broadcast {
        right: 220px;
        top: 2px;
        font-size: 90%;
        font-family: "Roboto Condensed", "sans-serif-condensed", sans-serif;
    }

    .login {
        right: 263px;
        bottom: 2px;
        font-size: 90%;
        font-family: "Roboto", sans-serif-light, sans-serif;
        font-weight: 300;
    }

}

@media only screen and (min-width: 490px) and (max-width: 597px) {
    .workspace .element {
        width: 58px;
        height: 58px;
    }

    .workspace img {
        width: 58px;
        height: 58px;
    }

    .workspace .element .elementName {
        text-align: center;
        width: 158px;
        margin-left: -50px;
        font-size: 90%;
    }

    .side {
        width: 200px;
        height: 100%;
        top: 0;
        right: 0;
        position: absolute;
        overflow: hidden;
        font-size: 90%;
    }

    .alphabet {
        width: 30px;
        min-height: 100%;
        top: 0;
        position: absolute;
    }

    .library{
        margin-left: 34px;
        overflow: hidden;
    }

    .library .element{
        width: 250px;
        height: 50px;
        padding: 5px 0;
    }

    .library .element img, .library .element span {
        padding-right: 3px;
        float: left;
    }

    .library .element .elementName {
        padding: 12px 0;
    }

    .progress {
        bottom: 14px;
        left: 5px;
        font-size: 39pt;
    }

    .icons {
        width: 35px;
        right: 210px;
        bottom: 10px;
    }

    .icon {
        width: 35px;
        height: 35px;
        margin-top: 10px;
    }

    .broadcast {
        right: 210px;
        top: 2px;
        font-size: 90%;
        font-family: "Roboto Condensed", "sans-serif-condensed", sans-serif;
    }

    .login:before {
        display: none;
    }

    .login {
        right: 253px;
        bottom: 2px;
        font-size: 90%;
        font-family: "Roboto", sans-serif-light, sans-serif;
        font-weight: 300;
    }

    .outerNotificationBox,
    .notificationBox {
        width: 100%;
    }

    .panel .content {
        height: 100%;
    }
}

@media only screen and (max-width: 489px) {
    .workspace .element {
        width: 54px;
        height: 54px;
    }

    .workspace img {
        width: 54px;
        height: 54px;
    }

    .workspace .element .elementName {
        text-align: center;
        width: 154px;
        margin-left: -50px;
        font-size: 90%;
    }

    .side {
        width: 150px;
        height: 100%;
        top: 0;
        right: 0;
        position: absolute;
        overflow: hidden;
        font-size: 90%;
    }

    .alphabet {
        width: 30px;
        min-height: 100%;
        top: 0;
        position: absolute;
    }

    .library{
        margin-left: 34px;
        overflow: hidden;
    }

    .library .element{
        width: 250px;
        height: 50px;
        padding: 5px 0;
        font-family: "Roboto Condensed", "sans-serif-condensed", sans-serif;
    }

    .library .element img, .library .element span {
        padding-right: 3px;
        float: left;
    }

    .library .element .elementName {
        padding: 12px 0;
    }

    .libraryFade {
        width: 18px;
        background-position: left;
    }

    .progress {
        bottom: 12px;
        left: 4px;
        font-size: 30pt;
        font-family: "Roboto Condensed", "sans-serif-condensed", sans-serif;
        letter-spacing: -2px;
    }

    .icons {
        width: 35px;
        right: 160px;
        bottom: 10px;
    }

    .icon {
        width: 35px;
        height: 35px;
        margin-top: 10px;
    }

    .broadcast {
        display: none;
    }

    .login {
        right: 160px;
        top: 12px;
        font-size: 90%;
        font-family: "Roboto", sans-serif-light, sans-serif;
        font-weight: 300;
    }

    .outerNotificationBox,
    .notificationBox {
        width: 100%;
    }

    .panel .content {
        width: 100%;
        height: 100%;
    }
}