html, body {
    height: 100%;
}

body {
    font-family: 'Arial';
}

body h3 {
    font-size: 16px;
    font-weight: bold;
}

body a h3 {
    text-decoration: none;
    color: #333;
}

.page-title {
    color: #aaa;
}

.hint {
    font-size: 11px;
    color: #ccc;
}

.hint-example {
    font-size: 11px;
    color: #000;
    margin-left: -5px;
}

.page-wrap {
    min-height: 100%;
    /* equal to footer height */
    margin-bottom: -90px;
}

.page-wrap:after {
    content: "";
    display: block;
    height: 90px;
}

.footer {
    width: 100%;
    height: 90px;
    line-height: 60px; /* Vertically center the text there */
    background-color: #f5f5f5;
}

.footer .container {
    padding-top: 13px;
}

.footer a, .footer .text-muted {
    color: #6c6c6c;
    font-size: 12px;
}

h3 {
    margin-top: 10px;
}
h3.if-you-like {
    margin-top: 0;
    margin-bottom: 15px;
}
h3.we-recommend {
    margin-top: 15px;
}
.row.game {
    margin: 0;
}
input[type="text"] {
    font-size: 18px;
}
.ui-autocomplete .ui-menu-item {
    font-size: 18px;
    padding: 5px;
}

#input-tag {
    overflow: hidden;
}

#input-tag .ui-autocomplete .ui-menu-item {
    text-transform: lowercase;
}

.ui-autocomplete .ui-state-active {
    background-color: black !important;
    color: white !important;
    border-color: black !important;
}
.working-autocomplete {
    background:url('/images/rolling.gif') no-repeat right center;
}
.game-image {
    width: 100%;
}
.row.game.pick-another {
    padding: 8px;
    display: none;
}
.row.game.pick-another.tag-form-top {
    border-bottom: none;
}
.row.game.pick-another.tag-form-bottom {
    border-top: none;
}
.row.game.pick-another.wizard-game-card {
    border-top: none;
}
.pick-another h5 {
    font-size: 20px;
    position: relative;
    right: -6%;
}
.tag {
    padding: 6px 10px;
    border-radius: 15px;
    line-height: 31px;
    white-space: nowrap;
    margin-right: 4px;
    margin-top: 8px;
    font-size: 11px;
}
.tag-genre {
    background: #dcd0c0;
}
.tag-social {
    background: #fcf0e0;
}
.tag-traits {
    background: #f4f4f4;
}
.tag-div {
    padding-top: 3px;
    width: 240px;
    overflow: hidden;
}
.game-name {
    margin-top: 5px;
    margin-bottom: 7px;
}
.steam-link {
    margin-top: 4px;
    display: block;
    margin-bottom: 3px;
}
.steam-link-div .steam-link img {
    width: 32px;
    padding: 0;
}
.vertical-align {
    display: flex;
    align-items: center;
    margin-top: 15px;
}
.recommendations {
    margin-top: -40px;
    margin-bottom: 15px;
}
.clickable-row {
    border: 1px solid lightgray;
}
th {
    border: none !important;
}

.btn.gold, .btn.gold:active, .btn.gold:visited {
    background-color: #c0b283 !important;
    font-size: 20px;
    margin-bottom: 20px;
    margin-right: 25px;
    padding-left: 25px;
    padding-right: 25px;
}
.btn.gold:hover {
    background-color: #D7C999 !important;
}

.btn.white {
    font-size: 16px;
    padding-left: 20px;
    padding-right: 20px;
}
.game-card {
    position: relative;
}
.game-remove {
    color:red;
    z-index: 5;
    font-size: 16px;
    background-color: white;
    padding: 5px;
}
.tag-remove {
    color:red;
    font-size: 16px;
    padding: 5px;
}
h4 {
    margin-top: 5px;
}
.table-data {
    display: block;
    padding-top: 6px;
}
.modal-dialog {
    margin-top: 300px;
}

.feedback-dialog {
    margin-top: 100px;
}

.modal-header .close {
    font-size: 26px;
}
.modal-body p {
    font-size: 16px;
}
.modal-footer {
    text-align: center;
}
.newsletter-signup form {
    text-align: center;
    padding: 25px;
    background-color: #f4f4f4;
}
.newsletter-signup .input-email {
    font-size: 18px;
    border-radius: 0;
}
.newsletter-signup .btn {
    margin-top: 7px;
    margin-bottom: 0;
}
.newsletter-signup h4 {
    margin-top: 0;
    font-size: 22px;
}

