/* ==========================================================================
   PARTE 1 DE 3: Configurações Base, Header, Painel Superior e Pesquisa
   ========================================================================== */
/* --- Configurações Base e Tipografia --- */
/* --- Configurações Base, Tipografia e Fonte Inter Moderna --- */
body, #container, input.textbox, textarea, select {
    font-family: 'Inter', Tahoma, Verdana, Arial, Sans-Serif !important;
    font-size: 14.5px !important; /* Aumentado de 13px para 14.5px para uma leitura ideal */
}
body {
    background: #f9f9fb;
    color: #333;
    text-align: center;
    line-height: 1.5; /* Aumentado ligeiramente o espaçamento entre linhas para o texto respirar */
    margin: 0;
    overflow-y: scroll;
    padding-top: 0;
}
/* Garante que o texto dos tópicos (mensagens dos utilizadores) fica com uma leitura premium */
.post_body {
    font-size: 15px !important; /* Tamanho ligeiramente maior para o conteúdo principal dos posts */
    line-height: 1.6 !important; /* Excelente legibilidade para relatórios de bugs e códigos */
    padding: 12px 0;
}
/* Pequeno ajuste para os subfóruns em texto mais pequeno não ficarem minúsculos */
.smalltext {
    font-size: 12px !important; /* Subido de 11px para 12px */
}
.largetext { font-size: 16px; font-weight: bold; }
#container {
    color: #333;
    text-align: left;
    line-height: 1.4;
    margin: 0;
    min-width: 990px;
}
/* --- Links Gerais --- */
a:link, a:visited {
    color: #0072BC;
    text-decoration: none;
}
a:hover, a:active {
    color: #0072BC;
    text-decoration: underline;
}
/* --- Contentor Principal do Fórum Centrado e com Largura Correta --- */
.wrapper {
    width: 85%;
    min-width: 970px;
    max-width: 1500px;
    margin: 0 auto !important; /* Força o alinhamento perfeitamente ao centro */
}
/* --- Reversão para o Fundo Azul Original com Menu Horizontal --- */
#logo {
    margin-top: 48px; /* Mantém o espaço para a barra laranja do topo */
    background: #3498db !important; /* Revertido para o azul original da Readysoft */
    padding: 25px 0 15px 0 !important;
    text-align: center !important;
}
/* Alinha o Logo e o Menu um por baixo do outro, centrados */
#logo .logo-nav-container {
    display: flex !important;
    flex-direction: column !important; /* Força o menu a ir para baixo do logo */
    align-items: center !important;
    justify-content: center !important;
    gap: 15px !important; /* Espaço entre a imagem do logo e os links */
    width: 100% !important;
    margin: 0 auto !important;
}
/* Restaura o tamanho do logo centrado original */
#logo img {
    width: 90px !important;
    height: auto !important;
    display: block !important;
    margin: 0 auto !important;
}
/* Links em linha (Horizontal) por baixo do logótipo */
.site-main-nav {
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
    display: flex !important;
    flex-direction: row !important; /* Força a orientação HORIZONTAL */
    align-items: center !important;
    justify-content: center !important;
    gap: 25px !important; /* Espaço horizontal entre cada link */
}
.site-main-nav li {
    list-style-type: none !important;
    list-style: none !important;
    display: inline-block !important;
}
/* Estilo do texto adaptado para o fundo azul */
.site-main-nav li a {
    color: #ffffff !important; /* Texto a branco para excelente contraste no azul */
    font-weight: 500 !important;
    font-size: 13.5px !important;
    text-decoration: none !important;
    letter-spacing: 0.5px;
    padding: 4px 8px !important;
    transition: color 0.2s ease;
}
/* Hover: Fica com o laranja característico ao passar o rato */
.site-main-nav li a:hover {
    color: #e68a00 !important;
}
/* Destaque para a página COMMUNITY */
.site-main-nav li.active-nav a {
    color: #e68a00 !important; /* Destaque laranja */
    font-weight: 600 !important;
}
/* --- Navegação Superior --- */
#header ul.menu {
    margin: 10px 0 0 0 !important;
    padding: 0 !important;
    list-style: none !important;
    text-align: center !important;
}
#header ul.menu li {
    display: inline-block !important;
    margin: 0 15px !important;
}
#header ul.menu li a {
    color: #fff !important;
    font-weight: 500 !important;
    padding: 6px 10px !important;
    background-image: none !important;
    text-decoration: none !important;
    transition: color 0.2s ease;
}
#header ul.menu li a:hover {
    color: #e68a00 !important;
}
#content {
    background: #fff;
    width: auto !important;
    padding: 20px 10px;
    overflow: hidden;
    margin: 20px auto 0 auto !important; /* Centra o bloco de conteúdo e dá espaço no topo */
    max-width: 1500px; /* Alinha o limite máximo com o resto do layout */
}
/* Barra superior ajustada para fluir normalmente */
#panel {
    position: relative;
    width: 100%;
    z-index: 9999;
}
#panel .upper {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    box-sizing: border-box; /* Garante que o padding não alarga a barra */
    background: #e68a00 !important;
    color: #fff !important;
    border-top: 2px solid #e68a00 !important;
    border-bottom: 2px solid #e68a00 !important;
    padding: 8px 20px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    font-weight: 500;
    z-index: 10000; /* Fica por cima de tudo */
    box-shadow: 0 2px 4px rgba(0,0,0,0.1);
}
/* Botões do Painel Superior */
#panel .upper a.login,
#panel .upper a.register,
#panel .upper a.logout,
#panel .upper .quick-buttons a,
#panel .upper a.button {
    background: #3498db !important;
    color: #fff !important;
    border-radius: 6px !important;
    padding: 5px 12px !important;
    font-weight: 600 !important;
    text-decoration: none !important;
    border: none !important;
    display: inline-block;
    margin-right: 10px;
    background-image: none !important;
    transition: background-color 0.2s ease;
}
#panel .upper a.login:hover,
#panel .upper a.register:hover,
#panel .upper a.logout:hover,
#panel .upper .quick-buttons a:hover,
#panel .upper a.button:hover {
    background: #2c80c9 !important;
    color: #fff !important;
}
#panel .upper a:link,
#panel .upper a:visited {
    color: #fff !important;
    text-decoration: none;
    font-weight: bold;
}
#panel .upper a:hover,
#panel .upper a:active {
    color: #3498db !important;
    text-decoration: underline;
}
/* --- Barra Azul (User CP) Alinhamento Perfeito com Mensagens Visíveis --- */
#panel .lower {
    background-color: #2c80c9 !important;
    border-top: 1px solid #1f5f9e;
    padding: 0 20px !important;
    height: 32px !important;
    box-sizing: border-box !important;
    display: block !important;
}
/* Força as listas a herdarem a mesma altura e comportamento */
#panel .lower ul.panel_links,
#panel .lower ul.user_links {
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
    height: 100% !important;
}
/* Separação dos blocos */
#panel .lower ul.panel_links {
    float: left !important;
    display: inline-block !important;
}
/* O TRUQUE: Transforma a lista da direita num bloco flexível horizontal */
#panel .lower ul.user_links {
    float: right !important;
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
}
/* Configuração dos itens das listas */
#panel .lower ul.panel_links li {
    display: inline-block !important;
    margin: 0 8px !important;
    padding: 0 !important;
    height: 100% !important;
    vertical-align: top !important;
}
/* Itens da direita: Usam flex para manter o texto e o contador colados na mesma linha */
#panel .lower ul.user_links li {
    display: flex !important;
    align-items: center !important;
    white-space: nowrap !important; /* Impede a quebra de linha do contador */
    margin: 0 8px !important;
    padding: 0 !important;
    height: 100% !important;
    color: #fff !important;
    font-size: 12px !important;
    font-weight: 500 !important;
}
/* Alinhamento vertical matemático do texto */
#panel .lower ul.panel_links a,
#panel .lower ul.user_links li a {
    color: #fff !important;
    text-decoration: none !important;
    font-weight: 500 !important;
    font-size: 12px !important;
    height: 32px !important;
    line-height: 32px !important;
    display: block !important;
    margin: 0 !important;
    padding: 0 !important;
    transition: color 0.2s ease; /* Faz a transição de cor ser suave */
}
/* Nova regra de Hover Laranja unificada para os dois lados */
#panel .lower ul.panel_links a:hover,
#panel .lower ul.user_links li a:hover {
    color: #e68a00 !important; /* Laranja Readysoft */
    text-decoration: underline !important;
}
/* Garante que o texto que está solto no li das mensagens herda a mesma altura de linha */
#panel .lower ul.user_links li {
    line-height: 32px !important;
}
#panel .lower ul.user_links li a {
    background-image: none !important;
    display: inline-block !important; /* Permite que o texto solto fique ao lado */
    margin-right: 4px !important; /* Pequeno espaço entre as palavras e os parênteses */
}
/* Mantém os sprites de ícones ativos */
#panel .lower ul.panel_links a.usercp { background-position: 0 -120px; }
#panel .lower ul.panel_links a.modcp { background-position: 0 -140px; }
#panel .lower ul.panel_links a.admincp { background-position: 0 -160px; }
.welcome {
    position: relative;
    top: 2px;
}
#quick_login .remember_me input {
    vertical-align: middle;
    margin: -3px 0 0 5px;
}

