/*
 * Dark Mode - Baseado no tema dark-grid
 * Aplicar modo escuro ao tema default
 */

/* ========================================
   GRID LAYOUT (True Masonry)
   ======================================== */
.grid-layout {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(140px, 1fr));
    grid-gap: 10px;
    grid-auto-rows: minmax(140px, auto);
    grid-auto-flow: dense;
}

.span-2 {
    grid-column-end: span 2;
    grid-row-end: span 2;
}

.span-3 {
    grid-column-end: span 3;
    grid-row-end: span 3;
}

.grid-layout .list-title {
    overflow: hidden;
    margin: .35714em;
    color: #fff;
    text-overflow: ellipsis;
    white-space: nowrap;
    text-align: center;
    position: relative;
    bottom: 65px;
    margin-bottom: -53px;
    opacity: 0;
    font-weight: bold;
    transition: all 0.5s ease;
}

@media(hover: hover) and (pointer: fine) {
    .grid-layout .list-game:hover > .list-title {
        opacity: 1;
    }
    .grid-layout .list-thumbnail:hover {
        opacity: 0.5;
        transition: all 0.5s ease;
    }
}

/* ========================================
   BODY E BACKGROUNDS
   ======================================== */
body {
    background-color: #080618;
    color: #8296a5;
}

.install-body, .login-body {
    background-color: #080618;
}

.install-form, .login-form, .register-form {
    background-color: #120e31;
}

.site-content {
    background-color: #120e31;
}

/* Links */
a {
    color: #6c9cc6;
}

a:hover {
    color: #9cc5e8;
    text-decoration: none;
}

/* Navbar */
#mainNav {
    background-color: #120e31;
}

.nav-link:hover {
    background-color: #29254f;
}

a.nav-link {
    color: #d1dbe3 !important;
}

li.nav-item:hover {
    background-color: #29254f;
    border-radius: 10px;
}

/* Footer */
.footer {
    background-color: #29254f;
    color: #d1dbe3;
}

.footer .list-content .list-title {
    color: #d1dbe3;
}

.copyright {
    background-color: #120e31;
    color: #8296a5;
}

/* Games Grid */
.list-game {
    background-color: #120e31;
    border-radius: 10px;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.3);
}

.list-game:hover {
    box-shadow: 0 4px 20px rgba(107, 156, 198, 0.2);
}

.list-title {
    color: #d1dbe3;
}

img.small-thumb {
    border-radius: 10px;
}

/* Categories Navigation */
.nav-categories {
    background-color: #29254f;
}

.list-categories li {
    color: #d1dbe3;
}

.list-categories li:hover {
    background-color: #6190bf;
    color: #fff;
}

.cat-link {
    background-color: #29254f;
    color: #d1dbe3;
}

/* Game Page */
.single-title {
    color: #cbdbe3;
}

.single-info-container {
    border-bottom-color: #29254f;
}

.single-icon {
    background-color: #29254f;
    color: #d1dbe3;
}

.single-description, .single-instructions {
    color: #8296a5;
}

/* Sidebar & Widgets */
h4.widget-title {
    color: #cbdbe3;
    border-bottom-color: #29254f;
}

.sidebar .list-game {
    background-color: #120e31;
}

/* Item Titles */
h3.item-title {
    background-color: #29254f;
    color: #cbdbe3;
}

/* Page Content */
.page-content {
    color: #8296a5;
}

.singlepage-title {
    color: #cbdbe3;
}

/* Buttons */
nav.greedy button {
    background-color: #6190bf;
    color: #fff;
}