.newsletter-signup .shadowed-button {
    background-color: #00AE4D;
    border-color: #00AE4D;
    box-shadow: 4px 4px 0px 0px #c1c1c1;
    margin-left: auto;
    margin-right: auto;
    margin-top: 10px;
    padding-top: 3px;
}

.newsletter-signup .shadowed-button:hover {
    background-color: #00AE4D;
    border-color: #00AE4D;
    box-shadow: 4px 4px 0px 0px #a1a1a1;
    padding-top: 1px;
}

.message {
    border: 1px solid lightgray;
    border-radius: 5px;
    text-align: center;
    margin: 5px 0;
}

.message h6 {
    font-size: 16px;
}

.message.success {
    color: white;
    background-color: #00AE4D;
}
.message.failure {
    color: white;
    background-color: lightcoral;
}

.logo {
    position: relative;
    top: -1px;
    cursor: pointer;
    padding: 1px;
    display: inline-block;
    height: 44px;
    vertical-align: middle;
}

.logo img {
    vertical-align: top;
}

.logo:hover {
    padding: 0;
    border: 1px solid lightgray;
}

.about p, .about li {
    font-size: 16px;
}

.about h3 {
    font-size: 20px;
    text-align: center;
    font-weight: bold;
}

.about h4 {
    text-align: center;
    font-weight: bold;
    margin-top: 15px;
}

.about img {
    border: 1px solid lightgray;
    display: block;
    max-width: 100%;
    margin: 7px auto;
}

.top {
    padding-top: 15px;
    padding-bottom: 15px;
}

.top .site-logo-link {
    display: block;
    width: 109px;
    height: 42px;
    margin: 0 auto;
}

.top .site-logo {
    width: 109px;
    height: 42px;
    background:url('/images/logo.png') center top no-repeat;
}

.fa-btn {
    margin-right: 6px;
}

input.black::-webkit-input-placeholder {
    font-style: italic;
    color: #BFBFBF;
}
input.black:-moz-placeholder {
    font-style: italic;
    color: #BFBFBF;
}
input.black::-moz-placeholder {
    font-style: italic;
    color: #BFBFBF;
}
input.black:-ms-input-placeholder {
    font-style: italic;
    color: #BFBFBF;
}

input.black {
    color: white;
    background: black;
    border-radius: 0;
    border: none;
}

.tagit-new input::-webkit-input-placeholder {
    font-style: italic;
    color: #BFBFBF;
}
.tagit-new input:-moz-placeholder {
    font-style: italic;
    color: #BFBFBF;
}
.tagit-new input::-moz-placeholder {
    font-style: italic;
    color: #BFBFBF;
}
.tagit-new input:-ms-input-placeholder {
    font-style: italic;
    color: #BFBFBF;
}

ul.tagit .tagit-new input[type="text"] {
    color: white;
}

.no-user-games #tags {
    display: none;
}

#tags {
    padding-top: 20px;
    padding-bottom: 30px;
}

#form_games {
    padding-top: 30px;
}

.no-user-games #form_games {
    padding-top: 60px;
}

#tags_form_space ul.tagit {
    border-radius: 0;
    border: none;
    background: black;
    color: white;
    font-size: 18px;
    padding-left: 12px;
}

#tags_form_space ul.tagit li.tagit-choice {
    background: #7E7E7E;
    border: none;
    border-radius: 12px;
    margin-top: 5px;
}

#tags_form_space ul.tagit li.tagit-choice span {
    color: white;
    text-transform: lowercase;
    padding-right: 9px;
    padding-left: 3px;
}

#tags_form_space ul.tagit li.tagit-choice .tagit-close {
    right: -2px;
    top: 17px;
}

#tags_form_space ul.tagit li.tagit-choice .tagit-close .text-icon {
    color: #4B4B4B;
    font-size: 27px;
}

.user_games .game-card {
    margin-top: 10px;
}

.user_games .game-card .row {
    margin: 0;
    padding: 5px;
}

.user_games .game-card .game-image-col {
    max-width: 175px;
    padding: 0;
}

.user_games .game-card .game-image-col img {
    padding: 0;
}

.user_games .game-card .game-name {
    margin-top: 7px;
    margin-bottom: 2px;
    width: 215px;
    white-space: nowrap;
    text-overflow: ellipsis;
    overflow: hidden;
}