/* ==========================================================================
   SISTEMA DE PESQUISA SUPERIOR (BLINDADO)
   ========================================================================== */
#search {
    border: 0;
    padding: 0;
    margin: 0;
    float: right;
    vertical-align: middle;
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important;
}

/* Caixa de texto branca */
#search input.textbox {
    border: 1px solid #cbd5e1 !important;
    border-radius: 6px !important;
    padding: 4px 10px !important;
    font-size: 13px !important;
    color: #333 !important;
    height: 26px !important;
    box-sizing: border-box !important;
}

/* Forçar tamanho idêntico EXCLUSIVAMENTE nos dois botões da pesquisa */
#search input.button,
#search a.button {
    background: #3498db !important;
    color: #ffffff !important;
    border: none !important;
    border-radius: 6px !important;
    padding: 0 12px !important;
    font-weight: 600 !important;
    font-size: 12px !important;
    cursor: pointer;
    text-decoration: none !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    height: 26px !important; /* Altura matemática exata para ambos */
    line-height: 26px !important;
    box-sizing: border-box !important;
    transition: background-color 0.15s ease;
}

#search input.button:hover,
#search a.button:hover {
    background: #2c80c9 !important;
}

/* ==========================================================================
   FIX: BOTÃO LOG OUT (IMPEDE O PERFIL DE VIRAR BOTÃO)
   ========================================================================== */
/* Alvo cirúrgico apenas no link que tem a classe 'logout' */
#panel .upper a.logout, 
.logout {
    background: #3498db !important;
    color: #ffffff !important;
    border: none !important;
    border-radius: 6px !important;
    padding: 5px 12px !important; /* Tamanho normal de clique */
    font-weight: 600 !important;
    font-size: 13px !important;
    cursor: pointer;
    text-decoration: none !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    height: auto !important;
    line-height: 1.2 !important;
    transition: background-color 0.15s ease;
}