.btn-primary, .btn-kiosk.btn-primary-kiosk {
    background: linear-gradient(135deg, #6190bf, #6c9cc6);
    border-color: #6190bf;
}

/* Pagination */
.page-link {
    color: #cbdbe3;
    background-color: #120e31;
    border-color: #29254f;
}

.page-link:hover {
    background-color: #29254f;
    color: #9cc5e8;
}

.page-item.active .page-link {
    background-color: #6190bf;
    border-color: #6190bf;
}

/* Forms */
.form-control {
    background-color: #1a1635;
    border-color: #29254f;
    color: #d1dbe3;
}

.form-control:focus {
    background-color: #1a1635;
    border-color: #6190bf;
    color: #d1dbe3;
}

/* Hidden Links Dropdown */
ul.hidden-links {
    background-color: #120e31;
    border-color: #29254f;
}

ul.hidden-links a {
    color: #d1dbe3;
}

ul.hidden-links li:hover {
    background-color: #29254f;
}

/* Comments */
.comments-container {
    color: #8296a5;
}

/* Game Tags */
.game-tag-list .tag-item {
    background-color: #29254f;
    color: #d1dbe3;
}

/* Search */
.search-form input {
    background-color: #1a1635;
    border-color: #29254f;
    color: #d1dbe3;
}

/* Modals */
.modal-content {
    background-color: #120e31;
    color: #8296a5;
}

.modal-header {
    border-bottom-color: #29254f;
}

.modal-footer {
    border-top-color: #29254f;
}

/* Alerts */
.alert {
    background-color: #29254f;
    border-color: #29254f;
    color: #d1dbe3;
}

/* Tables */
.table {
    color: #8296a5;
}

.table-striped tbody tr:nth-of-type(odd) {
    background-color: #1a1635;
}

.table-bordered {
    border-color: #29254f;
}

/* Breadcrumb */
.breadcrumb {
    background-color: #1a1635;
}

.breadcrumb-item a {
    color: #6c9cc6;
}

.breadcrumb-item.active {
    color: #8296a5;
}

/* Kiosk Mode Enhancements */
.kiosk-card {
    background: rgba(18, 14, 49, 0.98);
    color: #d1dbe3;
}

.kiosk-title {
    color: #9cc5e8;
}

.kiosk-text {
    color: #8296a5;
}

/* Scrollbar */
::-webkit-scrollbar {
    width: 10px;
}

::-webkit-scrollbar-track {
    background: #080618;
}

::-webkit-scrollbar-thumb {
    background: #29254f;
    border-radius: 5px;
}

::-webkit-scrollbar-thumb:hover {
    background: #6190bf;
}

/* Selection */
::selection {
    background-color: #6190bf;
    color: #fff;
}

/* Loading States */
.loading-spinner {
    border-top-color: #6190bf;
}

/* Game iframe container */
.game-iframe-container {
    background-color: #080618;
}

/* Vote icons */
.icon-vote {
    color: #6c9cc6;
}

.icon-vote:hover {
    color: #9cc5e8;
}

.icon-vote.color-red {
    color: #e74c3c;
}

/* Stats */
.txt-stats {
    color: #8296a5;
}

/* Leaderboard */
.single-leaderboard {
    background-color: #120e31;
    border-radius: 10px;
    padding: 15px;
}

/* Action buttons */
.action-btn a {
    color: #6c9cc6;
}

.action-btn a:hover {
    color: #9cc5e8;
}

/* Category Description */
.category-description {
    background-color: #1f1b42;
    padding: 10px 15px;
    border-radius: 10px;
    color: #8296a5;
}

/* Grid wrapper */
.grid-wrapper {
    margin-bottom: 30px;
}

/* Nav item styling */
.nav-item {
    margin: 0 5px;
}

li.nav-item:hover {
    background-color: #29254f;
    border-radius: 10px;
}

/* Search bar */
.search-bar {
    margin-left: 10px;
    border-radius: 8px;
    overflow: hidden;
}

input.search {
    background-color: #1a1635;
    border-color: #29254f;
    color: #d1dbe3;
}

.btn-search {
    background-color: #6190bf;
    border-radius: 0;
    color: #fff;
}

/* Stats vote */
.stats-vote i:hover {
    color: #1abc9c;
    cursor: pointer;
}

/* Vote status */
.vote-status {
    font-size: 18px;
    font-weight: bold;
    color: #d1dbe3;
}

/* Load more button */
.load-more-games-wrapper {
    text-align: center;
}

.load-more-games {
    background: linear-gradient(135deg, #6190bf, #6c9cc6);
    color: #fff;
    padding: 12px 30px;
    border-radius: 25px;
    border: none;
    cursor: pointer;
    font-weight: bold;
    transition: all 0.3s ease;
}

.load-more-games:hover {
    transform: scale(1.05);
    box-shadow: 0 4px 15px rgba(97, 144, 191, 0.4);
}

/* Dropdown menu */
.dropdown-menu {
    background-color: #120e31;
    border-color: #29254f;
}

.nav-item-child {
    color: #d1dbe3;
}

.nav-link-child {
    color: #d1dbe3;
}

.nav-item-child:hover {
    background-color: #29254f;
}

/* Disabled state */
i.disabled {
    opacity: 0.5;
    pointer-events: none;
}

/* Media queries for responsive */
@media (max-width: 992px) {
    #mainNav {
        margin: 15px 0;
    }
    .nav-item {
        margin: 0 10px;
    }
    li.nav-item:hover {
        background-color: #29254f;
        border-radius: 0px;
    }
}

@media (max-width: 1440px) {
    .site-container {
        padding: 0;
    }
}

/* Post items */
.post-item {
    margin-bottom: 3rem !important;
}

.post-meta {
    color: #8f8f8f;
}

.post-meta .date {
    color: #8f8f8f;
}

.post-title {
    color: #cbdbe3;
}

/* Game tags */
.game-tag-list {
    display: flex;
    flex-wrap: wrap;
    margin-top: 8px;
}

.tag-item {
    padding: 4px 14px;
    background: #29254f;
    color: #d1dbe3;
    margin-right: 8px;
    margin-top: 8px;
    border-radius: 8px;
}

/* Color utilities */
.color-red {
    color: #bb4d4d;
}

/* Text colors */
.text-success {
    color: #1abc9c !important;
}

.text-muted {
    color: #8296a5 !important;
}

/* Background utilities */
.bg-dark {
    background-color: #120e31 !important;
}

/* Border colors */
.border {
    border-color: #29254f !important;
}

/* Card styling */
.card {
    background-color: #120e31;
    border-color: #29254f;
}

.card-header {
    background-color: #29254f;
    border-color: #29254f;
    color: #cbdbe3;
}

.card-body {
    background-color: #120e31;
    color: #8296a5;
}

/* List group */
.list-group-item {
    background-color: #120e31;
    border-color: #29254f;
    color: #8296a5;
}

.list-group-item:hover {
    background-color: #29254f;
}

/* Code blocks */
code, pre {
    background-color: #1a1635;
    color: #d1dbe3;
}

/* Blockquote */
blockquote {
    background-color: #1a1635;
    border-left: 4px solid #6190bf;
    color: #8296a5;
}

/* Horizontal rule */
hr {
    border-color: #29254f;
}

/* Image captions */
figcaption {
    color: #8296a5;
}

/* ========================================
   USER PROFILE & ACCOUNT
   ======================================== */
.section {
    background-color: #29254f;
    border-radius: 10px;
    padding: 15px;
    margin-bottom: 30px;
}

.section-title {
    color: #cbdbe3;
}

.user-page {
    background-color: #120e31;
    color: #8296a5;
}

.profile-username {
    color: #cbdbe3;
}

.profile-bio {
    color: #8296a5;
}

.profile-join {
    color: #d6793a;
}

.label-xp {
    color: #d6793a;
}

.profile-comment-item {
    border-color: #6f69a4;
    background-color: #1a1635;
}

/* User links dropdown */
ul.user-links {
    background-color: #120e31;
    border-color: #29254f;
}

ul.user-links li {
    color: #d1dbe3;
}

ul.user-links li:hover {
    background-color: #29254f;
}

/* ========================================
   COMMENT SYSTEM
   ======================================== */
#comment-form {
    border-bottom-color: #29254f;
}