.game-card .tag {
    color: white;
    background-color: #4f4f4f;
}

.user_games .game-card .remove-game-icon {
    position: absolute;
    right: 0;
    top: 0;
    display: none;
}

.user_games .game-card:hover .remove-game-icon {
    display: block;
}


.cluster-game-image-frame .remove-game-icon-from-cluster {
    float: right;
    display: none;
    margin-top: -90px;
    padding: 5px;
}
.cluster-game-image-frame:hover .remove-game-icon-from-cluster {
    display: inline;
}

.game-remove-from-cluster {
    color:red;
    z-index: 5;
    font-size: 12px;
    margin-top: -170px;
}
.user_games .game-card .game-image-wizard {
    width: 100%;
}

.game-card .expected-playtime {
    font-size: 10px;
    font-style: italic;
}

.game-card.selected-game .expected-playtime {
    font-size: 12px;
}

.game-card.selected-game .expected-playtime .icon {
    top: 2px;
}

.game-card.selected-game h3.game-name {
    font-size: 20px;
}

.game-card.selected-game .steam-link-div {
    top: -3px;
}

.game-card.selected-game .tag-div {
    padding-top: 5px;
}

.game-card.selected-game .tag.tag-genre {
    background: #B6AA00;
}

.game-card.selected-game .tag.tag-social {
    background: #AD633C;
}

.game-card.selected-game .tag.tag-traits {
    background: #00B3B5;
}


.clusters .one-cluster {
    background: none;
    width: 275px;
    margin: 0 auto;
}

.clusters .cluster-game-images {
    height: 128px;
    position: relative;
    padding: 0;
}

.clusters .tag-div {
    width: auto;
    height: auto;
}

.clusters .cluster-game-images .empty {
    height: 25%;
    padding: 0;
}

.clusters .cluster-game-images .filled {
    height: 75%;
    padding: 0;
}

.clusters .cluster-game-image {
    padding: 0;
    width: 185px;
}

.clusters .cluster-game-image-frame {
    width: 185px;
    position: absolute;
}

.clusters .cluster-game-image-frame.not-visible {
    display: none;
}

.clusters .cluster-game-images:hover:not(.single-image) {
    height: auto;
    padding-top: 10px;
}

.clusters .cluster-game-images.single-image {
    height: auto;
    padding-top: 10px;
}

.clusters .cluster-game-images.single-image .cluster-game-image-frame,
.clusters .cluster-game-images:hover:not(.single-image) .cluster-game-image-frame {
    position: static;
    margin: 2px auto;
    display: block;
}

.clusters .cluster-game-images.single-image .cluster-game-image-frame .cluster-game-image,
.clusters .cluster-game-images:hover:not(.single-image) .cluster-game-image-frame .cluster-game-image {
    -webkit-box-shadow: none;
    -moz-box-shadow: none;
    box-shadow: none;

}


.clusters .cluster-game-image-frame.position-0 {
    z-index: 15;
    left: -4px;
    top: -4px;
}

.clusters .cluster-game-image-frame.position-1 {
    z-index: 5;
    right: 0;
    top: 33px;
}

.clusters .cluster-game-image-frame.position-2 {
    z-index: 10;
    left: 20%;
    top: 17px;
}

.clusters .bottom-triangle {
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 22px 137.5px 0 137.5px;
}

.clusters .game-card .game-data {
    padding-bottom: 0;
}

.clusters .game-card .bottom-triangle {
    border-width: 22px 128px 0 128px;
}

.recomendations .game-card {
    width: 258px;
    margin: 0 auto;
}

.game-page .recomendations .game-card {
    background: #E8E4AE;
}

.recomendations .game-card .game-image-wizard {
    width: 258px; /* huh? */
    padding: 11px;
}

.recomendations .game-card h3 {
    margin: 0;
    padding: 0 11px;
    margin-right: 30px;
}

.recomendations .game-card .expected-playtime {
    padding: 0 11px;
}

.single-game-recommendation .game-card {
    width: auto;
    margin: 0 auto;
}

.single-game-recommendation .game-card h3 {
    white-space: nowrap;
    text-overflow: ellipsis;
    overflow: hidden;
}

.single-game-recommendation .game-card img.game-image-wizard {
    width: 100%;
}

.single-game-recommendation .game-card .row {
    margin: 0;
}

.single-game-recommendation .game-card .tag-div {
    width: auto;
}