#panel .upper a.logout:hover, 
.logout:hover {
    background: #2c80c9 !important;
}

/* Protege o link do nome do utilizador (rsAdmin) para voltar a ser apenas texto normal */
#panel .upper .welcome a:not(.logout):not(.login):not(.register) {
    background: transparent !important;
    color: #ffffff !important;
    border: none !important;
    padding: 0 !important;
    font-weight: bold !important;
    font-size: 13px !important;
    display: inline !important;
    box-shadow: none !important;
}

#panel .upper .welcome a:not(.logout):not(.login):not(.register):hover {
    text-decoration: underline !important;
    color: #ffffff !important;
}

/* ==========================================================================
   BOTÕES GERAIS DO CORPO DO FÓRUM (CRIAR TÓPICOS, ETC.)
   ========================================================================== */
a.button,
button,
input.button {
    background: #3498db !important;
    color: #ffffff !important;
    border: none !important;
    border-radius: 6px !important;
    padding: 8px 16px !important;
    font-weight: 600 !important;
    font-size: 13.5px !important;
    cursor: pointer;
    text-decoration: none !important;
    display: inline-block;
    line-height: 1.2 !important;
    vertical-align: middle;
    outline: 0;
    transition: background-color 0.15s ease;
}

a.button:hover,
button:hover,
input.button:hover {
    background: #2c80c9 !important;
}


/* ==========================================================================
   PARTE 2A: Ícones de Status e Estrutura de Tabelas/Fórum
   ========================================================================== */
/* --- Novos Ícones de Estado dos Fóruns (Estilo SaaS Corrigido) --- */
.forum_status {
    height: 24px !important;
    width: 24px !important;
    display: inline-block;
    vertical-align: middle !important;
    margin-right: 14px !important; /* Espaçamento perfeito de 14px para afastar o texto */
    background-image: none !important; /* Remove o sprite antigo cinzento */
    border-radius: 6px; /* Cantos ligeiramente arredondados */
    position: relative;
    transition: all 0.2s ease;
    font-size: 0 !important; /* TRUQUE: Esconde qualquer texto ou "?" antigo que o MyBB injete lá dentro */
    color: transparent !important;
}

/* 🔵 ESTADO: Há novas mensagens (Fórum Ativo) */
.forum_on {
    background-color: #3498db !important; /* Azul Readysoft */
    box-shadow: 0 0 0 3px rgba(52, 152, 219, 0.2); 
}
.forum_on::after {
    content: "💬" !important; /* CORRIGIDO: Mudado de "?" para o balão de chat */
    font-size: 14px !important;
    color: #fff !important;
    position: absolute;
    top: 50%; left: 50%;
    transform: translate(-50%, -50%);
}

/* ⚪ ESTADO: Não há novas mensagens (Sem novidades) */
.forum_off {
    background-color: #f1f5f9 !important; 
    border: 1px solid #cbd5e1 !important;
}
.forum_off::after {
    content: "✉️" !important;
    font-size: 13px !important;
    color: #94a3b8 !important;
    position: absolute;
    top: 50%; left: 50%;
    transform: translate(-50%, -50%);
}

/* 🔒 ESTADO: Fórum Bloqueado / Fechado */
.forum_offclose {
    background-color: #f1f5f9 !important;
    border: 1px solid #cbd5e1 !important;
    opacity: 0.6;
}
.forum_offclose::after {
    content: "🔒" !important; /* CORRIGIDO: Mudado de "?" para o cadeado */
    font-size: 13px !important;
    position: absolute;
    top: 50%; left: 50%;
    transform: translate(-50%, -50%);
}

/* 🔗 ESTADO: Redirect Forum (Link Externo) */
.forum_offlink {
    background-color: #f1f5f9 !important;
    border: 1px solid #cbd5e1 !important;
}
.forum_offlink::after {
    content: "🔗" !important; /* CORRIGIDO: Mudado de "?" para a corrente */
    font-size: 12px !important;
    color: #64748b !important;
    position: absolute;
    top: 50%; left: 50%;
    transform: translate(-50%, -50%);
}

/* --- TRUQUE SUPREMO: Limpa qualquer imagem antiga que venha do HTML do MyBB --- */
.forum_status img {
    display: none !important;
    opacity: 0 !important;
    visibility: hidden !important;
}

