/* Arquivo: css/style.css */

/* ------------------------------------- */
/* 0. PERSONALIZAÇÃO DA BARRA DE ROLAGEM */
/* ------------------------------------- */

:root {
    --main-red: #e60012;
    --scrollbar-track-color: #f8f8f8; 
}

/* Para navegadores WebKit (Chrome, Safari, Edge) */
::-webkit-scrollbar { width: 8px; height: 8px; }
::-webkit-scrollbar-track { background: var(--scrollbar-track-color); }
::-webkit-scrollbar-thumb { background: var(--main-red); border-radius: 10px; }
::-webkit-scrollbar-thumb:hover { background: #c00010; }

/* Para navegadores Firefox */
* { scrollbar-width: thin; scrollbar-color: var(--main-red) var(--scrollbar-track-color); }

/* ------------------------------------- */
/* 1. CONFIGURAÇÃO DA FONTE CUSTOMIZADA  */
/* ------------------------------------- */

@font-face {
    font-family: 'SuperFamiFont';
    /* Certifique-se que o caminho para o arquivo .ttf está correto */
    src: url('../assets/fonts/SuperFamifont-Bgmw.ttf') format('truetype');
    font-weight: normal;
    font-style: normal;
}

/* --- Configurações Gerais --- */
body {
    background-color: #f8f9fa; 
    font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
    overflow-x: hidden;
}

/* --- Cabeçalho e SFC Bar --- */
header { background-color: white; padding: 15px 0; }
.sfc-bar { display: flex; height: 8px; width: 100%; }
.sfc-bar div { flex: 1; }
.bg-green { background-color: #00a04c; }
.bg-yellow { background-color: #fecf08; }
.bg-blue { background-color: #007ac0; }
.bg-red { background-color: #e60012; }

/* --- GRID PERSONALIZADO --- */
.custom-grid-container {
    display: flex; flex-wrap: wrap; gap: 15px;
    justify-content: start; 
    /* CORREÇÃO AQUI: Altera 'width: fit-content' para 100% para ocupar toda a largura */
    /* do '.container' do Bootstrap, igualando a largura ao conteúdo do 'sobre.html'. */
    width: 100%; 
    margin: 0 auto; 
}

/* --- BLOCOS (Items) --- */
.grid-item {
    width: 94px; height: 94px; border-radius: 12px;
    transition: transform 0.1s; cursor: pointer; position: relative;
}
.grid-item:hover { transform: scale(1.05); z-index: 5; }
/* A largura de 203px é (2 * 94px) + 15px de gap */
.double-item { width: 203px; height: 94px; }

/* --- ITEM 1: LOGO E BUSCA (STICKY) --- */
.sticky-block { position: sticky; top: 20px; z-index: 1000; background-color: transparent; }
.logo-search-wrapper {
    background-color: white; border-radius: 15px; border: 1px solid #ccc;
    width: 100%; height: 100%; display: flex; overflow: hidden;
    box-shadow: 0 4px 6px rgba(0,0,0,0.05);
}

.left-sidebar { width: 50px; border-right: 1px solid #ccc; display: flex; flex-direction: column; }
.sidebar-btn { flex: 1; display: flex; align-items: center; justify-content: center; cursor: pointer; background: #fff; transition: background 0.2s; }
.sidebar-btn:hover { background-color: #f2f2f2; }
.border-bottom-gray { border-bottom: 1px solid #ccc; }
/* Corrigindo a cor da lupa no sidebar, removida a cor inline no HTML */
.search-icon { color: #444; } 

.right-logo-area { flex: 1; display: flex; align-items: center; justify-content: center; padding: 5px; }

/* --- Botão Todos --- */
.btn-todos { background: linear-gradient(135deg, #ff1d25, #ff5e64); border-radius: 12px; width: 100%; }

/* --- Imagens Jogos e Overlay --- */
.game-wrapper {
    width: 100%; height: 100%; box-sizing: border-box;
    border: 3px solid; border-radius: 12px; overflow: hidden;
    position: relative; 
    display: flex; 
    align-items: center;
    justify-content: center;
}
.game-img { width: 100%; height: 100%; object-fit: cover; }

/* Estilos para o overlay */
.game-overlay {
    position: absolute;
    top: 0; left: 0;
    width: 100%; height: 100%;
    background-color: rgba(0, 0, 0, 0.6); 
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: flex-end; 
    opacity: 0; 
    transition: opacity 0.2s ease-in-out; 
    padding-bottom: 5px; 
}

.game-wrapper:hover .game-overlay {
    opacity: 1; 
}

/* AJUSTE DE TAMANHO: Estrelas menores */
.game-rating {
    color: #ffd700; 
    font-size: 0.7rem; 
    margin-bottom: 2px; 
    display: flex; 
    gap: 1px; 
}
.game-rating i {
    color: #ffd700; 
    text-shadow: 1px 1px 0 rgba(0,0,0,0.3); 
}
.game-rating i.far {
    color: rgba(255, 255, 255, 0.5); 
}

/* AJUSTE FINAL DO TAMANHO DO TÍTULO: Mais compacto para caber */
.game-title-overlay {
    font-family: 'SuperFamiFont', sans-serif; 
    color: white;
    font-size: 0.65rem; /* Reduzido de 0.8rem para 0.7rem */
    text-align: center;
    line-height: 0.8; /* Reduzido de 0.9 para 0.8 para máxima compactação vertical */
    text-shadow: 1px 1px 2px rgba(0,0,0,0.7); 
    /* Garante a quebra de linha de palavras */
    white-space: normal; 
    word-break: break-word; 
    max-width: 90%;
    padding-bottom: 8px; 
}


/* --- Categorias --- */
.cat-wrapper {
    background-color: #eeeeee; width: 100%; height: 100%;
    border-radius: 12px; display: flex; align-items: center;
    justify-content: center; border: 1px solid #ddd;
    color: #333; padding: 0 15px;
}
.cat-wrapper:hover { background-color: #e0e0e0; border-color: #bbb; }
.cat-wrapper i { font-size: 1.5rem; margin-right: 10px; color: #222; }
.cat-text { font-size: 0.75rem; font-weight: bold; text-transform: uppercase; }

/* --- RODAPÉ E LEVEL UP --- */
.footer-box {
    position: relative; background: transparent; 
    padding-top: 30px; margin-top: 50px;
    width: 100%; margin: 50px auto 0 auto;
}
.footer-box .container { 
    margin: 0 auto; background-color: transparent; 
    padding-bottom: 20px !important; position: relative; 
}
.footer-box h3 {
    font-family: 'SuperFamiFont', sans-serif;
    letter-spacing: 2px;
}
.level-up-btn {
    background-color: #fecf08; border: 2px solid #000;
    color: #000; font-weight: 900; width: 50px; height: 50px;
    display: flex; align-items: center; justify-content: center;
    text-align: center; line-height: 0.9; font-size: 0.65rem;
    box-shadow: 4px 4px 0px #000; border-radius: 6px; cursor: pointer;
    position: absolute; right: 15px !important; top: 30px;
    transition: transform 0.1s;
}
.level-up-btn:active { transform: translate(4px, 4px); box-shadow: none; }

/* ------------------------------------- */
/* 2. ESTILOS DO MODAL DE BUSCA (NOVO)   */
/* ------------------------------------- */

/* O fundo azul/água do modal */
.modal-search-content {
    background-color: #88ffff; /* Cor azul clara similar à imagem */
    height: 100vh;
}
/* O bootstrap adiciona um padding que deve ser removido para tela cheia */
.modal-fullscreen .modal-content {
    padding: 0;
}

/* Estilização do cabeçalho do modal (onde fica o botão X e a barra de busca) */
.modal-header-custom {
    padding: 20px 15px 10px 15px; /* Ajuste o padding superior e lateral */
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    background: transparent;
}

/* Botão de Fechar (X) no canto superior esquerdo */
.btn-close-custom {
    background: none;
    border: none;
    font-size: 1.5rem;
    color: #333;
    cursor: pointer;
    align-self: flex-start; /* Alinha o X à esquerda */
    margin-bottom: 20px; /* Espaço abaixo do X */
    margin-top: 20px;
    padding: 0;
    margin-left: 20px; /* Afasta da borda esquerda */
}

.btn-close-custom i {
    color: rgba(0, 0, 0, 0.7);
    transition: color 0.2s;
}
.btn-close-custom:hover i {
    color: #000;
}

/* Contêiner da barra de busca para centralizar horizontalmente */
.search-box-container {
    width: 100%;
    display: flex;
    justify-content: center;
    padding: 0 15px; /* Padding para garantir que não toque nas laterais em telas pequenas */
}

/* A barra de busca em si (simulando o formato arredondado da imagem) */
.search-box {
    display: flex;
    align-items: center;
    background-color: white;
    border-radius: 50px; /* Valor alto para dar o formato de pílula */
    padding: 8px 15px;
    width: 100%;
    max-width: 650px; /* Define uma largura máxima para não esticar demais */
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
}

.search-loading-icon {
    font-size: 1.2rem;
    color: #007ac0; /* Cor azul do ícone de carregamento/logo */
    margin-right: 10px;
}

.search-input {
    flex-grow: 1;
    border: none;
    outline: none;
    font-size: 1rem;
    padding: 0;
    color: #333;
}
.search-input::placeholder {
    color: #888;
    font-weight: 500;
}

.search-button-modal {
    background: none;
    border: none;
    color: #999;
    font-size: 1rem;
    cursor: pointer;
    margin-left: 10px;
}

/* Estilização do corpo do modal (abaixo da barra de busca) */
.modal-body-custom {
    padding: 20px;
    padding-top: 50px; /* Espaço do topo */
    width: 100%;
    max-width: 960px; /* Limita a largura do conteúdo interno */
    margin: 0 auto;
}

/* Estilos dos Chips de Categoria (botões coloridos) */
.category-chips-container {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-bottom: 20px;
}

.category-chip {
    text-decoration: none;
    color: white;
    padding: 8px 15px;
    border-radius: 50px;
    font-size: 0.85rem;
    font-weight: bold;
    text-transform: uppercase;
    transition: opacity 0.2s;
    white-space: nowrap; /* Impede quebras de linha */
    border: 2px solid transparent;
}
.category-chip:hover {
    opacity: 0.8;
    color: white;
}

/* Cores dos chips baseadas na SFC Bar */
.blue-chip { background-color: #007ac0; }
.red-chip { background-color: #e60012; }
.green-chip { background-color: #00a04c; }
.yellow-chip { background-color: #fecf08; color: #333; }

.active-chip {
    border-color: white; /* Borda branca no ativo, como na imagem */
}

/* Arquivo: css/style.css */

/* ... Código anterior (até o final da seção de overlay de jogos) ... */

/* AJUSTE FINAL DO TAMANHO DO TÍTULO: Mais compacto para caber */
.game-title-overlay {
    font-family: 'SuperFamiFont', sans-serif; 
    color: white;
    font-size: 0.65rem; /* Reduzido de 0.8rem para 0.7rem */
    text-align: center;
    line-height: 0.8; /* Reduzido de 0.9 para 0.8 para máxima compactação vertical */
    text-shadow: 1px 1px 2px rgba(0,0,0,0.7); 
    /* Garante a quebra de linha de palavras */
    white-space: normal; 
    word-break: break-word; 
    max-width: 90%;
    padding-bottom: 8px; 
}

/* --- BLOCOS/SIDEBAR DA PÁGINA SOBRE (NOVA CLASSE) --- */
.sobre-sidebar-wrapper {
    /* Largura fixa: (2 * 94px) + 15px de gap = 203px (igual a .double-item) */
    width: 203px; 
    margin: 0; /* Garante alinhamento à esquerda dentro da coluna Bootstrap */
}


/* --- Categorias --- */
.cat-wrapper {
/* ... Resto do código sem alteração ... */