.single-game-recommendation .game-card .tag {
    background: #B6AA00;
}

.game-page .recomendations .game-card {
    margin-bottom: 10px;
    margin-right: 10px;
}

.game-page .recomendations .game-card .tag-div{
    padding-left: 11px;
    margin-bottom: 3px;
}

.game-card .expected-playtime .icon {
    background:url('/images/clock-icon.png') left top no-repeat;
    width: 14px;
    height: 14px;
    display: inline-block;
    position: relative;
    top: 3px;
}

.steam-link-div {
    clear: both;
    float: right;
    position: relative;
    top: -7px;
    right: 11px;
}
.hint.initial, .no-user-games .hint.secondary {
    display: none;
}

.no-user-games .hint.initial, .hint.secondary {
    display: block;
}

.hint.initial span, .hint.secondary span {
    padding-left: 12px;
}

.connect-steam {
    height: 50px;
}

.connect-steam-button {
    text-decoration: none;
    margin-top: 10px;
    display: block;
    width: 100%;
    height: 34px;
    font-size: 18px;
    color: #aaa;
    border: 1px solid #f1f1f1;
    -webkit-box-shadow: 4px 4px 0px 0px #f1f1f1;
    -moz-box-shadow: 4px 4px 0px 0px #f1f1f1;
    box-shadow: 4px 4px 0px 0px #f1f1f1;
}

.connect-steam-button span {
    display: block;
}

.connect-steam-button .main {
    padding-top: 5px;
}

.connect-steam-button .hint {
    display: none;
    position: relative;
    top: -2px;
}

.connect-steam-button:hover {
    height: 49px;
    text-decoration: none;
    -webkit-box-shadow: 4px 4px 0px 0px #c1c1c1;
    -moz-box-shadow: 4px 4px 0px 0px #c1c1c1;
    box-shadow: 4px 4px 0px 0px #c1c1c1;
}

.connect-steam-button:hover .hint {
    display: block;
}

.connect-steam-button:active, .connect-steam-button:focus {
    color: #aaa;
    text-decoration: none;
}

.connect-steam-button:hover .main {
    color: #888;
}

.connect-steam-button:hover .hint {
    color: #aaa;
}

.boost-button, .shadowed-button {
    display:block;
    border: 1px solid #f1f1f1;
    -webkit-box-shadow: 4px 4px 0px 0px #f1f1f1;
    -moz-box-shadow: 4px 4px 0px 0px #f1f1f1;
    box-shadow: 4px 4px 0px 0px #f1f1f1;
    height: 34px;
    padding-top: 6px;
    color: white;
    background-color: #969696;
    margin-top: 3px;
}

.boost-button:hover, .shadowed-button:hover {
    text-decoration: none;
    background-color: #a1a1a1;
    -webkit-box-shadow: 4px 4px 0px 0px #c1c1c1;
    -moz-box-shadow: 4px 4px 0px 0px #c1c1c1;
    box-shadow: 4px 4px 0px 0px #c1c1c1;
    border-color: #c1c1c1;
    color: white;
}

.boost-button:focus, .boost-button:active {
    text-decoration: none;
    color: white;
}

.show-more-container {
    padding-bottom: 45px;
    padding-top: 5px;
}

.show_more {
    border: none;
    background: #dcdcdc;
    border-radius: 10px;
    padding: 3px 10px 4px;
    font-size: 15px;
}

.show_more:hover {
    background: #bbb;
}

.show_more .arrow_down {
    background:url('/images/arrow-down.png') left top no-repeat;
    width: 15px;
    height: 11px;
    display: inline-block;
    position: relative;
    top: 2px;
    margin-left: 8px;
}

body .modal-content {
    border-radius: 0;
}

.feedback-footer-link {
    display: none;
}

.transp-overlay {
    position:absolute;
    left:0;
    top:0;
    background: rgba(255,255,255,.5);
    width:100%;
    height:100%;
    z-index: 50000;
    display: none;
}

.tab-pane {
    position: relative;
}

.all-transp-overlay {
    position:absolute;
    background: rgba(0,0,0,.7);
    width:100%;
    height:100%;
    z-index: 60000;
    min-height: 320px;
}

.transp-notoverlay {
    position: relative;
}

.tab-link {
    color: #000;
    text-align: center;
}

.nav-tabs {
    text-align:center;
}

#library-modal .modal-dialog {
    width: 1200px;
}