/* --- Novos Mini Ícones de Subfóruns (Minimal Dots) --- */
.subforumicon {
    height: 8px !important;
    width: 8px !important;
    display: inline-block;
    margin: 0 6px 0 2px !important;
    vertical-align: middle !important;
    background-image: none !important; /* Remove o mini sprite antigo */
    border-radius: 50% !important; /* Transforma-os em círculos perfeitos */
    transition: all 0.2s ease;
}
/* ? SUBFÓRUM ATIVO: Novas mensagens por ler */
.subforum_minion {
    background-color: #3498db !important; /* Azul Readysoft vibrante */
    box-shadow: 0 0 0 2px rgba(52, 152, 219, 0.3); /* Pequeno pulso de destaque */
}
/* ⚪ SUBFÓRUM LIDO: Sem novidades */
.subforum_minioff {
    background-color: #cbd5e1 !important; /* Cinzento discreto que não polui */
}
/* ? SUBFÓRUM FECHADO / BLOQUEADO */
.subforum_minioffclose {
    background-color: #94a3b8 !important;
    opacity: 0.5;
}
/* ? SUBFÓRUM REDIRECT: Link Externo */
.subforum_miniofflink {
    background-color: #64748b !important;
}
table {
    color: #333;
    font-size: 13px;
}
table th, table td {
    vertical-align: middle !important;
}
.tborder {
    background: #fff;
    width: 100%;
    margin: auto;
    border: 1px solid #e2e8f0;
    border-radius: 8px !important; /* Forçado com !important */
    box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.05);
    overflow: hidden !important; /* Forçado com !important */
    padding: 0;
    border-collapse: separate !important; /* A LINHA MÁGICA: Corrige o bug do MyBB e força os cantos arredondados */
}
.tborder td {
    vertical-align: middle !important;
}
.tfixed {
    table-layout: fixed;
    word-wrap: break-word;
}
.thead {
    background: #e68a00 !important;
    color: #fff !important;
    border-bottom: none !important; /* Remove a linha azul grossa que corta o visual */
    padding: 12px 16px !important; /* Mais respiro para o título */
    font-weight: 600;
    text-shadow: none !important; /* Remove sombras de texto antigas */
}
.thead a {
    color: #fff !important;
    text-decoration: none;
}
.thead a:hover {
    color: #3498db !important;
    text-decoration: underline;
}
.tcat {
    background: #3498db !important;
    color: #fff !important;
    border: none !important;
    padding: 10px 16px !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    text-shadow: none !important;
}
.tcat a:link, .tcat a:visited {
    color: #fff !important;
    text-decoration: none;
}
.tcat a:hover, .tcat a:active {
    color: #e68a00 !important;
    text-decoration: underline;
}
/* --- Estilização Moderna das Linhas da Tabela --- */
.trow1, .trow2 {
    background: #ffffff !important; /* Fundo branco limpo para melhor leitura */
    border-bottom: 1px solid #f1f5f9 !important; /* Linha divisória muito suave */
    border-top: none !important;
    border-left: none !important;
    border-right: none !important;
    padding: 14px 16px !important; /* Dá mais espaço e respiro ao conteúdo */
    transition: background-color 0.2s ease;
}
/* Efeito Hover: Destaca a linha do fórum onde o utilizador passa o rato */
.trow1:hover, .trow2:hover {
    background: #f8fafc !important;
}
/* Mantém o suporte para linhas sombreadas e posts não aprovados com um tom suave */
.trow_shaded, .post.unapproved_post {
    background: #fff5f5 !important;
}
.trow_shaded {
    border-bottom: 1px solid #fee2e2 !important;
    border-top: none !important;
    border-left: none !important;
    border-right: none !important;
}
.no_bottom_border { border-bottom: 0; }
.thread_start_datetime { color: #999; }
.post.unapproved_post .post_author, .post.classic.unapproved_post .post_author, .post.unapproved_post .post_controls { border-color: #ffb8be; }
.trow_deleted, .post.deleted_post { background: #E8DEFF; }
.trow_selected, tr.trow_selected td {
    background: #FFFBD9;
    color: #333;
    border-right-color: #F7E86A;
    border-bottom-color: #F7E86A;
}
.trow_selected a:link, .trow_selected a:visited, .trow_selected a:hover, .trow_selected a:active {
    color: #333;
}
.trow_sep {
    background: #ddd;
    color: #333;
    border-bottom: 1px solid #c5c5c5;
    padding: 6px;
    font-size: 12px;
    font-weight: bold;
}
.tfoot {
    border-top: 1px solid #fff;
    padding: 6px;
    background: #ddd;
    color: #666;
}
.tfoot a:link, .tfoot a:visited { color: #444; text-decoration: none; }
.tfoot a:hover, .tfoot a:active { color: #444; text-decoration: underline; }
.thead input.textbox, .thead select { border: 1px solid #263c30; }
.bottommenu { background: #efefef; color: #333; border: 1px solid #4874a3; padding: 10px; }
/* ==========================================================================
   PARTE 2B: Paginação, Formulários, Reputação, Citações e Alertas
   ========================================================================== */
/* --- Navegação / Paginação --- */
.navigation { color: #333; font-size: 12px; }
.navigation a:link, .navigation a:visited { text-decoration: none; }
.navigation a:hover, .navigation a:active { text-decoration: underline; }
.navigation .active { color: #333; font-size: small; font-weight: bold; }
/* --- Formulários e Inputs --- */
fieldset { padding: 12px; border: 1px solid #ddd; margin: 0; }
fieldset.trow1, fieldset.trow2 { border-color: #bbb; }
fieldset.align_right { text-align: right; }

/* --- 4. Modernização de Formulários e Inputs Globais --- */
input.textbox, textarea {
    border: 1px solid #cbd5e1 !important;
    border-radius: 6px !important;
    padding: 8px 12px !important;
    font-size: 14px !important;
    box-shadow: inset 0 1px 2px rgba(0,0,0,0.02);
    transition: border-color 0.2s ease, box-shadow 0.2s ease;
}

#content textarea {
    box-sizing: border-box;
}

input.textbox:focus, textarea:focus {
    border-color: #3498db !important;
    box-shadow: 0 0 0 3px rgba(52, 152, 219, 0.15) !important;
    outline: 0;
}

input.textbox.portal_search { width: 68%; }

select {
    background: #fff;
    padding: 3px;
    border: 1px solid #ccc;
    outline: 0;
}
form { margin: 0; padding: 0; }
input.error, textarea.error, select.error { border: 1px solid #f30; color: #f30; }
input.valid, textarea.valid, select.valid { border: 1px solid #0c0; }
label.error {
    color: #f30;
    margin: 5px;
    padding: 0;
    display: block;
    font-weight: bold;
    font-size: 11px;
}
form #message { width: 500px; }
.editor, .editor_control_bar { border: 1px solid #ccc; }
.editor { background: #f1f1f1; }
.editor_control_bar { background: #fff; }
.post .editor_control_bar { background: #f5f5f5; }
/* --- Reputação e Menus Popups --- */
.popup_menu { background: #fff; border: 1px solid #ccc; }
.popup_menu .popup_item { background: #efefef; color: #333; }
.popup_menu .popup_item:hover { background: #0072BC; color: #fff; }
.trow_reputation_positive { background: #ccffcc; }
.trow_reputation_negative { background: #ffcccc; }
.reputation_positive { color: green; }
.reputation_neutral { color: #444; }
.reputation_negative { color: red; }
.repbox { font-size: 16px; font-weight: bold; padding: 5px 7px; }
._neutral { background-color: #FAFAFA; color: #999; border: 1px solid #CCC; }
._minus { background-color: #FDD2D1; color: #CB0200; border: 1px solid #980201; }
._plus { background-color: #E8FCDC; color: #008800; border: 1px solid #008800; }
/* --- Classes Utilitárias --- */
img { border: none; }
img.attachment { border: 1px solid #E9E5D7; padding: 2px; }
hr { background-color: #000; color: #000; height: 1px; border: 0; }
.clear { clear: both; }
.float_left { float: left; }
.float_right { float: right; }
.hidden { display: none; float: none; width: 1%; }
.hiddenrow { display: none; }
.selectall {
    background: #FFFBD9;
    border-bottom: 1px solid #F7E86A;
    color: #333;
    text-align: center;
}
.expcolimage {
    display: none !important; /* ALTERADO: Oculta o ícone de abrir/fechar secções */
}
.tcat_menu > .expcolimage { margin-top: 0; }

/* --- Elementos de Conteúdo (Citações e Código) --- */
blockquote { border: 1px solid #ccc; margin: 0; background: #fff; padding: 10px; }
blockquote cite { font-weight: bold; border-bottom: 1px solid #ccc; font-style: normal; display: block; padding-bottom: 3px; margin: 0 0 10px 0; }
blockquote cite > span { float: right; font-weight: normal; font-size: 12px; color: #666; }
blockquote cite span.highlight { float: none; font-weight: bold; padding-bottom: 0; }
.codeblock { background: #fff; border: 1px solid #ccc; padding: 10px; }
.codeblock .title { border-bottom: 1px solid #ccc; font-weight: bold; padding-bottom: 3px; margin: 0 0 10px 0; }
.codeblock code {
    overflow: auto;
    height: auto;
    max-height: 200px;
    display: block;
    font-family: Monaco, Consolas, Courier, monospace;
    font-size: 13px;
    white-space: pre;
    tab-size: 4;
}
.smilie { vertical-align: middle; }
.smilie_pointer { cursor: pointer; }
.separator { margin: 5px; padding: 0; height: 0; font-size: 1px; list-style-type: none; }
.popup_menu .popup_item_container { margin: 1px; text-align: left; }
.popup_menu .popup_item { display: block; padding: 4px; white-space: nowrap; text-decoration: none; }
.popup_menu a.popup_item:hover { text-decoration: none; }
.subject_new { font-weight: bold; }
.highlight { background: #FFFFCC; padding-top: 3px; padding-bottom: 3px; }
/* --- Alertas --- */
.pm_alert, .red_alert {
    text-align: center;
    padding: 5px 20px;
    margin-bottom: 15px;
    font-size: 11px;
}
.pm_alert { background: #FFF6BF; border: 1px solid #FFD324; }
.red_alert { background: #FBE3E4; border: 1px solid #A5161A; color: #A5161A; word-wrap: break-word; }
.red_alert a:link, .red_alert a:visited, .red_alert a:hover, .red_alert a:active { color: #A5161A; }
.high_warning { color: #CC0000; }
.moderate_warning { color: #F3611B; }
.low_warning { color: #AE5700; }
.imminent_banned { color: #880000; }
.high_banned { color: #FF0000; }
.moderate_banned { color: #FF6600; }
.low_banned { color: #008000; }
.online { color: #15A018; }
.offline { color: #C7C7C7; }
div.error { padding: 5px 10px; border: 2px solid #FFD324; background: #FFF6BF; font-size: 12px; }
div.error p { margin: 0; color: #333; font-weight: normal; }
div.error p em {
    font-style: normal;
    font-weight: bold;
    padding-left: 24px;
    display: block;
    color: #C00;
    background: url(../../../images/error.png) no-repeat 0;
}
div.error ul { margin-left: 24px; }
/* ==========================================================================
   PARTE 2C: Encerramento da Paginação, Lendas do Fórum e Rodapé
   ========================================================================== */
/* --- Continuação da Paginação --- */
.pagination { font-size: 11px; padding-top: 10px; margin-bottom: 5px; }
.tfoot .pagination, .tcat .pagination { padding-top: 0; }
.pagination .pages { font-weight: bold; }
.pagination .pagination_current, .pagination a { padding: 3px 6px; margin-bottom: 3px; }
.pagination a { background: #f5f5f5; border: 1px solid #ccc; }
.pagination .pagination_current { background: none; color: #333; border: none; font-weight: bold; }
.pagination a:hover { background: #0072BC; color: #fff; border-color: #263c30; text-decoration: none; }
.pagination .go_page img { margin-bottom: -4px; }
.drop_go_page { background: #f5f5f5; padding: 4px; }
.pagination_breadcrumb { background-color: #efefef; border: 1px solid #fff; outline: 1px solid #ccc; padding: 5px; margin-top: 5px; font-weight: normal; }
.pagination_breadcrumb_link { vertical-align: middle; cursor: pointer; }
/* --- Lendas e Rodapé --- */
.thread_legend, .thread_legend dd, .forum_legend, .forum_legend dt, .forum_legend dd { margin: 0; padding: 0; }
.thread_legend dd { padding-bottom: 4px; margin-right: 15px; }
.thread_legend img { margin-right: 4px; vertical-align: bottom; }
.forum_legend dd { float: left; margin-right: 10px; margin-top: 7px; }
.forum_legend dt { margin-right: 10px; float: left; }
.success_message, .error_message { font-weight: bold; font-size: 10px; margin-bottom: 10px; }
.success_message { color: #00b200; }
.error_message { color: #C00; }
#footer { clear: both; }
#footer ul.menu { margin: 0; padding: 0; list-style: none; }
#footer ul.menu li { margin: 0 5px; display: inline; }
#footer .upper { background: #efefef; border-top: 1px solid #bbb; border-bottom: 1px solid #bbb; padding: 6px; font-size: 12px; overflow: hidden; }
#footer a:link, #footer a:visited, #footer a:hover, #footer a:active { color: #777; }
#footer .upper .language, #footer .upper .theme { float: right; margin: -1px -1px 0 15px; }
#footer .upper .language select, #footer .upper .theme select { border-color: #ccc; }
#footer .upper ul.bottom_links { float: left; margin: 4px 0 0 0; }
#footer .lower { color: #666; padding: 6px 6px 12px 6px; overflow: hidden; font-size: 11px; }
#footer .lower a:link, #footer .lower a:visited { color: #444; font-weight: bold; }
#footer .lower a:hover, #footer .lower a:active { color: #333; text-decoration: underline; font-weight: bold; }
#footer .lower #current_time { float: right; color: #888; }
#debug { float: right; text-align: right; margin-top: 20px; font-size: 11px; }
.scaleimages img { max-width: 100%; }
/* ==========================================================================
   PARTE 3A: Estrutura dos Posts e Botões do Postbit
   ========================================================================== */
#posts_container { padding: 0; }
.ignored_post, .deleted_post_collapsed { padding: 15px; border-top: 3px solid #333; }
.ignored_post .show_ignored_post, .deleted_post_collapsed .show_deleted_post { margin-top: -15px; }
.ignored_post .show_ignored_post a.button span, .deleted_post_collapsed .show_deleted_post a.button span { background-position: 0 -400px; }
.deleted_post_hidden { border-top: 2px solid #ccc; padding: 15px; }
.post { overflow: hidden; }
.post.classic { padding-top: 15px; }
.post .post_author { border-bottom: 1px solid #ccc; border-top: 2px solid #ccc; background: #f5f5f5; padding: 5px; overflow: hidden; }

.post .post_author .buddy_status { vertical-align: middle; margin-top: -4px; }
.post .post_author div.author_avatar { float: left; margin-right: 3px; }
.post.classic .post_author div.author_avatar { float: none; text-align: center; margin-bottom: 8px; }
.post .post_author div.author_information { float: left; padding: 6px 8px; }
.post.classic .post_author div.author_information { float: none; padding: 0; text-align: center; }
.post .post_author div.author_statistics {
    float: right;
    font-size: 11px;
    padding: 3px 10px 3px 5px;
    color: #666;
    line-height: 1.3;
}
.post.classic .post_author div.author_statistics { border-top: 1px dotted #ccc; margin: 6px 0 0 0; padding: 6px 6px 3px 6px; float: none; }
.post .post_head { font-size: 11px; padding-bottom: 4px; border-bottom: 1px dotted #ddd; margin-bottom: 4px; }
.post .post_head span.post_date { color: #666; }
.post .post_head span.edited_post { font-size: 10px; color: #999; }
.post .post_head span.edited_post a { color: #666; }
.post.classic .post_content { float: left; width: 79%; padding: 0 1% 5px 1%; }
.post_content { padding: 9px 10px 5px 10px; }
.post_content .signature { margin-top: 5px; border-top: 1px dotted #ddd; padding: 10px 0 4px 0; }
.post .post_meta { margin: 4px 0; font-size: 11px; color: #999; }
.post .post_meta a:link, .post .post_meta a:visited, .post .post_meta a:hover, .post .post_meta a:active { color: #777; }
.post_controls { clear: both; background: #f5f5f5; border-bottom: 1px solid #ccc; padding: 5px; overflow: hidden; }

/* ==========================================================================
   PARTE 3B: Botões de Ação, Sondagens, Suporte Legacy e jGrowl
   ========================================================================== */

a.button.small_button { font-size: 13px; margin: 0; padding: 3px 6px; }
a.button span { padding-left: 20px; display: inline-block; background: url(../../../images/buttons_sprite.png) no-repeat; }
a.button.new_thread_button span { background-position: 0 -340px; }
a.button.new_reply_button span { background-position: 0 -360px; }
a.button.closed_button span { background-position: 0 -380px; }
a.button.rate_user_button span { background-position: 0 -400px; }
a.button.add_buddy_button span { background-position: 0 -440px; }
a.button.remove_buddy_button span { background-position: 0 -480px; }
a.button.add_ignore_button span { background-position: 0 -460px; }
a.button.remove_ignore_button span { background-position: 0 -500px; }
a.button.report_user_button span { background-position: 0 -520px; }
.quick_jump { background: url(../../../images/jump.png) no-repeat 0; width: 13px; height: 13px; padding-left: 13px; margin-top: -3px; border: none; }
.pollbar { background: url(../../../images/pollbar.png) top left repeat-x; border: 1px solid #3f3f3f; height: 10px; }
.pollbar .percent { display: none; }
.poll_votedfor { background: #efefef; border: 1px solid; border-color: #fff #ddd #ddd #fff; }
.posticons_label { white-space: nowrap; }
/* --- Suporte Opcional IE6 (Mantido para Segurança) --- */
.ie6 { position: absolute; }
.ie6.top-right { right: auto; bottom: auto; left: expression( ( 0 - jGrowl.offsetWidth + ( document.documentElement.clientWidth ? document.documentElement.clientWidth : document.body.clientWidth ) + ( ignoreMe2 = document.documentElement.scrollLeft ? document.documentElement.scrollLeft : document.body.scrollLeft ) ) + 'px' ); top: expression( ( 0 + ( ignoreMe = document.documentElement.scrollTop ? document.documentElement.scrollTop : document.body.scrollTop ) ) + 'px' ); }
.ie6.top-left { left: expression( ( 0 + ( ignoreMe2 = document.documentElement.scrollLeft ? document.documentElement.scrollLeft : document.body.scrollLeft ) ) + 'px' ); top: expression( ( 0 + ( ignoreMe = document.documentElement.scrollTop ? document.documentElement.scrollTop : document.body.scrollTop ) ) + 'px' ); }
.ie6.bottom-right { left: expression( ( 0 - jGrowl.offsetWidth + ( document.documentElement.clientWidth ? document.documentElement.clientWidth : document.body.clientWidth ) + ( ignoreMe2 = document.documentElement.scrollLeft ? document.documentElement.scrollLeft : document.body.scrollLeft ) ) + 'px' ); top: expression( ( 0 - jGrowl.offsetHeight + ( document.documentElement.clientHeight ? document.documentElement.clientHeight : document.body.clientHeight ) + ( ignoreMe = document.documentElement.scrollTop ? document.documentElement.scrollTop : document.body.scrollTop ) ) + 'px' ); }
.ie6.bottom-left { left: expression( ( 0 + ( ignoreMe2 = document.documentElement.scrollLeft ? document.documentElement.scrollLeft : document.body.scrollLeft ) ) + 'px' ); top: expression( ( 0 - jGrowl.offsetHeight + ( document.documentElement.clientHeight ? document.documentElement.clientHeight : document.body.clientHeight ) + ( ignoreMe = document.documentElement.scrollTop ? document.documentElement.scrollTop : document.body.scrollTop ) ) + 'px' ); }
.ie6.center { left: expression( ( 0 + ( ignoreMe2 = document.documentElement.scrollLeft ? document.documentElement.scrollLeft : document.body.scrollLeft ) ) + 'px' ); top: expression( ( 0 + ( ignoreMe = document.documentElement.scrollTop ? document.documentElement.scrollTop : document.body.scrollTop ) ) + 'px' ); width: 100%; }
/* --- jGrowl Notificações --- */
.jGrowl { z-index: 9999; color: #fff; font-size: 12px; font-family: "Helvetica Neue", Helvetica, Arial, sans-serif; position: fixed; }
.jGrowl.top-left { left: 0; top: 0; }
.jGrowl.top-right { right: 0; top: 0; }
.jGrowl.bottom-left { left: 0; bottom: 0; }
.jGrowl.bottom-right { right: 0; bottom: 0; }
.jGrowl.center { top: 0; width: 50%; left: 25%; }
.jGrowl.center .jGrowl-notification, .jGrowl.center .jGrowl-closer { margin-left: auto; margin-right: auto; }
.jGrowl-notification {
    background-color: transparent;
    opacity: 0.9;
    width: 250px;
    padding: 10px;
    margin: 10px;
    text-align: left;
    display: none;
    border-radius: 5px;
    word-break: break-all;
}
.jGrowl .jGrowl-notification { min-height: 40px; }
.jGrowl-notification .ui-state-highlight, .jGrowl-closer .ui-widget-header .ui-state-highlight { border: 1px solid #000; background: #000; color: #fff; }
.jGrowl-notification .jGrowl-header { font-weight: bold; font-size: .85em; }
.jGrowl .jGrowl-notification.jgrowl_success { background: lightgreen; border: 1px solid lightgreen; color: #333; }
.jGrowl .jGrowl-notification.jgrowl_error { background: red; border: 1px solid red; color: #333; }
.jGrowl .jGrowl-notification.jgrowl_process, .jGrowl .jGrowl-closer { background: yellow; border: 1px solid yellow; color: #333; }
@media print { .jGrowl { display: none; } }
/* ==========================================================================
   PARTE 3C: Janelas Modais e jQuery-Impromptu (Fim do Ficheiro)
   ========================================================================== */
/* --- Modais (Blocker) --- */
.blocker {
    position: fixed;
    top: 0; right: 0; bottom: 0; left: 0;
    width: 100%; height: 100%;
    overflow: auto;
    z-index: 9999;
    padding: 20px;
    box-sizing: border-box;
    background-color: rgba(0,0,0,0.75);
    text-align: center;
}
.blocker:before { content: ""; display: inline-block; height: 100%; vertical-align: middle; margin-right: -0.05em; }
.blocker.behind { background-color: transparent; }
.modal {
    width: 400px;
    text-align: left;
    background: #fff;
    display: inline-block;
    vertical-align: middle;
    position: relative;
    z-index: 2;
    box-sizing: border-box;
    border-radius: 8px;
    box-shadow: 0 0 10px #000;
}
.modal a.close-modal { position: absolute; top: -12.5px; right: -12.5px; display: block; width: 30px; height: 30px; text-indent: -9999px; background: url(../../../images/close.png) no-repeat 0 0; z-index: 2; }
.modal-spinner { display: none; width: 64px; height: 64px; position: fixed; top: 50%; left: 50%; margin-right: -32px; margin-top: -32px; background: url(../../../images/spinner_big.gif) no-repeat center center; border-radius: 8px; }
/* --- jQuery-Impromptu --- */
.jqifade { position: absolute; background-color: #777; }
iframe.jqifade { display: block; z-index: -1; }
div.jqi {
    width: 400px;
    max-width: 90%;
    font-family: Verdana, Geneva, Arial, Helvetica, sans-serif;
    position: absolute;
    background-color: #fff;
    font-size: 11px;
    text-align: left;
    border: solid 1px #eee;
    border-radius: 6px;
    padding: 7px;
}
div.jqi .jqiclose { position: absolute; top: 4px; right: -2px; width: 18px; cursor: default; color: #bbbbbb; font-weight: bold; }
div.jqi .jqistate { background-color: #fff; }
div.jqi .jqititle { padding: 5px 10px; font-size: 16px; line-height: 20px; border-bottom: solid 1px #eee; }
div.jqi .jqimessage { padding: 10px; line-height: 20px; color: #444; overflow: auto; }
div.jqi .jqibuttonshide { display: none; }
div.jqi .jqibuttons { text-align: right; margin: 0 -7px -7px -7px; border-top: solid 1px #e4e4e4; background-color: #f4f4f4; border-radius: 0 0 6px 6px; }
div.jqi .jqibuttons button { margin: 0; padding: 15px 20px; background-color: transparent; border: none; border-left: solid 1px #e4e4e4; color: #777; font-weight: bold; font-size: 12px; }
div.jqi .jqibuttons button.jqidefaultbutton { color: #489afe; }
div.jqi .jqibuttons button:hover, div.jqi .jqibuttons button:focus { color: #287ade; outline: none; }
div.jqi .jqibuttons button[disabled] { color: #aaa; }
.jqiwarning .jqi .jqibuttons { background-color: #b95656; }
div.jqi .jqiparentstate::after { content: ''; position: absolute; top: 0; left: 0; bottom: 0; right: 0; background-color: #777; opacity: 0.6; border-radius: 6px; }
div.jqi .jqisubstate { position: absolute; top: 0; left: 20%; width: 60%; padding: 7px; border: solid 1px #eee; border-top: none; border-radius: 0 0 6px 6px; }
div.jqi .jqisubstate .jqibuttons button { padding: 10px 18px; }
.jqi .jqiarrow { position: absolute; height: 0; width: 0; line-height: 0; font-size: 0; border: solid 10px transparent; }
.jqi .jqiarrowtl { left: 10px; top: -20px; border-bottom-color: #fff; }
.jqi .jqiarrowtc { left: 50%; top: -20px; border-bottom-color: #fff; margin-left: -10px; }
.jqi .jqiarrowtr { right: 10px; top: -20px; border-bottom-color: #fff; }
.jqi .jqiarrowbl { left: 10px; bottom: -20px; border-top-color: #fff; }
.jqi .jqiarrowbc { left: 50%; bottom: -20px; border-top-color: #fff; margin-left: -10px; }
.jqi .jqiarrowbr { right: 10px; bottom: -20px; border-top-color: #fff; }
.jqi .jqiarrowlt { left: -20px; top: 10px; border-right-color: #fff; }
.jqi .jqiarrowlm { left: -20px; top: 50%; border-right-color: #fff; margin-top: -10px; }
.jqi .jqiarrowlb { left: -20px; bottom: 10px; border-right-color: #fff; }
.jqi .jqiarrowrt { right: -20px; top: 10px; border-left-color: #fff; }
.jqi .jqiarrowrm { right: -20px; top: 50%; border-left-color: #fff; margin-top: -10px; }
.jqi .jqiarrowrb { right: -20px; bottom: 10px; border-left-color: #fff; }

/* ==========================================================================
   INTEGRAÇÃO E SELEÇÃO DE AJUSTES MODERNOS (SAAS FINETUNING)
   ========================================================================== */

/* --- 1. Ajustes de Tabelas e Remoção de Linhas Verticais --- */
.tborder td[class^="trow"] {
    border-top: none !important;
    border-left: none !important;
    border-right: none !important;
    border-bottom: 1px solid #f1f5f9 !important;
    padding: 14px 16px !important;
}

/* Ocultação permanente das lendas obsoletas de envelopes */
.thread_legend, table + br + .thread_legend, #content > table:last-of-type {
    display: none !important;
}

/* --- 2. Otimização de Botões de Ação (Unificados) --- */
#content a.button, #content button, #content input.button,
.trow1 input.button, .tfoot input.button, .postbit_buttons > a {
    background: #3498db !important; /* Azul Readysoft */
    color: #ffffff !important;
    border: none !important;
    border-radius: 6px !important; /* Cantos arredondados modernos */
    padding: 8px 16px !important;
    font-weight: 600 !important;
    font-size: 13px !important;
    cursor: pointer;
    text-decoration: none !important;
    display: inline-block;
    box-shadow: 0 1px 2px rgba(0,0,0,0.05);
    transition: background-color 0.15s ease;
}

#content a.button:hover, #content button:hover, #content input.button:hover, .postbit_buttons > a:hover {
    background: #2c80c9 !important; /* Azul escuro no hover */
}

/* --- 3. Caixa do Autor Modernizada (Showthread) --- */
.post.classic .post_author {
    background: #f8fafc !important;
    border: 1px solid #e2e8f0 !important;
    border-radius: 6px !important;
    padding: 12px !important;
}

.post .post_author div.author_avatar img {
    border: 1px solid #e2e8f0 !important;
    border-radius: 6px !important;
    padding: 4px !important;
    box-shadow: 0 1px 2px rgba(0,0,0,0.05);
}

.post.classic .post_author div.author_statistics {
    border-top: 1px dotted #cbd5e1 !important;
    color: #64748b !important;
}