.comment-form-wrapper {
    background: #1a1635;
    border-color: #6f69a4;
}

textarea.tpl-comment-input {
    background: #1a1635;
    color: #8296a5;
}

textarea.tpl-comment-input:focus {
    background: #1a1635;
    color: #8296a5;
}

.tpl-user-comment {
    border-bottom-color: #29254f;
}

.tpl-comment-author {
    color: #cbdbe3;
}

.tpl-comment-timestamp {
    color: #938fb5;
}

.tpl-comment-text {
    color: #8296a5;
}

.comment-reply-wrapper {
    background: #1a1635;
    border-color: #6f69a4;
}

textarea.tpl-reply-input {
    background: #1a1635;
    color: #8296a5;
}

.tpl-btn-cancel-reply {
    color: #938fb5;
}

#tpl-btn-load-more-comments {
    color: #938fb5;
}

.comment-require-login-wrapper .comment-alert {
    background-color: #29254f;
    color: #d1dbe3;
}

/* ========================================
   LOGIN/REGISTER FORMS
   ======================================== */
.login-form, .register-form {
    background-color: #120e31;
}

.login-form input, .register-form input {
    background-color: #1a1635;
    border-color: #29254f;
    color: #d1dbe3;
}

.login-form label, .register-form label {
    color: #8296a5;
}

.install-form {
    background-color: #120e31;
}

.install-form input, .install-form select {
    background-color: #1a1635;
    border-color: #29254f;
    color: #d1dbe3;
}

/* ========================================
   ADDITIONAL UTILITIES
   ======================================== */
/* Progress bar */
.progress {
    background-color: #1a1635;
}

.progress-bar {
    background-color: #6190bf;
}

/* Badges */
.badge {
    background-color: #29254f;
    color: #d1dbe3;
}

.badge-primary {
    background-color: #6190bf;
}

.badge-success {
    background-color: #1abc9c;
}

.badge-danger {
    background-color: #e74c3c;
}

/* Close button */
.close {
    color: #8296a5;
    text-shadow: 0 1px 0 #29254f;
}

.close:hover {
    color: #d1dbe3;
}

/* Input groups */
.input-group-text {
    background-color: #29254f;
    border-color: #29254f;
    color: #8296a5;
}

/* Placeholders */
::placeholder {
    color: #6c7a8a;
    opacity: 1;
}

:-ms-input-placeholder {
    color: #6c7a8a;
}

::-ms-input-placeholder {
    color: #6c7a8a;
}

/* Focus states */
*:focus {
    outline-color: #6190bf;
}

/* Transitions for smooth dark mode */
a, button, input, select, textarea, .list-game, .nav-item, .cat-link, .tag-item {
    transition: all 0.2s ease;
}
