Ir para o conteúdo

MediaWiki:Common.css: mudanças entre as edições

De Guia Galáctico
Sem resumo de edição
Sem resumo de edição
Linha 1: Linha 1:
/* ==========================================================================
<!DOCTYPE html>
  GUIA GALÁCTICO — MediaWiki:Common.css
<html lang="pt-BR">
  Tokens de design + componentes de conteúdo (infoboxes, página inicial).
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>Guia Galáctico — prévia do estilo Vector 2022</title>
<style>/*!
* =============================================================================
GUIA GALÁCTICO — MediaWiki:Vector-2022.css
* =============================================================================
*
*  Estilo personalizado para a skin Vector 2022.
*
*  Conceito: "caderno de campo do xenobiólogo". Papel claro com o fundo
*  glífico da marca, cartões flutuando sobre ele, e o azul Spore
*  (extraído do brand toolkit) como cor condutora. Cada tipo de infobox
*  ganha uma cor de espécie própria.
*
*  Convenções:
*  - Todas as variáveis usam o prefixo --gg-.
*  - Nada depende de JavaScript.
*  - Cor nunca é o único portador de significado.
*  - Contraste mínimo 4.5:1 para texto; 3:1 para bordas e ícones.
*  - Tema escuro automático + respeito ao seletor de aparência do MediaWiki.
*  - Movimento sempre atrás de prefers-reduced-motion.
*
*  Manutenção:
*  - Para trocar a fonte display de todo o site, mexa só em --gg-fonte-display.
*  - Para trocar a cor de um tipo de infobox, mexa só em --gg-acento na regra
*    .gg-infobox-<tipo>.
*  - Os caminhos url() são absolutos a partir da raiz do domínio de propósito:
*    o CSS do site é servido por load.php, então caminhos relativos quebram.
* =============================================================================
*/


  Vive em Common.css (e não em Vector-2022.css) porque isto é CONTEÚDO:
  precisa funcionar no Vector 2022, no Minerva (mobile), no editor visual
  e na pré-visualização. O CSS do skin fica no outro arquivo.


  Modo noturno: MediaWiki 1.43+ marca <html> com .skin-theme-clientpref-night
/* =============================================================================
  (escolha explícita) ou .skin-theme-clientpref-os (segue o sistema).
* 1. FONTES
  Os dois casos estão cobertos abaixo.
*  Remova este bloco se ele já estiver em MediaWiki:Common.css.
  ========================================================================== */
* ========================================================================== */
 
/* --------------------------------------------------------------------------
  0. FONTES
  Servidas localmente. Atkinson Next e Mono são variáveis (200–800);
  SPORE tem três instâncias estáticas: 300, 400 e 700.
  -------------------------------------------------------------------------- */


@font-face {
@font-face {
Linha 33: Linha 55:
font-display: swap;
font-display: swap;
}
}
/* NOTA: removi os dois blocos com font-style: italic apontando para o MESMO
  arquivo dos normais. Declarar um itálico que na verdade é o romano faz o
  navegador confiar nele e desligar a síntese oblíqua — resultado: <em> e
  ''ênfase'' deixam de ter QUALQUER marca visual. Sem o bloco, o navegador
  sintetiza a inclinação e a ênfase volta a ser perceptível.
  Se você tiver os arquivos itálicos de verdade (a família Next tem), é só
  readicionar apontando para AtkinsonHyperlegibleNextItalic.woff2. */


@font-face {
@font-face {
Linha 66: Linha 80:
}
}


/* --------------------------------------------------------------------------
 
  1. TOKENS — tema claro
/* =============================================================================
  -------------------------------------------------------------------------- */
*  2. TOKENS — TEMA CLARO
* ========================================================================== */


:root {
:root {
/* Paleta bruta: ficção científica de capa de livro anos 70, que é
/* --- Marca (amostras tiradas do brand toolkit) --- */
  basicamente o DNA visual do Spore. */
--gg-azul-abissal: #041c3a;
/* PALETA OFICIAL — SPORE ID Toolkit 10.07.08, seção 3.1.
--gg-azul-profundo: #0a2f5c;
  Nada de sépia: a base da marca é branco, cinza-frio e azul-espaço.
--gg-azul: #0b5ea8;
  Os hex abaixo são os do toolkit; os rgb foram convertidos. */
--gg-azul-vivo: #1a8fd0;
--gg-ciano: #4fc3e8;
--gg-roxo: #6d2a86;


/* Primárias */
/* --- Cores de significado (consequências, raridades, avisos) --- */
--gg-branco:        #ffffff;  /* spore white */
--gg-verde: #2e7d4f;
--gg-frio:          #f0f1f4;  /* spore cool */
--gg-vermelho: #b3341f;
--gg-cinza:         #939496;   /* spore neutral */
--gg-ambar: #92610a;
--gg-cinza-escuro: #6d6e70;   /* spore deep grey */
--gg-laranja: #b04d1c;
--gg-espaco-claro:  #4e9dd8;  /* spore light space */
--gg-espaco-medio: #2361a7;   /* spore mid space */
--gg-espaco-fundo: #000112;   /* spore deep space */


/* Acentos — o toolkit é explícito: usar COM PARCIMÔNIA, em apoio à
/* --- Superfícies --- */
  paleta azul e branca. Cada um vem no par claro/escuro da prancha. */
--gg-fundo: #eef3f9;
--gg-verde:         #b1cd49;
--gg-superficie: #ffffff;
--gg-verde-escuro:   #004620;
--gg-superficie-2: #f4f8fc;
--gg-laranja:       #e0932f;
--gg-superficie-3: #e6eef8;
--gg-laranja-escuro: #a42433;
--gg-borda: #cbdbeb;
--gg-roxo:           #ca0088;
--gg-borda-forte: #9db8d3;
--gg-roxo-escuro:   #5b308d;


/* Papéis semânticos — é isto que os componentes consomem. */
/* --- Texto --- */
--gg-superficie:    var(--gg-branco);
--gg-texto: #14202e;
--gg-superficie-2:  var(--gg-frio);
--gg-texto-suave: #48596d;
--gg-texto:         #16202e;
--gg-texto-invertido: #ffffff;
--gg-texto-suave:   var(--gg-cinza-escuro);  /* 4.9:1 sobre branco */
--gg-borda:        #dde1e7;
--gg-borda-forte:   #b6bcc5;
--gg-link:          var(--gg-espaco-medio);  /* 6.5:1 sobre branco */
--gg-link-visitado: var(--gg-roxo-escuro);    /* 8.0:1 */
--gg-link-novo:    var(--gg-laranja-escuro); /* 7.4:1 */
--gg-realce:        var(--gg-laranja);        /* acento decorativo */
--gg-foco:          var(--gg-roxo);          /* anel de foco, 4.3:1 */
--gg-sombra:        rgba(0, 17, 34, 0.14);
--gg-sombra-forte:  rgba(0, 17, 34, 0.26);


/* Cores das trilhas de escolha (Predefinição:Tabela evolutiva).
/* --- Ligações --- */
  Saem dos acentos da marca, não de cores inventadas. */
--gg-link: #0b5ea8;
--gg-cor-verde:   var(--gg-verde-escuro);
--gg-link-hover: #0a2f5c;
--gg-cor-azul:     var(--gg-espaco-medio);
--gg-link-visitado: #6d2a86;
--gg-cor-vermelho: var(--gg-laranja-escuro);
--gg-link-novo: #b3341f;
--gg-cor-neutra:   var(--gg-borda-forte);


/* Superfície espacial — escura nos DOIS temas, de propósito.
/* --- Foco: sempre visível, sempre com 3:1 contra o fundo --- */
  É o "spore deep space gradient" da prancha 3.1, na ordem original:
--gg-foco: #1a8fd0;
  #2070b8 → #233164 → #00000d. */
--gg-foco-sombra: #041c3a;
--gg-espaco-texto:   #f6f6f6;   /* spore text gradient, topo */
--gg-espaco-texto-2: #ced1d4;   /* spore text gradient, base */


/* spore glass pane gradient — #fbfbfb → #e4f0f6 */
/* --- Acento padrão (cada infobox sobrescreve o seu) --- */
--gg-vidro: linear-gradient(180deg, #fbfbfb 0%, #e4f0f6 100%);
--gg-acento: var(--gg-azul);
--gg-acento-fraco: #e6eef8;


--gg-espaco-gradiente:
/* --- Tipografia --- */
radial-gradient(115% 85% at 14% -8%, #2070b8 0%, transparent 58%),
--gg-fonte-texto: 'Atkinson Hyperlegible Next', 'Atkinson Hyperlegible', system-ui, sans-serif;
radial-gradient(85% 75% at 88% 4%, rgba(78, 157, 216, 0.34) 0%, transparent 52%),
--gg-fonte-display: 'SPORE', 'Atkinson Hyperlegible Next', system-ui, sans-serif;
linear-gradient(168deg, #233164 0%, #00000d 100%);
--gg-fonte-mono: 'Atkinson Hyperlegible Mono', ui-monospace, 'Cascadia Code', monospace;


/* Campo de estrelas: pontos posicionados à mão, sem imagem externa. */
/* --- Forma --- */
--gg-estrelas:
--gg-r-1: 6px;
radial-gradient(1.5px 1.5px at 12% 18%, rgba(255,255,255,.9), transparent 60%),
--gg-r-2: 10px;
radial-gradient(1px 1px  at 27% 61%, rgba(255,255,255,.7), transparent 60%),
--gg-r-3: 16px;
radial-gradient(1px 1px  at 41% 12%, rgba(255,255,255,.8), transparent 60%),
--gg-r-pilula: 999px;
radial-gradient(2px 2px  at 55% 44%, rgba(246,246,246,.9), transparent 60%),
radial-gradient(1px 1px  at 68% 76%, rgba(255,255,255,.6), transparent 60%),
radial-gradient(1.5px 1.5px at 79% 27%, rgba(200,230,255,.85), transparent 60%),
radial-gradient(1px 1px  at 91% 55%, rgba(255,255,255,.7), transparent 60%),
radial-gradient(1px 1px  at 6% 84%,  rgba(255,255,255,.55), transparent 60%),
radial-gradient(1px 1px  at 47% 92%, rgba(255,255,255,.65), transparent 60%);


--gg-raio:   14px;
/* --- Profundidade --- */
--gg-raio-g: 22px;
--gg-sombra-1: 0 1px 2px rgba(4, 28, 58, .05), 0 2px 8px rgba(4, 28, 58, .06);
--gg-sombra-2: 0 2px 4px rgba(4, 28, 58, .07), 0 12px 32px rgba(4, 28, 58, .10);


--gg-fonte-titulo: 'SPORE', 'Trebuchet MS', 'Segoe UI', system-ui, sans-serif;
/* --- Fundo glífico --- */
--gg-fonte-texto: 'Atkinson Hyperlegible Next', 'Atkinson Hyperlegible', 'Segoe UI', Verdana, sans-serif;
--gg-glifos-opacidade: .55;
--gg-fonte-mono:   'Atkinson Hyperlegible Mono', ui-monospace, 'Cascadia Code', monospace;
--gg-glifos-filtro: none;
--gg-glifos-tamanho: 420px;


/* Caixa alta precisa de mais entreletra quanto menor o corpo.
/* --- Ritmo --- */
  Três degraus cobrem tudo que a wiki usa. */
--gg-transicao: 140ms ease;
--gg-tracking-display: 0.005em;  /* títulos grandes */
--gg-tracking-titulo:  0.03em;    /* seções */
--gg-tracking-rotulo: 0.08em;   /* rótulos miúdos */
}
}


/* --------------------------------------------------------------------------
  2. TOKENS — tema noturno
  Duplicado de propósito: são dois seletores diferentes e CSS não tem
  como agrupá-los sem pré-processador. Editou um, edite o outro.
  -------------------------------------------------------------------------- */


@media screen {
/* =============================================================================
html.skin-theme-clientpref-night {
*  3. TOKENS — TEMA ESCURO
--gg-superficie:   #0e1723;
*
--gg-superficie-2: #17222f;
*  Dois gatilhos:
--gg-texto:         #e9eef3;
*  a) o seletor de aparência do MediaWiki (skin-theme-clientpref-night);
--gg-texto-suave:   #a3aeba;
*  b) a preferência do sistema, a menos que o leitor tenha fixado o modo claro.
--gg-borda:         #25313f;
*  Assim funciona com ou sem o modo noturno instalado no wiki.
--gg-borda-forte:   #3a4959;
* ========================================================================== */
--gg-link:         #7cc0ef;   /* spore light space clareado, 7.9:1 */
 
--gg-link-visitado: #c6a2e8;
html.skin-theme-clientpref-night {
--gg-link-novo:     #ff9a8a;
--gg-azul-abissal: #06101f;
--gg-realce:       var(--gg-laranja);
--gg-azul-profundo: #0d2440;
--gg-foco:         #ff5cc0;   /* acento roxo clareado, 5.1:1 */
--gg-azul: #6ec1f0;
--gg-sombra:       rgba(0, 0, 0, 0.45);
--gg-azul-vivo: #8fd4fa;
--gg-sombra-forte: rgba(0, 0, 0, 0.62);
--gg-ciano: #a5e4f7;
--gg-cor-verde:     var(--gg-verde);
--gg-roxo: #c79ce0;
--gg-cor-azul:     var(--gg-espaco-claro);
 
--gg-cor-vermelho: #ff8a7a;
--gg-verde: #74d19a;
--gg-cor-neutra:   var(--gg-borda-forte);
--gg-vermelho: #ff9d86;
--gg-vidro: linear-gradient(180deg, #1a2634 0%, #101d2b 100%);
--gg-ambar: #e2b565;
--gg-laranja: #f0a072;
 
--gg-fundo: #0a1220;
--gg-superficie: #111c2e;
--gg-superficie-2: #17243a;
--gg-superficie-3: #1e2f4a;
--gg-borda: #2c405f;
--gg-borda-forte: #46608a;
 
--gg-texto: #e7eef8;
--gg-texto-suave: #a9bad0;
--gg-texto-invertido: #06101f;
 
--gg-link: #6ec1f0;
--gg-link-hover: #a5e4f7;
--gg-link-visitado: #c79ce0;
--gg-link-novo: #ff9d86;
 
--gg-foco: #8fd4fa;
--gg-foco-sombra: #06101f;
 
--gg-acento: #6ec1f0;
--gg-acento-fraco: #1e2f4a;
 
--gg-sombra-1: 0 1px 2px rgba(0, 0, 0, .4), 0 2px 8px rgba(0, 0, 0, .3);
--gg-sombra-2: 0 2px 4px rgba(0, 0, 0, .45), 0 12px 32px rgba(0, 0, 0, .4);
 
/* O fundo glífico é claro: invertemos e apagamos bastante. */
--gg-glifos-opacidade: .07;
--gg-glifos-filtro: invert(1);
}
 
@media (prefers-color-scheme: dark) {
html:not(.skin-theme-clientpref-day) {
--gg-azul-abissal: #06101f;
--gg-azul-profundo: #0d2440;
--gg-azul: #6ec1f0;
--gg-azul-vivo: #8fd4fa;
--gg-ciano: #a5e4f7;
--gg-roxo: #c79ce0;
 
--gg-verde: #74d19a;
--gg-vermelho: #ff9d86;
--gg-ambar: #e2b565;
--gg-laranja: #f0a072;
 
--gg-fundo: #0a1220;
--gg-superficie: #111c2e;
--gg-superficie-2: #17243a;
--gg-superficie-3: #1e2f4a;
--gg-borda: #2c405f;
--gg-borda-forte: #46608a;
 
--gg-texto: #e7eef8;
--gg-texto-suave: #a9bad0;
--gg-texto-invertido: #06101f;
 
--gg-link: #6ec1f0;
--gg-link-hover: #a5e4f7;
--gg-link-visitado: #c79ce0;
--gg-link-novo: #ff9d86;
 
--gg-foco: #8fd4fa;
--gg-foco-sombra: #06101f;
 
--gg-acento: #6ec1f0;
--gg-acento-fraco: #1e2f4a;
 
--gg-sombra-1: 0 1px 2px rgba(0, 0, 0, .4), 0 2px 8px rgba(0, 0, 0, .3);
--gg-sombra-2: 0 2px 4px rgba(0, 0, 0, .45), 0 12px 32px rgba(0, 0, 0, .4);
 
--gg-glifos-opacidade: .07;
--gg-glifos-filtro: invert(1);
}
}
}
}


@media screen and (prefers-color-scheme: dark) {
 
html.skin-theme-clientpref-os {
/* =============================================================================
--gg-superficie:   #0e1723;
*  4. PONTE COM OS TOKENS DO CODEX
--gg-superficie-2: #17222f;
*  Faz os componentes que ainda não estilizamos herdarem a paleta sozinhos.
--gg-texto:         #e9eef3;
* ========================================================================== */
--gg-texto-suave:   #a3aeba;
 
--gg-borda:         #25313f;
:root,
--gg-borda-forte:   #3a4959;
html.skin-theme-clientpref-night {
--gg-link:         #7cc0ef;   /* spore light space clareado, 7.9:1 */
--background-color-base: var(--gg-superficie);
--gg-link-visitado: #c6a2e8;
--background-color-neutral-subtle: var(--gg-superficie-2);
--gg-link-novo:     #ff9a8a;
--background-color-interactive-subtle: var(--gg-superficie-2);
--gg-realce:       var(--gg-laranja);
--background-color-interactive: var(--gg-superficie-3);
--gg-foco:          #ff5cc0;   /* acento roxo clareado, 5.1:1 */
--color-base: var(--gg-texto);
--gg-sombra:       rgba(0, 0, 0, 0.45);
--color-emphasized: var(--gg-texto);
--gg-sombra-fortergba(0, 0, 0, 0.62);
--color-subtle: var(--gg-texto-suave);
--gg-cor-verde:    var(--gg-verde);
--color-progressive: var(--gg-link);
--gg-cor-azul:     var(--gg-espaco-claro);
--color-progressive--hover: var(--gg-link-hover);
--gg-cor-vermelho: #ff8a7a;
--color-visited: var(--gg-link-visitado);
--gg-cor-neutra:   var(--gg-borda-forte);
--color-destructive: var(--gg-link-novo);
--gg-vidro: linear-gradient(180deg, #1a2634 0%, #101d2b 100%);
--border-color-base: var(--gg-borda-forte);
}
--border-color-subtle: var(--gg-borda);
--border-color-muted: var(--gg-borda);
--border-color-interactive: var(--gg-borda-forte);
}
 
 
/* =============================================================================
*  5. BASE — PÁGINA, FUNDO, TIPOGRAFIA
* ========================================================================== */
 
html,
body {
background-color: var(--gg-fundo);
color: var(--gg-texto);
}
 
body {
font-family: var(--gg-fonte-texto);
font-size: 1rem;
line-height: 1.65;
-webkit-font-smoothing: antialiased;
text-rendering: optimizeLegibility;
}
 
/*
* Camada de glifos. Fica atrás de tudo, em position: fixed, para que o
* padrão não role junto com o texto e não vire ruído durante a leitura.
*/
body::before {
content: "";
position: fixed;
inset: 0;
z-index: -1;
pointer-events: none;
background-image: url('/images/background.jpg');
background-repeat: repeat;
background-size: var(--gg-glifos-tamanho) auto;
opacity: var(--gg-glifos-opacidade);
filter: var(--gg-glifos-filtro);
}
 
/* Foco visível e generoso — vale para tudo, inclusive links dentro do texto. */
:focus-visible {
outline: 3px solid var(--gg-foco);
outline-offset: 2px;
border-radius: 3px;
box-shadow: 0 0 0 5px color-mix(in srgb, var(--gg-foco-sombra) 22%, transparent);
}
 
::selection {
background: color-mix(in srgb, var(--gg-azul-vivo) 30%, transparent);
color: var(--gg-texto);
}
 
/* --- Ligações --- *
* Sublinhado mantido: em texto corrido ele é o único sinal não cromático
* de que algo é clicável.
  */
.mw-parser-output a:not(.image):not(.mw-file-description) {
color: var(--gg-link);
text-decoration: underline;
text-decoration-thickness: 1px;
text-underline-offset: .18em;
text-decoration-color: color-mix(in srgb, currentColor 45%, transparent);
transition: color var(--gg-transicao), text-decoration-color var(--gg-transicao);
}
 
.mw-parser-output a:not(.image):not(.mw-file-description):hover {
color: var(--gg-link-hover);
text-decoration-color: currentColor;
text-decoration-thickness: 2px;
}
 
.mw-parser-output a:visited:not(.image):not(.mw-file-description) {
color: var(--gg-link-visitado);
}
 
.mw-parser-output a.new,
.mw-parser-output a.new:visited {
color: var(--gg-link-novo);
}
 
.mw-parser-output a.external {
background-position: right center;
padding-right: .95em;
}
 
 
/* --- Títulos --- *
* A fonte SPORE entra só nos títulos grandes. Corpo de texto e títulos
* pequenos ficam com a Atkinson, que foi desenhada para legibilidade.
*/
.mw-body h1,
.mw-body h2,
.mw-body h3,
.mw-body h4,
.mw-body h5,
.mw-body h6,
.mw-heading {
font-family: var(--gg-fonte-texto);
color: var(--gg-texto);
line-height: 1.25;
scroll-margin-top: 4.5rem;
}
}


/* --------------------------------------------------------------------------
.mw-body h1,
  3. INFOBOX
.mw-body-header h1,
  Casa com Predefinição:Infobox — .gg-infobox e filhas.
#firstHeading {
  -------------------------------------------------------------------------- */
font-family: var(--gg-fonte-display);
font-weight: 400;
font-size: 2.15rem;
letter-spacing: .01em;
border-bottom: 0;
color: var(--gg-azul-profundo);
}


.gg-infobox {
html.skin-theme-clientpref-night #firstHeading {
float: right;
clear: right;
width: 22.5rem;
max-width: 100%;
margin: 0 0 1.25rem 1.5rem;
border: 1px solid var(--gg-borda);
border-radius: var(--gg-raio-g);
border-collapse: separate;
border-spacing: 0;
overflow: hidden;  /* segura os cantos arredondados no cabeçalho */
background: var(--gg-superficie);
color: var(--gg-texto);
color: var(--gg-texto);
box-shadow: 0 10px 28px -14px var(--gg-sombra-forte);
font-size: 0.875rem;
line-height: 1.5;
}
}


.gg-infobox-titulo {
/* h2 recebe uma régua com um "cromossomo" de acento à esquerda. */
caption-side: top;
.mw-body h2,
padding: 0.9rem 1.1rem 0.85rem;
.mw-heading2 {
background-color: var(--gg-espaco-fundo);
font-family: var(--gg-fonte-texto);
background-image: var(--gg-espaco-gradiente);
font-weight: 700;
color: var(--gg-espaco-texto);
font-size: 1.5rem;
font-family: var(--gg-fonte-titulo);
border-bottom: 2px solid var(--gg-borda);
font-size: 1.25rem;
padding-bottom: .35rem;
margin-top: 2.2rem;
position: relative;
}
 
.mw-body h2::after,
.mw-heading2::after {
content: "";
position: absolute;
left: 0;
bottom: -2px;
width: 2.75rem;
height: 2px;
background: var(--gg-azul-vivo);
border-radius: var(--gg-r-pilula);
}
 
.mw-body h3,
.mw-heading3 {
font-weight: 700;
font-size: 1.2rem;
margin-top: 1.6rem;
}
 
.mw-body h4,
.mw-heading4 {
font-weight: 700;
font-size: 1.05rem;
color: var(--gg-texto-suave);
}
 
.mw-parser-output p {
margin: .75em 0;
max-width: 78ch; /* medida de leitura confortável */
}
 
.mw-parser-output b,
.mw-parser-output strong {
font-weight: 700;
font-weight: 700;
line-height: 1.3;
text-align: left;
text-transform: uppercase;
letter-spacing: var(--gg-tracking-titulo);
text-wrap: balance;
}
}


.gg-infobox-subtitulo {
/* --- Código --- */
padding: 0.55rem 1.1rem;
code,
kbd,
samp,
pre,
.mw-code {
font-family: var(--gg-fonte-mono);
font-size: .92em;
}
 
code {
background: var(--gg-superficie-2);
background: var(--gg-superficie-2);
border-bottom: 1px solid var(--gg-borda);
border: 1px solid var(--gg-borda);
color: var(--gg-texto-suave);
border-radius: var(--gg-r-1);
font-size: 0.8125rem;
padding: .1em .35em;
font-style: italic;
color: var(--gg-azul-profundo);
text-align: left;
}
 
html.skin-theme-clientpref-night code {
color: var(--gg-ciano);
}
}


.gg-infobox-imagem {
pre,
padding: 0;
.mw-code {
text-align: center;
background: var(--gg-superficie-2);
background: var(--gg-superficie-2);
border-bottom: 1px solid var(--gg-borda);
border: 1px solid var(--gg-borda);
border-left: 4px solid var(--gg-azul-vivo);
border-radius: var(--gg-r-2);
padding: 1rem;
overflow-x: auto;
line-height: 1.55;
}
}


.gg-infobox-imagem img {
kbd {
display: block;
background: var(--gg-superficie);
width: 100%;
border: 1px solid var(--gg-borda-forte);
height: auto;
border-bottom-width: 3px;
border-radius: var(--gg-r-1);
padding: .1em .45em;
}
}


.gg-infobox-legenda {
blockquote {
padding: 0.5rem 1.1rem 0.6rem;
border-left: 4px solid var(--gg-azul-vivo);
background: var(--gg-superficie-2);
margin: 1.25rem 0;
padding: .85rem 1.15rem;
border-radius: 0 var(--gg-r-2) var(--gg-r-2) 0;
color: var(--gg-texto-suave);
color: var(--gg-texto-suave);
font-size: 0.78125rem;
font-style: normal;
line-height: 1.4;
}
text-align: left;
 
hr {
border: 0;
height: 1px;
background: linear-gradient(90deg, var(--gg-borda-forte), transparent);
margin: 2rem 0;
}
 
 
/* =============================================================================
*  6. ESTRUTURA DA SKIN — CONTÊINER, CABEÇALHO, COLUNAS, RODAPÉ
* ========================================================================== */
 
/* O contêiner vira um cartão flutuando sobre os glifos. */
.mw-page-container {
background: transparent;
max-width: 1600px;
}
 
.mw-content-container,
.mw-body,
.mw-body-content,
#content.mw-body {
background: var(--gg-superficie);
color: var(--gg-texto);
border: 1px solid var(--gg-borda);
border-radius: var(--gg-r-3);
box-shadow: var(--gg-sombra-1);
}
 
/* Evita cartão-dentro-de-cartão quando os dois seletores coincidem. */
.mw-content-container .mw-body {
border: 0;
border-radius: 0;
box-shadow: none;
background: transparent;
}
}


.gg-infobox-rotulo {
#content.mw-body,
width: 38%;
.vector-body {
padding: 0.55rem 0.6rem 0.55rem 1.1rem;
padding: 1.75rem 2rem 2.5rem;
color: var(--gg-texto-suave);
font-weight: 700;
text-align: left;
vertical-align: top;
hyphens: auto;
}
}


.gg-infobox-dado {
/* --- Cabeçalho --- */
padding: 0.55rem 1.1rem 0.55rem 0.6rem;
.vector-header-container .vector-header {
vertical-align: top;
background: transparent;
padding-block: .5rem;
}
}


/* Zebrado por par rótulo/dado — sem tocar no HTML da predefinição. */
.vector-sticky-header {
.gg-infobox tr:nth-of-type(odd) .gg-infobox-rotulo,
background: color-mix(in srgb, var(--gg-superficie) 88%, transparent);
.gg-infobox tr:nth-of-type(odd) .gg-infobox-dado {
-webkit-backdrop-filter: blur(10px) saturate(1.3);
background: color-mix(in srgb, var(--gg-superficie-2) 55%, transparent);
backdrop-filter: blur(10px) saturate(1.3);
border-bottom: 1px solid var(--gg-borda);
box-shadow: var(--gg-sombra-1);
}
}


.gg-infobox-dado ul,
.mw-logo-wordmark {
.gg-infobox-dado ol {
max-height: 2.1em;
margin: 0;
padding-left: 1.1rem;
}
}


.gg-infobox-rodape {
.mw-logo-tagline {
padding: 0.6rem 1.1rem 0.75rem;
font-family: var(--gg-fonte-texto);
border-top: 2px solid var(--gg-espaco-claro);
background: var(--gg-superficie-2);
color: var(--gg-texto-suave);
color: var(--gg-texto-suave);
font-size: 0.78125rem;
font-size: .8rem;
text-align: left;
letter-spacing: .02em;
}
 
/* --- Busca --- */
.vector-search-box .cdx-text-input__input,
.vector-search-box input[type="search"] {
background: var(--gg-superficie);
border: 1px solid var(--gg-borda-forte);
border-radius: var(--gg-r-pilula);
color: var(--gg-texto);
font-family: var(--gg-fonte-texto);
padding-left: 2.4em;
transition: border-color var(--gg-transicao), box-shadow var(--gg-transicao);
}
}


/* Em telas estreitas a infobox vira bloco no fluxo — nada de coluna de 3
.vector-search-box .cdx-text-input__input:hover {
  caracteres de largura ao lado dela. */
border-color: var(--gg-azul-vivo);
@media (max-width: 45rem) {
.gg-infobox {
float: none;
width: auto;
margin: 0 0 1.5rem;
}
}
}


/* --------------------------------------------------------------------------
.vector-search-box .cdx-text-input__input:focus {
  4. PÁGINA INICIAL — .gg-inicio
border-color: var(--gg-azul-vivo);
  Painel cósmico: escuro nos dois temas. É a peça de identidade da wiki.
box-shadow: 0 0 0 3px color-mix(in srgb, var(--gg-azul-vivo) 28%, transparent);
  -------------------------------------------------------------------------- */
outline: 0;
}


.gg-inicio {
.cdx-menu {
position: relative;
background: var(--gg-superficie);
isolation: isolate;
border: 1px solid var(--gg-borda);
margin: 0 0 2rem;
border-radius: var(--gg-r-2);
padding: clamp(1.75rem, 5vw, 3.5rem) clamp(1.25rem, 4vw, 3rem) clamp(1.5rem, 4vw, 2.5rem);
box-shadow: var(--gg-sombra-2);
border-radius: var(--gg-raio-g);
background-color: var(--gg-espaco-fundo);
background-image: var(--gg-espaco-gradiente);
color: var(--gg-espaco-texto);
overflow: hidden;
overflow: hidden;
}
}


/* Camada de estrelas separada, para poder animar sem repintar o resto. */
/* --- Colunas laterais (menu principal, sumário, ferramentas) --- */
.gg-inicio::before {
.vector-column-start,
content: '';
.vector-column-end {
position: absolute;
color: var(--gg-texto);
inset: 0;
}
z-index: -1;
 
background-image: var(--gg-estrelas);
.vector-main-menu-container .vector-main-menu,
background-size: 340px 340px;
.vector-page-tools,
opacity: 0.85;
.vector-toc,
pointer-events: none;
.vector-appearance,
animation: gg-deriva 240s linear infinite;
#vector-main-menu-dropdown .vector-dropdown-content,
.vector-dropdown-content {
background: var(--gg-superficie);
border: 1px solid var(--gg-borda);
border-radius: var(--gg-r-2);
box-shadow: var(--gg-sombra-1);
padding: .6rem .5rem;
}
 
.vector-pinnable-header,
.vector-menu-heading,
.vector-toc-pinnable-header {
font-family: var(--gg-fonte-texto);
font-weight: 700;
font-size: .78rem;
letter-spacing: .07em;
text-transform: uppercase;
color: var(--gg-texto-suave);
}
 
.vector-menu-content-list li a,
.vector-toc-link,
.vector-page-tools .mw-list-item a {
color: var(--gg-link);
border-radius: var(--gg-r-1);
padding-inline: .5rem;
text-decoration: none;
transition: background-color var(--gg-transicao), color var(--gg-transicao);
}
}


@keyframes gg-deriva {
.vector-menu-content-list li a:hover,
to { background-position: 340px 170px; }
.vector-toc-link:hover,
.vector-page-tools .mw-list-item a:hover {
background: var(--gg-superficie-3);
color: var(--gg-link-hover);
text-decoration: underline;
}
}


@media (prefers-reduced-motion: reduce) {
/* Item ativo do sumário: barra de acento + peso, não só cor. */
.gg-inicio::before { animation: none; }
.vector-toc-list-item-active > .vector-toc-link {
background: var(--gg-acento-fraco);
font-weight: 700;
box-shadow: inset 3px 0 0 var(--gg-azul-vivo);
}
}


.gg-inicio .mw-heading1,
/* --- Abas de página (Artigo / Discussão / Ler / Editar / Histórico) --- */
.gg-inicio > h1 {
.vector-menu-tabs .mw-list-item a,
margin: 0;
.vector-menu-tabs-legacy li a {
background: transparent;
border: 0;
border: 0;
padding: 0;
border-radius: var(--gg-r-pilula) var(--gg-r-pilula) 0 0;
background: none;
color: var(--gg-link);
font-weight: 500;
transition: background-color var(--gg-transicao), box-shadow var(--gg-transicao);
}
 
.vector-menu-tabs .mw-list-item a:hover {
background: var(--gg-superficie-3);
}
}


.gg-inicio h1 {
.vector-menu-tabs .selected a,
margin: 0;
.vector-menu-tabs .selected a:visited {
border: 0;
color: var(--gg-texto);
padding: 0;
color: var(--gg-espaco-texto);
font-family: var(--gg-fonte-titulo);
font-size: clamp(2rem, 5.5vw, 3.25rem);
font-weight: 700;
font-weight: 700;
line-height: 1.05;
background: var(--gg-superficie-2);
text-transform: uppercase;
box-shadow: inset 0 -3px 0 var(--gg-azul-vivo);
letter-spacing: var(--gg-tracking-display);
}
text-wrap: balance;
 
/* --- Botões --- */
.cdx-button:not(.cdx-button--weight-quiet) {
border-radius: var(--gg-r-pilula);
font-family: var(--gg-fonte-texto);
font-weight: 500;
border-color: var(--gg-borda-forte);
transition: transform var(--gg-transicao), box-shadow var(--gg-transicao);
}
}


/* PREMIUM HEADLINE — prancha 4.2 do toolkit, em duas camadas:
.cdx-button--action-progressive.cdx-button--weight-primary {
  preenchimento com o gradiente espacial e contorno claro por baixo
background: var(--gg-azul);
  (paint-order faz o traço ir para trás do preenchimento).
border-color: var(--gg-azul);
  Dentro de @supports porque color:transparent sem background-clip
color: var(--gg-texto-invertido);
  apagaria o título. */
@supports ((-webkit-background-clip: text) or (background-clip: text)) {
.gg-inicio h1 {
background-image: linear-gradient(178deg, #a9d6ff 0%, #4e9dd8 45%, #2361a7 100%);
-webkit-background-clip: text;
background-clip: text;
color: transparent;
-webkit-text-fill-color: transparent;
-webkit-text-stroke: 0.055em rgba(246, 246, 246, 0.92);
paint-order: stroke fill;
}
}
}


/* Alto contraste do sistema: devolve o texto sólido. */
html.skin-theme-clientpref-night .cdx-button--action-progressive.cdx-button--weight-primary {
@media (forced-colors: active) {
color: var(--gg-azul-abissal);
.gg-inicio h1 {
-webkit-text-fill-color: CanvasText;
-webkit-text-stroke: 0;
background-image: none;
color: CanvasText;
}
}
}


.gg-subtitulo {
.cdx-button:not(.cdx-button--weight-quiet):hover {
max-width: 46ch;
transform: translateY(-1px);
margin: 0.75rem 0 0;
box-shadow: var(--gg-sombra-1);
color: var(--gg-espaco-texto-2);
font-size: clamp(1rem, 2.2vw, 1.15rem);
line-height: 1.5;
text-wrap: pretty;
}
}


.gg-subtitulo b,
.cdx-button:active {
.gg-subtitulo strong {
transform: translateY(0);
color: var(--gg-verde);
font-weight: 700;
}
}


/* -- Contadores ------------------------------------------------------------ */
/* --- Rodapé --- */
.mw-footer,
.mw-footer-container {
background: transparent;
color: var(--gg-texto-suave);
border-top: 0;
}


.gg-stats {
.mw-footer-container {
display: grid;
margin-top: 1.5rem;
grid-template-columns: repeat(auto-fit, minmax(9.5rem, 1fr));
padding-top: 1.5rem;
gap: 0.75rem;
border-top: 1px solid var(--gg-borda);
margin: 2rem 0 2.5rem;
}
}


.gg-stat {
.mw-footer li,
padding: 1rem 1.1rem 0.9rem;
.mw-footer a {
border: 1px solid rgba(255, 255, 255, 0.14);
color: var(--gg-texto-suave);
border-radius: var(--gg-raio);
background: rgba(255, 255, 255, 0.06);
backdrop-filter: blur(2px);
}
}


.gg-stat-numero {
.mw-footer a:hover {
display: block;
color: var(--gg-link-hover);
font-family: var(--gg-fonte-titulo);
font-size: clamp(1.75rem, 4vw, 2.4rem);
font-weight: 700;
font-variant-numeric: tabular-nums;
line-height: 1;
/* Enquanto o JS não preenche, o travessão fica discreto. */
color: var(--gg-espaco-texto);
}
}


.gg-stat-acervo        { color: var(--gg-verde); }
.gg-stat-hoje          { color: var(--gg-realce); }
.gg-stat-criadores    { color: var(--gg-espaco-claro); }
.gg-stat-criadores-hoje{ color: #f06fc4; }  /* roxo de acento clareado */


.gg-stat-rotulo {
/* =============================================================================
display: block;
*  7. INFOBOXES — {{Infobox}} e derivadas
margin-top: 0.45rem;
* ========================================================================== */
color: var(--gg-espaco-texto-2);
 
font-family: var(--gg-fonte-titulo);
.gg-infobox {
font-size: 0.875rem;
--gg-acento: var(--gg-azul);
font-weight: 300;
--gg-acento-fraco: #e6eef8;
line-height: 1.35;
 
text-wrap: balance;
float: right;
clear: right;
width: 22.5rem;
max-width: 100%;
margin: 0 0 1.25rem 1.5rem;
border: 1px solid var(--gg-borda);
border-top: 4px solid var(--gg-acento);
border-radius: var(--gg-r-2);
background: var(--gg-superficie);
box-shadow: var(--gg-sombra-1);
border-collapse: separate;
border-spacing: 0;
overflow: hidden;
font-size: .92rem;
line-height: 1.5;
}
}


/* -- Seções: cabeçalho + grade de atalhos ---------------------------------- */
.gg-infobox-titulo {
font-family: var(--gg-fonte-display);
font-weight: 400;
font-size: 1.35rem;
line-height: 1.2;
text-align: left;
padding: .85rem 1rem .3rem;
color: var(--gg-acento);
background: var(--gg-acento-fraco);
caption-side: top;
}


.gg-inicio .mw-heading2,
html.skin-theme-clientpref-night .gg-infobox-titulo {
.gg-inicio > h2 {
color: var(--gg-texto);
margin: 0;
border: 0;
padding: 0.7rem 1.1rem;
border-radius: var(--gg-raio) var(--gg-raio) 0 0;
background: rgba(255, 255, 255, 0.08);
border-bottom: 2px solid var(--gg-espaco-claro);
}
}


.gg-inicio h2 {
.gg-infobox-subtitulo {
margin: 0;
padding: 0 1rem .8rem;
border: 0;
background: var(--gg-acento-fraco);
padding: 0;
color: var(--gg-texto-suave);
background: none;
font-size: .9em;
color: var(--gg-espaco-texto);
font-family: var(--gg-fonte-titulo);
font-size: 1.25rem;
font-weight: 400;
line-height: 1.3;
text-transform: uppercase;
letter-spacing: var(--gg-tracking-titulo);
}
}


.gg-inicio h2 a {
.gg-infobox-imagem {
color: inherit;
padding: .9rem 1rem;
text-decoration-color: var(--gg-verde);
text-align: center;
text-decoration-thickness: 2px;
background: var(--gg-superficie-2);
text-underline-offset: 3px;
border-bottom: 1px solid var(--gg-borda);
}
}


.gg-inicio .mw-heading2 + ul,
.gg-infobox-imagem img {
.gg-inicio > h2 + ul {
max-width: 100%;
display: grid;
height: auto;
grid-template-columns: repeat(auto-fill, minmax(13rem, 1fr));
border-radius: var(--gg-r-1);
gap: 0.5rem;
margin: 0 0 1.75rem;
padding: 0.75rem;
list-style: none;
border: 1px solid rgba(255, 255, 255, 0.12);
border-top: 0;
border-radius: 0 0 var(--gg-raio) var(--gg-raio);
background: rgba(255, 255, 255, 0.04);
}
}


.gg-inicio .mw-heading2 + ul li,
.gg-infobox-legenda {
.gg-inicio > h2 + ul li {
margin-top: .5rem;
margin: 0;
font-size: .85em;
color: var(--gg-texto-suave);
line-height: 1.45;
}
}


.gg-inicio .mw-heading2 + ul li a,
.gg-infobox-rotulo {
.gg-inicio > h2 + ul li a {
width: 38%;
display: block;
text-align: left;
padding: 0.6rem 0.85rem;
vertical-align: top;
border: 1px solid rgba(255, 255, 255, 0.1);
font-weight: 700;
border-radius: 10px;
color: var(--gg-texto-suave);
background: rgba(255, 255, 255, 0.05);
padding: .55rem .5rem .55rem 1rem;
color: var(--gg-espaco-texto);
border-bottom: 1px solid var(--gg-borda);
font-family: var(--gg-fonte-titulo);
hyphens: auto;
font-size: 0.9375rem;
font-weight: 400;
line-height: 1.35;
text-decoration: none;
text-wrap: balance;
transition: background-color 140ms ease, border-color 140ms ease, transform 140ms ease;
}
}


.gg-inicio .mw-heading2 + ul li a:hover,
.gg-infobox-dado {
.gg-inicio > h2 + ul li a:hover,
vertical-align: top;
.gg-inicio .mw-heading2 + ul li a:focus-visible,
padding: .55rem 1rem .55rem .5rem;
.gg-inicio > h2 + ul li a:focus-visible {
border-bottom: 1px solid var(--gg-borda);
background: rgba(168, 216, 74, 0.16);
border-color: var(--gg-verde);
transform: translateY(-2px);
}
}


/* Links vermelhos continuam legíveis sobre o fundo escuro. */
/* Zebra suave: ajuda a rastrear a linha em infoboxes longas. */
.gg-inicio a.new,
.gg-infobox tr:nth-child(even) .gg-infobox-rotulo,
.gg-inicio a.new:visited {
.gg-infobox tr:nth-child(even) .gg-infobox-dado {
color: #ff9494;
background: var(--gg-superficie-2);
}
}


@media (prefers-reduced-motion: reduce) {
.gg-infobox-rodape {
.gg-inicio .mw-heading2 + ul li a,
padding: .7rem 1rem;
.gg-inicio > h2 + ul li a { transition: none; }
background: var(--gg-superficie-2);
.gg-inicio .mw-heading2 + ul li a:hover,
border-top: 1px solid var(--gg-borda);
.gg-inicio > h2 + ul li a:hover { transform: none; }
font-size: .85em;
color: var(--gg-texto-suave);
}
}


/* Foco visível sobre fundo escuro precisa de contraste próprio. */
.gg-infobox tr:last-child .gg-infobox-rotulo,
.gg-inicio a:focus-visible {
.gg-infobox tr:last-child .gg-infobox-dado {
outline: 3px solid var(--gg-foco);
border-bottom: 0;
outline-offset: 2px;
}
}


/* --------------------------------------------------------------------------
/* --- Cor de espécie por tipo de infobox --- */
  5. CAIXAS DE AVISO — .gg-esboco, .ambox
.gg-infobox-jogo      { --gg-acento: var(--gg-azul);    --gg-acento-fraco: #e6eef8; }
   -------------------------------------------------------------------------- */
.gg-infobox-estagio    { --gg-acento: var(--gg-verde);    --gg-acento-fraco: #e3f2e9; }
.gg-infobox-criador    { --gg-acento: #0f6f8c;            --gg-acento-fraco: #e0f1f6; }
.gg-infobox-criacao    { --gg-acento: var(--gg-roxo);    --gg-acento-fraco: #f1e6f5; }
.gg-infobox-download  { --gg-acento: #37527a;            --gg-acento-fraco: #e8edf5; }
.gg-infobox-raridade  { --gg-acento: var(--gg-ambar);    --gg-acento-fraco: #f7efdd; }
.gg-infobox-ferramenta { --gg-acento: var(--gg-laranja);  --gg-acento-fraco: #f9e9e0; }
.gg-infobox-arquetipo  { --gg-acento: #4b3fa0;            --gg-acento-fraco: #e9e7f7; }
 
html.skin-theme-clientpref-night .gg-infobox-jogo      { --gg-acento: #6ec1f0; --gg-acento-fraco: #16293f; }
html.skin-theme-clientpref-night .gg-infobox-estagio   { --gg-acento: #74d19a; --gg-acento-fraco: #16301f; }
html.skin-theme-clientpref-night .gg-infobox-criador    { --gg-acento: #6fd0e8; --gg-acento-fraco: #113140; }
html.skin-theme-clientpref-night .gg-infobox-criacao    { --gg-acento: #c79ce0; --gg-acento-fraco: #2b1c39; }
html.skin-theme-clientpref-night .gg-infobox-download  { --gg-acento: #9fb6d8; --gg-acento-fraco: #1a2438; }
html.skin-theme-clientpref-night .gg-infobox-raridade  { --gg-acento: #e2b565; --gg-acento-fraco: #33270f; }
html.skin-theme-clientpref-night .gg-infobox-ferramenta { --gg-acento: #f0a072; --gg-acento-fraco: #35200f; }
html.skin-theme-clientpref-night .gg-infobox-arquetipo  { --gg-acento: #a99cf0; --gg-acento-fraco: #221e3f; }
 
 
/* =============================================================================
*  8. {{Esboço}}
* ========================================================================== */


.gg-esboco,
.gg-esboco {
.mw-parser-output .ambox {
display: flow-root;
position: relative;
clear: both;
margin: 1.75rem 0 1.25rem;
margin: 2rem 0 1rem;
padding: 0.9rem 1.1rem 0.9rem 3.1rem;
padding: .9rem 1.1rem .9rem 3.25rem;
border: 1px solid var(--gg-borda);
border-inline-start: 5px solid var(--gg-realce);
border-radius: var(--gg-raio);
background: var(--gg-superficie-2);
background: var(--gg-superficie-2);
border: 1px dashed var(--gg-borda-forte);
border-radius: var(--gg-r-2);
color: var(--gg-texto-suave);
color: var(--gg-texto-suave);
font-size: 0.9375rem;
font-size: .95rem;
line-height: 1.55;
position: relative;
}
}


/* Um esporo no lugar do ícone: dois gradientes radiais, zero requisições
/* Broto decorativo. Puramente CSS, portanto invisível para leitores de tela. */
  de rede e nada de conteúdo gerado por CSS entrando no acessível. */
.gg-esboco::before {
.gg-esboco::before {
content: '';
content: "";
position: absolute;
position: absolute;
inset-inline-start: 1.05rem;
left: 1.15rem;
top: 1rem;
top: 1.05rem;
width: 1.1rem;
width: .85rem;
height: 1.1rem;
height: .85rem;
border-radius: 50%;
border-radius: 60% 0 60% 60%;
background:
background: var(--gg-verde);
radial-gradient(circle at 35% 32%, rgba(255, 255, 255, 0.65) 0 18%, transparent 19%),
transform: rotate(-15deg);
radial-gradient(circle at 50% 50%, var(--gg-verde) 0 55%, var(--gg-verde-escuro) 56% 100%);
}
box-shadow: 0 0 0 3px color-mix(in srgb, var(--gg-verde-escuro) 22%, transparent);
 
 
/* =============================================================================
*  9. {{Trilha de estágios}} — .gg-evolucao
* ========================================================================== */
 
.gg-evolucao {
display: flex;
flex-wrap: wrap;
gap: .4rem;
align-items: stretch;
margin: 0 0 1.5rem;
padding: .45rem;
background: var(--gg-superficie-2);
border: 1px solid var(--gg-borda);
border-radius: var(--gg-r-pilula);
counter-reset: etapa;
}
 
.gg-evolucao-etapa {
counter-increment: etapa;
flex: 1 1 7rem;
position: relative;
text-align: center;
}
 
.gg-evolucao-etapa a {
display: block;
padding: .5rem .65rem;
border-radius: var(--gg-r-pilula);
font-family: var(--gg-fonte-texto);
font-weight: 500;
font-size: .95rem;
color: var(--gg-link);
text-decoration: none;
background: var(--gg-superficie);
border: 1px solid var(--gg-borda);
transition: background-color var(--gg-transicao), color var(--gg-transicao), transform var(--gg-transicao);
}
 
.gg-evolucao-etapa a::before {
content: counter(etapa) ".";
margin-right: .35em;
color: var(--gg-texto-suave);
font-variant-numeric: tabular-nums;
}
 
.gg-evolucao-etapa a:hover {
background: var(--gg-superficie-3);
color: var(--gg-link-hover);
transform: translateY(-1px);
text-decoration: underline;
}
 
/*
* Estágio atual: cor + peso + borda dupla. Três sinais, para que a
* informação sobreviva ao daltonismo e ao alto contraste.
*/
.gg-evolucao-atual a,
.gg-evolucao-atual a:visited {
background: var(--gg-azul);
border-color: var(--gg-azul);
color: var(--gg-texto-invertido);
font-weight: 700;
box-shadow: 0 0 0 2px var(--gg-superficie-2), 0 0 0 4px var(--gg-azul);
}
 
html.skin-theme-clientpref-night .gg-evolucao-atual a,
html.skin-theme-clientpref-night .gg-evolucao-atual a:visited {
color: var(--gg-azul-abissal);
}
 
.gg-evolucao-atual a::before {
color: inherit;
opacity: .75;
}
}


.gg-esboco b,
 
.gg-esboco strong {
/* =============================================================================
*  10. TABELAS
* ========================================================================== */
 
.mw-parser-output table.wikitable {
background: var(--gg-superficie);
color: var(--gg-texto);
color: var(--gg-texto);
border: 1px solid var(--gg-borda);
border-radius: var(--gg-r-2);
border-collapse: separate;
border-spacing: 0;
overflow: hidden;
box-shadow: var(--gg-sombra-1);
}
}


/* --------------------------------------------------------------------------
.mw-parser-output table.wikitable > * > tr > th {
  6. TABELA EVOLUTIVA — .gg-tabela-evolutiva
background: var(--gg-superficie-3);
  Escolhas de um estágio (linhas) × consequências nos seguintes (colunas).
color: var(--gg-texto);
  -------------------------------------------------------------------------- */
border: 0;
border-bottom: 2px solid var(--gg-borda-forte);
padding: .6rem .75rem;
text-align: left;
}


/* Envelope de rolagem. Precisa ser adicionado na predefinição — ver as notas.
.mw-parser-output table.wikitable > * > tr > td {
  Uma tabela com display:block rola, mas perde o papel de tabela na árvore
border: 0;
  de acessibilidade; por isso a rolagem fica no <div> de fora. */
border-bottom: 1px solid var(--gg-borda);
.gg-tabela-rolavel {
padding: .55rem .75rem;
max-width: 100%;
overflow-x: auto;
overscroll-behavior-x: contain;
border-radius: var(--gg-raio);
}
}


.gg-tabela-rolavel:focus-visible {
.mw-parser-output table.wikitable > * > tr:last-child > td {
outline: 3px solid var(--gg-foco);
border-bottom: 0;
outline-offset: 2px;
}
}


/* --- {{Tabela evolutiva}} --- */
.gg-tabela-evolutiva {
.gg-tabela-evolutiva {
width: 100%;
width: 100%;
margin: 1.5rem 0;
margin: 1.5rem 0;
background: var(--gg-superficie);
border: 1px solid var(--gg-borda);
border: 1px solid var(--gg-borda);
border-radius: var(--gg-raio);
border-radius: var(--gg-r-2);
border-collapse: separate;
border-collapse: separate;
border-spacing: 0;
border-spacing: 0;
overflow: hidden;
overflow: hidden;
background: var(--gg-superficie);
box-shadow: var(--gg-sombra-1);
color: var(--gg-texto);
box-shadow: 0 8px 22px -14px var(--gg-sombra);
font-size: 0.9375rem;
line-height: 1.5;
}
}


.gg-tabela-evolutiva caption {
.gg-tabela-evolutiva caption {
caption-side: top;
font-family: var(--gg-fonte-texto);
padding: 0.75rem 1rem;
font-weight: 700;
text-align: left;
padding: .8rem 1rem;
color: var(--gg-texto);
background: var(--gg-superficie-2);
background: var(--gg-superficie-2);
border-bottom: 1px solid var(--gg-borda);
border-bottom: 1px solid var(--gg-borda);
color: var(--gg-texto);
}
font-family: var(--gg-fonte-titulo);
 
font-size: 1rem;
.gg-tabela-evolutiva th[scope="col"] {
font-weight: 400;
background: var(--gg-superficie-3);
padding: .6rem .8rem;
text-align: left;
text-align: left;
font-size: .88rem;
letter-spacing: .03em;
text-transform: uppercase;
text-transform: uppercase;
letter-spacing: var(--gg-tracking-titulo);
}
.gg-tabela-evolutiva th[scope='col'] {
padding: 0.6rem 0.9rem;
border-bottom: 2px solid var(--gg-borda-forte);
border-bottom: 2px solid var(--gg-borda-forte);
background: var(--gg-superficie-2);
color: var(--gg-texto);
font-family: var(--gg-fonte-titulo);
font-size: 0.875rem;
font-weight: 400;
text-align: left;
vertical-align: bottom;
white-space: nowrap;
}
}


.gg-tabela-evolutiva td,
.gg-tabela-evolutiva td,
.gg-tabela-evolutiva th[scope='row'] {
.gg-tabela-evolutiva th[scope="row"] {
padding: 0.7rem 0.9rem;
padding: .65rem .8rem;
border-top: 1px solid var(--gg-borda);
border-bottom: 1px solid var(--gg-borda);
vertical-align: top;
vertical-align: top;
text-align: left;
text-align: left;
}
}


.gg-tabela-evolutiva tr:first-child th[scope='col'] {
.gg-tabela-evolutiva tr:last-child td,
border-top: 0;
.gg-tabela-evolutiva tr:last-child th {
border-bottom: 0;
}
}


.gg-te-escolha {
.gg-te-escolha {
min-width: 8rem;
padding-inline-start: 1.15rem !important;
background-repeat: no-repeat;
background-position: left center;
background-size: 6px 100%;
color: var(--gg-texto);
font-weight: 700;
font-weight: 700;
white-space: nowrap;
white-space: nowrap;
position: relative;
padding-left: 2.1rem !important;
}
/*
* Marcador da escolha: a FORMA muda junto com a cor (círculo, losango,
* triângulo). Assim a linha continua legível em escala de cinza.
*/
.gg-te-escolha::before {
content: "";
position: absolute;
left: .85rem;
top: 1.05em;
width: .6rem;
height: .6rem;
background: var(--gg-texto-suave);
}
}


/* -- Trilhas de escolha ----------------------------------------------------
.gg-cor-verde .gg-te-escolha::before {
  Cada trilha tem cor E textura. Cor sozinha reprovaria no WCAG 1.4.1 para
background: var(--gg-verde);
  quem não distingue verde de vermelho — a faixa listrada resolve sem
border-radius: 50%;
  inserir nada na árvore de acessibilidade. */
}


.gg-cor-verde > td,
.gg-cor-azul .gg-te-escolha::before {
.gg-cor-verde > th {
background: var(--gg-azul);
background-color: color-mix(in srgb, var(--gg-cor-verde) 9%, transparent);
transform: rotate(45deg);
}
}


.gg-cor-azul > td,
.gg-cor-vermelho .gg-te-escolha::before {
.gg-cor-azul > th {
background: var(--gg-vermelho);
background-color: color-mix(in srgb, var(--gg-cor-azul) 9%, transparent);
clip-path: polygon(50% 0, 100% 100%, 0 100%);
}
}


.gg-cor-vermelho > td,
.gg-cor-neutra .gg-te-escolha::before {
.gg-cor-vermelho > th {
background: var(--gg-texto-suave);
background-color: color-mix(in srgb, var(--gg-cor-vermelho) 9%, transparent);
border-radius: var(--gg-r-1);
}
}


.gg-cor-verde > .gg-te-escolha {
.gg-cor-verde   > th:first-child { box-shadow: inset 4px 0 0 var(--gg-verde); }
/* faixa maciça */
.gg-cor-azul    > th:first-child { box-shadow: inset 4px 0 0 var(--gg-azul); }
background-image: linear-gradient(var(--gg-cor-verde) 0 0);
.gg-cor-vermelho > th:first-child { box-shadow: inset 4px 0 0 var(--gg-vermelho); }
.gg-cor-neutra  > th:first-child { box-shadow: inset 4px 0 0 var(--gg-borda-forte); }
 
.gg-cor-verde:hover,
.gg-cor-azul:hover,
.gg-cor-vermelho:hover,
.gg-cor-neutra:hover {
background: var(--gg-superficie-2);
}
}


.gg-cor-azul > .gg-te-escolha {
 
/* traços horizontais */
/* =============================================================================
background-image: repeating-linear-gradient(
*  11. PÁGINA INICIAL — .gg-inicio
0deg,
* ========================================================================== */
var(--gg-cor-azul) 0 5px,
 
transparent 5px 9px
.gg-inicio {
);
max-width: 62rem;
margin-inline: auto;
}
}


.gg-cor-vermelho > .gg-te-escolha {
/* Herói: gradiente do azul abissal ao azul Spore, com os glifos por cima. */
/* diagonais */
.gg-inicio > h1,
background-image: repeating-linear-gradient(
.gg-inicio > .mw-heading1 {
45deg,
font-family: var(--gg-fonte-display);
var(--gg-cor-vermelho) 0 3px,
font-weight: 400;
transparent 3px 6px
font-size: clamp(2rem, 5.5vw, 3.1rem);
);
line-height: 1.1;
text-align: center;
color: var(--gg-texto-invertido);
background:
linear-gradient(135deg, var(--gg-azul-abissal), var(--gg-azul) 60%, var(--gg-azul-vivo));
border: 0;
border-radius: var(--gg-r-3) var(--gg-r-3) 0 0;
padding: 2.5rem 1.5rem 1rem;
margin: 0;
box-shadow: none;
}
}


.gg-cor-neutra > .gg-te-escolha {
.gg-subtitulo {
background-image: linear-gradient(var(--gg-cor-neutra) 0 0);
text-align: center;
color: color-mix(in srgb, #ffffff 88%, transparent);
background: linear-gradient(135deg, var(--gg-azul) 20%, var(--gg-azul-vivo));
padding: 0 1.5rem 2rem;
font-size: 1.05rem;
margin: 0;
}
}


@media (max-width: 40rem) {
.gg-subtitulo b,
.gg-tabela-evolutiva { font-size: 0.875rem; }
.gg-subtitulo strong {
.gg-tabela-evolutiva td,
color: #ffffff;
.gg-tabela-evolutiva th { padding: 0.55rem 0.7rem; }
font-weight: 700;
}
}


/* --------------------------------------------------------------------------
/* --- Painel de estatísticas --- */
  7. TRILHA DE ESTÁGIOS — .gg-evolucao
.gg-stats {
  -------------------------------------------------------------------------- */
display: grid;
grid-template-columns: repeat(auto-fit, minmax(10.5rem, 1fr));
gap: 1px;
background: var(--gg-borda);
border: 1px solid var(--gg-borda);
border-top: 0;
border-radius: 0 0 var(--gg-r-3) var(--gg-r-3);
overflow: hidden;
margin-bottom: 2.5rem;
box-shadow: var(--gg-sombra-2);
}


.gg-evolucao {
.gg-stat {
background: var(--gg-superficie);
padding: 1.15rem .75rem;
text-align: center;
display: flex;
display: flex;
flex-wrap: wrap;
flex-direction: column;
gap: 0.5rem;
gap: .2rem;
margin: 0 0 1.75rem;
justify-content: center;
}
 
.gg-stat-numero {
font-family: var(--gg-fonte-display);
font-size: 1.9rem;
line-height: 1.1;
font-weight: 400;
color: var(--gg-azul);
font-variant-numeric: tabular-nums;
font-feature-settings: "tnum";
}
 
.gg-stat-rotulo {
font-size: .82rem;
line-height: 1.35;
color: var(--gg-texto-suave);
text-wrap: balance;
}
 
/* --- Seções da inicial viram cartões --- */
.gg-inicio h2,
.gg-inicio .mw-heading2 {
font-size: 1.3rem;
border: 0;
padding: 0 0 .6rem;
margin: 2rem 0 .85rem;
}
 
.gg-inicio h2::after,
.gg-inicio .mw-heading2::after {
width: 2rem;
height: 3px;
bottom: 0;
}
 
/*
* As listas da inicial viram grades de pastilhas. Continuam sendo <ul>/<li>
* no HTML, então a semântica e a navegação por leitor de tela não mudam.
*/
.gg-inicio ul {
list-style: none;
margin: 0 0 1.5rem;
padding: 0;
padding: 0;
list-style: none;   /* caso vire <ul> — ver notas */
display: grid;
grid-template-columns: repeat(auto-fill, minmax(12rem, 1fr));
gap: .6rem;
}
}


.gg-evolucao-etapa {
.gg-inicio ul li {
flex: 1 1 8rem;
margin: 0;
min-width: 0;
}
 
.gg-inicio ul li a {
display: block;
padding: .8rem 1rem;
background: var(--gg-superficie);
border: 1px solid var(--gg-borda);
border: 1px solid var(--gg-borda);
border-radius: 999px;
border-left: 4px solid var(--gg-azul-vivo);
border-radius: var(--gg-r-2);
color: var(--gg-link);
font-weight: 500;
text-decoration: none;
box-shadow: var(--gg-sombra-1);
transition: transform var(--gg-transicao), box-shadow var(--gg-transicao),
border-color var(--gg-transicao), background-color var(--gg-transicao);
}
 
.gg-inicio ul li a:hover {
transform: translateY(-2px);
box-shadow: var(--gg-sombra-2);
border-left-color: var(--gg-azul);
background: var(--gg-superficie-2);
background: var(--gg-superficie-2);
text-align: center;
text-decoration: underline;
}
 
.gg-inicio ul li a.new {
border-left-color: var(--gg-vermelho);
}
 
/* Na inicial não queremos o cartão externo duplicado. */
body.page-Página_inicial #content.mw-body,
body.page-Página_principal #content.mw-body {
background: transparent;
border: 0;
box-shadow: none;
}
 
 
/* =============================================================================
*  12. IMAGENS E MISCELÂNEA
* ========================================================================== */
 
.mw-parser-output figure[typeof~='mw:File/Thumb'],
.mw-parser-output .thumbinner {
background: var(--gg-superficie);
border: 1px solid var(--gg-borda);
border-radius: var(--gg-r-2);
box-shadow: var(--gg-sombra-1);
padding: .5rem;
}
}


.gg-evolucao-etapa a,
.mw-parser-output .thumbcaption,
.gg-evolucao-etapa .mw-selflink {
.mw-parser-output figcaption {
display: block;
padding: 0.5rem 0.85rem;
border-radius: inherit;
color: var(--gg-texto-suave);
color: var(--gg-texto-suave);
font-family: var(--gg-fonte-titulo);
font-size: .88rem;
font-size: 0.9375rem;
line-height: 1.45;
font-weight: 400;
padding: .5rem .35rem .2rem;
text-decoration: none;
}
transition: background-color 140ms ease, color 140ms ease;
 
.mw-parser-output figure img,
.mw-parser-output .thumbimage {
border: 0;
border-radius: var(--gg-r-1);
}
 
/* Caixa de categorias */
.catlinks {
background: var(--gg-superficie-2);
border: 1px solid var(--gg-borda);
border-radius: var(--gg-r-2);
padding: .8rem 1rem;
margin-top: 2rem;
}
}


.gg-evolucao-etapa a:hover {
/* Notas de rodapé e referências */
background: color-mix(in srgb, var(--gg-espaco-medio) 12%, transparent);
.mw-parser-output .reflist,
color: var(--gg-texto);
.mw-parser-output .references {
font-size: .9rem;
color: var(--gg-texto-suave);
}
}


/* Etapa atual: preenchimento sólido + peso + halo. Três sinais somados,
/* Avisos do sistema */
  nenhum deles só a cor. */
.mw-message-box,
.gg-evolucao-atual {
.cdx-message {
border-color: var(--gg-espaco-medio);
border-radius: var(--gg-r-2);
background: var(--gg-espaco-medio);
box-shadow: 0 0 0 3px color-mix(in srgb, var(--gg-espaco-medio) 25%, transparent);
}
}


.gg-evolucao-atual a,
/* Redirecionamentos, tabela de conteúdo em linha etc. */
.gg-evolucao-atual .mw-selflink,
.mw-parser-output .toc {
.gg-evolucao-atual a:hover {
background: var(--gg-superficie-2);
background: none;
border: 1px solid var(--gg-borda);
color: #ffffff;
border-radius: var(--gg-r-2);
font-weight: 700;
}
}


@media screen {
 
html.skin-theme-clientpref-night .gg-evolucao-atual a,
/* =============================================================================
html.skin-theme-clientpref-night .gg-evolucao-atual .mw-selflink {
*  13. RESPONSIVO
color: #ffffff;
* ========================================================================== */
 
@media (max-width: 720px) {
#content.mw-body,
.vector-body {
padding: 1.25rem 1.1rem 2rem;
}
 
.mw-content-container,
.mw-body,
#content.mw-body {
border-radius: var(--gg-r-2);
}
 
.gg-infobox {
float: none;
width: 100%;
margin: 0 0 1.5rem;
}
}
}


/* Uma seta discreta entre as etapas, só quando cabem todas na mesma linha.
  Feita com bordas: não é conteúdo, não vira ruído em leitor de tela. */
@media (min-width: 48rem) {
.gg-evolucao {
.gg-evolucao {
gap: 1.25rem;
border-radius: var(--gg-r-2);
}
 
.gg-inicio ul {
grid-template-columns: 1fr;
}
}


.gg-evolucao-etapa {
.gg-stats {
position: relative;
grid-template-columns: repeat(2, 1fr);
}
}


.gg-evolucao-etapa + .gg-evolucao-etapa::before {
/* Tabelas largas rolam em vez de estourar a página. */
content: '';
.gg-tabela-evolutiva,
position: absolute;
.mw-parser-output table.wikitable {
inset-inline-start: -0.95rem;
display: block;
top: 50%;
overflow-x: auto;
width: 0.4rem;
max-width: 100%;
height: 0.4rem;
border-top: 2px solid var(--gg-borda-forte);
border-right: 2px solid var(--gg-borda-forte);
transform: translateY(-50%) rotate(45deg);
}
}
}
}
/* =============================================================================
*  14. PREFERÊNCIAS DO LEITOR
* ========================================================================== */


@media (prefers-reduced-motion: reduce) {
@media (prefers-reduced-motion: reduce) {
.gg-evolucao-etapa a { transition: none; }
*,
*::before,
*::after {
animation-duration: .001ms !important;
animation-iteration-count: 1 !important;
transition-duration: .001ms !important;
scroll-behavior: auto !important;
}
 
.gg-inicio ul li a:hover,
.gg-evolucao-etapa a:hover,
.cdx-button:hover {
transform: none;
}
}
}


/* --------------------------------------------------------------------------
/* Modo de alto contraste do sistema: devolve bordas de verdade. */
  8. IMPRESSÃO
@media (forced-colors: active) {
  O cósmico vira tinta na folha. Ninguém merece isso.
.gg-infobox,
  -------------------------------------------------------------------------- */
.gg-esboco,
.gg-evolucao,
.gg-tabela-evolutiva,
.gg-stats,
.gg-inicio ul li a,
.mw-content-container {
border: 1px solid CanvasText;
box-shadow: none;
}
 
.gg-evolucao-atual a {
outline: 3px solid CanvasText;
outline-offset: 2px;
}
 
body::before {
display: none;
}
}


/* Impressão: sem cromo, sem fundo, tinta poupada. */
@media print {
@media print {
.gg-inicio,
body::before {
.gg-inicio::before,
display: none;
.gg-infobox-titulo {
}
 
.mw-content-container,
.mw-body,
#content.mw-body,
.gg-infobox,
.gg-stats,
.gg-tabela-evolutiva {
box-shadow: none;
border-color: #999;
}
 
.gg-inicio > h1,
.gg-subtitulo {
background: none !important;
background: none !important;
color: #000 !important;
color: #000 !important;
}
}
.gg-inicio { padding: 0; }
 
.gg-infobox { box-shadow: none; }
.gg-evolucao,
.gg-tabela-evolutiva { box-shadow: none; }
.catlinks {
.gg-tabela-rolavel { overflow: visible; }
display: none;
/* As texturas das trilhas sobrevivem ao preto e branco; as cores de
  fundo, não. É por isso que a textura existe. */
.gg-cor-verde > td, .gg-cor-verde > th,
.gg-cor-azul > td, .gg-cor-azul > th,
.gg-cor-vermelho > td, .gg-cor-vermelho > th {
background-color: transparent !important;
}
.gg-evolucao-atual {
box-shadow: none;
outline: 2px solid #000;
}
}
}
}
</style>
<style>
/* --- Ajustes só da prévia: apontar recursos para o servidor de testes --- */
@font-face { font-family: 'Atkinson Hyperlegible Next'; src: url('https://beta.guia.esporo.net/images/fonts/AtkinsonHyperlegibleNext.woff2') format('woff2'); font-weight: 200 800; font-display: swap; }
@font-face { font-family: 'Atkinson Hyperlegible Mono'; src: url('https://beta.guia.esporo.net/images/fonts/AtkinsonHyperlegibleMono.woff2') format('woff2'); font-weight: 200 800; font-display: swap; }
@font-face { font-family: 'SPORE'; src: url('https://beta.guia.esporo.net/images/fonts/SPORERegular.woff2') format('woff2'); font-weight: 400; font-display: swap; }
@font-face { font-family: 'SPORE'; src: url('https://beta.guia.esporo.net/images/fonts/SPOREBold.woff2') format('woff2'); font-weight: 700; font-display: swap; }
body::before { background-image: url('https://beta.guia.esporo.net/images/background.jpg'); }
/* Andaime que na wiki é entregue pela própria skin */
body { margin: 0; }
.mw-page-container { margin-inline: auto; padding: 1.5rem 1rem 3rem; }
.mw-content-container { padding: 0; }
.gg-preview-barra { display: flex; gap: .5rem; align-items: center; justify-content: flex-end;
  max-width: 1600px; margin: 0 auto .9rem; font-family: var(--gg-fonte-texto); font-size: .85rem; }
.gg-preview-barra button { font: inherit; padding: .45rem .9rem; border-radius: var(--gg-r-pilula);
  border: 1px solid var(--gg-borda-forte); background: var(--gg-superficie); color: var(--gg-texto); cursor: pointer; }
.gg-preview-nota { max-width: 1600px; margin: 0 auto 1rem; padding: .75rem 1rem;
  font-family: var(--gg-fonte-texto); font-size: .85rem; color: var(--gg-texto-suave);
  background: var(--gg-superficie-2); border: 1px dashed var(--gg-borda-forte); border-radius: var(--gg-r-2); }
</style>
</head>
<body class="skin-vector-2022">
<div class="mw-page-container">
  <div class="gg-preview-barra">
    <button type="button" id="tema">Alternar tema claro/escuro</button>
  </div>
  <p class="gg-preview-nota">
    Prévia estática dos componentes de conteúdo. As fontes e o fundo glífico só aparecem
    se o navegador conseguir buscá-los em <code>beta.guia.esporo.net</code>.
  </p>
  <!-- ================= PÁGINA INICIAL ================= -->
  <div class="mw-content-container">
    <div class="mw-body" id="content">
      <div class="vector-body mw-parser-output">
        <div class="gg-inicio">
          <h1>Boas vindas ao Guia Galáctico!</h1>
          <div class="gg-subtitulo">Documentando toda a Galáxia Spore em <b>1.482</b> artigos… e expandindo!</div>
          <div class="gg-stats">
            <div class="gg-stat"><span class="gg-stat-numero">184 M</span><span class="gg-stat-rotulo">criações na Sporepédia</span></div>
            <div class="gg-stat"><span class="gg-stat-numero">2.310</span><span class="gg-stat-rotulo">criações hoje</span></div>
            <div class="gg-stat"><span class="gg-stat-numero">3,1 M</span><span class="gg-stat-rotulo">criadores</span></div>
            <div class="gg-stat"><span class="gg-stat-numero">417</span><span class="gg-stat-rotulo">criadores ativos hoje</span></div>
          </div>
          <h2>Conheça os jogos Spore</h2>
          <ul>
            <li><a href="#">SPORE</a></li>
            <li><a href="#">Aventuras Galácticas</a></li>
            <li><a href="#">Medonhas &amp; Fofinhas</a></li>
            <li><a href="#">Darkspore</a></li>
            <li><a href="#" class="new">Outros jogos</a></li>
          </ul>
          <h2>Saiba mais sobre os estágios evolutivos</h2>
          <ul>
            <li><a href="#">Estágio de Célula</a></li>
            <li><a href="#">Estágio de Criatura</a></li>
            <li><a href="#">Estágio de Tribo</a></li>
            <li><a href="#">Estágio de Civilização</a></li>
            <li><a href="#">Estágio Espacial</a></li>
          </ul>
        </div>
      </div>
    </div>
  </div>
  <div style="height:2.5rem"></div>
  <!-- ================= ARTIGO ================= -->
  <div class="mw-content-container">
    <div class="mw-body" id="content2">
      <h1 id="firstHeading">Estágio de Criatura</h1>
      <div class="vector-body mw-parser-output">
        <div class="gg-evolucao" role="navigation" aria-label="Estágios evolutivos">
          <div class="gg-evolucao-etapa"><a href="#">Célula</a></div>
          <div class="gg-evolucao-etapa gg-evolucao-atual"><a href="#">Criatura</a></div>
          <div class="gg-evolucao-etapa"><a href="#">Tribo</a></div>
          <div class="gg-evolucao-etapa"><a href="#">Civilização</a></div>
          <div class="gg-evolucao-etapa"><a href="#">Espaço</a></div>
        </div>
        <table class="gg-infobox gg-infobox-estagio">
          <caption class="gg-infobox-titulo">Estágio de Criatura</caption>
          <tr><td colspan="2" class="gg-infobox-subtitulo">Segundo dos cinco estágios evolutivos</td></tr>
          <tr><th scope="row" class="gg-infobox-rotulo">Ordem</th><td class="gg-infobox-dado">2º de 5</td></tr>
          <tr><th scope="row" class="gg-infobox-rotulo">Estágio anterior</th><td class="gg-infobox-dado"><a href="#">Estágio de Célula</a></td></tr>
          <tr><th scope="row" class="gg-infobox-rotulo">Próximo estágio</th><td class="gg-infobox-dado"><a href="#">Estágio de Tribo</a></td></tr>
          <tr><th scope="row" class="gg-infobox-rotulo">Objetivo</th><td class="gg-infobox-dado">Evoluir o cérebro até a consciência</td></tr>
          <tr><th scope="row" class="gg-infobox-rotulo">Moeda</th><td class="gg-infobox-dado">Pontos de DNA</td></tr>
          <tr><th scope="row" class="gg-infobox-rotulo">Criadores usados</th><td class="gg-infobox-dado"><a href="#">Criador de Criaturas</a></td></tr>
          <tr><td colspan="2" class="gg-infobox-rodape">Dados conferidos na versão 1.05.1 do jogo.</td></tr>
        </table>
        <p>O <b>Estágio de Criatura</b> começa quando a espécie deixa a água e pisa em terra firme
        pela primeira vez. É aqui que o <a href="#">Criador de Criaturas</a> se abre por inteiro:
        membros, bocas, olhos e armas passam a valer pontos de DNA, e cada parte adicionada muda
        o que a criatura consegue fazer no mundo.</p>
        <h2>Socializar ou atacar</h2>
        <p>Toda interação com outra espécie cai em uma de duas famílias. Cantar, dançar, posar e
        encantar constroem aliança; morder, atacar em bando e assustar constroem domínio. O jogo
        registra a proporção entre as duas e a carrega para os estágios seguintes — inclusive para
        o <a href="#">arquétipo</a> final da civilização.</p>
        <table class="gg-tabela-evolutiva">
          <caption>Escolhas do Estágio de Criatura e suas consequências</caption>
          <tr>
            <th scope="col">Escolha</th>
            <th scope="col"><a href="#">Tribo</a></th>
            <th scope="col">Influência no <a href="#">arquétipo</a></th>
          </tr>
          <tr class="gg-cor-verde">
            <th scope="row" class="gg-te-escolha">Social</th>
            <td>Ferramenta do Maestro</td>
            <td>Aproxima das filosofias sociais</td>
          </tr>
          <tr class="gg-cor-azul">
            <th scope="row" class="gg-te-escolha">Equilibrado</th>
            <td>Ferramenta do Adaptável</td>
            <td>Aproxima das filosofias adaptáveis</td>
          </tr>
          <tr class="gg-cor-vermelho">
            <th scope="row" class="gg-te-escolha">Predador</th>
            <td>Ferramenta do Caçador</td>
            <td>Aproxima das filosofias agressivas</td>
          </tr>
        </table>
        <h3>Uma nota sobre partes</h3>
        <p>O orçamento de DNA cresce a cada nível de cérebro. Um resumo do custo aparece
        no canto do editor, e o atalho <kbd>Tab</kbd> alterna entre a vista de teste e a de edição.</p>
        <blockquote>Todo organismo começa pequeno — e a maioria continua pequena por bastante tempo.</blockquote>
        <pre>{{Trilha de estágios|atual=criatura}}</pre>
        <div class="gg-esboco">Este artigo é um <b>esboço em evolução</b>. Você pode ajudar o Guia Galáctico
        <a href="#">expandindo-o</a> — todo organismo começa pequeno.</div>
        <div class="catlinks"><b>Categorias:</b> <a href="#">Estágios</a> · <a href="#">Esboços</a></div>
      </div>
    </div>
  </div>
  <div style="height:2.5rem"></div>
  <!-- ================= AMOSTRA DE INFOBOXES ================= -->
  <div class="mw-content-container">
    <div class="mw-body">
      <h1 id="firstHeading2">Cores por tipo de infobox</h1>
      <div class="vector-body mw-parser-output">
        <div style="display:grid;grid-template-columns:repeat(auto-fill,minmax(19rem,1fr));gap:1.25rem">
          <table class="gg-infobox gg-infobox-jogo" style="float:none;width:auto;margin:0">
            <caption class="gg-infobox-titulo">SPORE</caption>
            <tr><th scope="row" class="gg-infobox-rotulo">Lançamento</th><td class="gg-infobox-dado">7 de setembro de 2008</td></tr>
            <tr><th scope="row" class="gg-infobox-rotulo">Plataformas</th><td class="gg-infobox-dado">Windows, macOS</td></tr>
          </table>
          <table class="gg-infobox gg-infobox-criador" style="float:none;width:auto;margin:0">
            <caption class="gg-infobox-titulo">Criador de Veículos</caption>
            <tr><th scope="row" class="gg-infobox-rotulo">Jogo</th><td class="gg-infobox-dado">SPORE</td></tr>
            <tr><th scope="row" class="gg-infobox-rotulo">Orçamento</th><td class="gg-infobox-dado">Sporebucks</td></tr>
          </table>
          <table class="gg-infobox gg-infobox-criacao" style="float:none;width:auto;margin:0">
            <caption class="gg-infobox-titulo">Grox Sentinela</caption>
            <tr><th scope="row" class="gg-infobox-rotulo">Tipo</th><td class="gg-infobox-dado">Criatura</td></tr>
            <tr><th scope="row" class="gg-infobox-rotulo">Autor(a)</th><td class="gg-infobox-dado">MaxisArtista</td></tr>
          </table>
          <table class="gg-infobox gg-infobox-raridade" style="float:none;width:auto;margin:0">
            <caption class="gg-infobox-titulo">Escultura Antiga</caption>
            <tr><th scope="row" class="gg-infobox-rotulo">Valor</th><td class="gg-infobox-dado">50.000 Sporebucks</td></tr>
            <tr><th scope="row" class="gg-infobox-rotulo">Coleção</th><td class="gg-infobox-dado">Esculturas Perdidas (3 de 8)</td></tr>
          </table>
          <table class="gg-infobox gg-infobox-ferramenta" style="float:none;width:auto;margin:0">
            <caption class="gg-infobox-titulo">Raio de Abdução</caption>
            <tr><th scope="row" class="gg-infobox-rotulo">Custo</th><td class="gg-infobox-dado">75.000 Sporebucks</td></tr>
            <tr><th scope="row" class="gg-infobox-rotulo">Energia</th><td class="gg-infobox-dado">10 por uso</td></tr>
          </table>
          <table class="gg-infobox gg-infobox-arquetipo" style="float:none;width:auto;margin:0">
            <caption class="gg-infobox-titulo">Xamã</caption>
            <tr><th scope="row" class="gg-infobox-rotulo">Filosofia</th><td class="gg-infobox-dado">Harmonia</td></tr>
            <tr><th scope="row" class="gg-infobox-rotulo">Superpoder</th><td class="gg-infobox-dado">Retorno</td></tr>
          </table>
        </div>
      </div>
    </div>
  </div>
</div>
<script>
document.getElementById('tema').addEventListener('click', function () {
  var h = document.documentElement;
  if (h.classList.contains('skin-theme-clientpref-night')) {
    h.classList.remove('skin-theme-clientpref-night');
    h.classList.add('skin-theme-clientpref-day');
  } else {
    h.classList.remove('skin-theme-clientpref-day');
    h.classList.add('skin-theme-clientpref-night');
  }
});
</script>
</body>
</html>

Edição das 21h51min de 27 de julho de 2026

<!DOCTYPE html>
<html lang="pt-BR">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>Guia Galáctico  prévia do estilo Vector 2022</title>
<style>/*!
 * =============================================================================
 *  GUIA GALÁCTICO — MediaWiki:Vector-2022.css
 * =============================================================================
 *
 *  Estilo personalizado para a skin Vector 2022.
 *
 *  Conceito: "caderno de campo do xenobiólogo". Papel claro com o fundo
 *  glífico da marca, cartões flutuando sobre ele, e o azul Spore
 *  (extraído do brand toolkit) como cor condutora. Cada tipo de infobox
 *  ganha uma cor de espécie própria.
 *
 *  Convenções:
 *   - Todas as variáveis usam o prefixo --gg-.
 *   - Nada depende de JavaScript.
 *   - Cor nunca é o único portador de significado.
 *   - Contraste mínimo 4.5:1 para texto; 3:1 para bordas e ícones.
 *   - Tema escuro automático + respeito ao seletor de aparência do MediaWiki.
 *   - Movimento sempre atrás de prefers-reduced-motion.
 *
 *  Manutenção:
 *   - Para trocar a fonte display de todo o site, mexa só em --gg-fonte-display.
 *   - Para trocar a cor de um tipo de infobox, mexa só em --gg-acento na regra
 *     .gg-infobox-<tipo>.
 *   - Os caminhos url() são absolutos a partir da raiz do domínio de propósito:
 *     o CSS do site é servido por load.php, então caminhos relativos quebram.
 * =============================================================================
 */


/* =============================================================================
 *  1. FONTES
 *  Remova este bloco se ele já estiver em MediaWiki:Common.css.
 * ========================================================================== */

@font-face {
	font-family: 'Atkinson Hyperlegible Next';
	src: url('/images/fonts/AtkinsonHyperlegibleNext.woff2') format('woff2');
	font-weight: 200 800;
	font-style: normal;
	font-display: swap;
}

@font-face {
	font-family: 'Atkinson Hyperlegible Mono';
	src: url('/images/fonts/AtkinsonHyperlegibleMono.woff2') format('woff2');
	font-weight: 200 800;
	font-style: normal;
	font-display: swap;
}

@font-face {
	font-family: 'SPORE';
	src: url('/images/fonts/SPORELight.woff2') format('woff2');
	font-weight: 300;
	font-style: normal;
	font-display: swap;
}

@font-face {
	font-family: 'SPORE';
	src: url('/images/fonts/SPORERegular.woff2') format('woff2');
	font-weight: 400;
	font-style: normal;
	font-display: swap;
}

@font-face {
	font-family: 'SPORE';
	src: url('/images/fonts/SPOREBold.woff2') format('woff2');
	font-weight: 700;
	font-style: normal;
	font-display: swap;
}


/* =============================================================================
 *  2. TOKENS — TEMA CLARO
 * ========================================================================== */

:root {
	/* --- Marca (amostras tiradas do brand toolkit) --- */
	--gg-azul-abissal: #041c3a;
	--gg-azul-profundo: #0a2f5c;
	--gg-azul: #0b5ea8;
	--gg-azul-vivo: #1a8fd0;
	--gg-ciano: #4fc3e8;
	--gg-roxo: #6d2a86;

	/* --- Cores de significado (consequências, raridades, avisos) --- */
	--gg-verde: #2e7d4f;
	--gg-vermelho: #b3341f;
	--gg-ambar: #92610a;
	--gg-laranja: #b04d1c;

	/* --- Superfícies --- */
	--gg-fundo: #eef3f9;
	--gg-superficie: #ffffff;
	--gg-superficie-2: #f4f8fc;
	--gg-superficie-3: #e6eef8;
	--gg-borda: #cbdbeb;
	--gg-borda-forte: #9db8d3;

	/* --- Texto --- */
	--gg-texto: #14202e;
	--gg-texto-suave: #48596d;
	--gg-texto-invertido: #ffffff;

	/* --- Ligações --- */
	--gg-link: #0b5ea8;
	--gg-link-hover: #0a2f5c;
	--gg-link-visitado: #6d2a86;
	--gg-link-novo: #b3341f;

	/* --- Foco: sempre visível, sempre com 3:1 contra o fundo --- */
	--gg-foco: #1a8fd0;
	--gg-foco-sombra: #041c3a;

	/* --- Acento padrão (cada infobox sobrescreve o seu) --- */
	--gg-acento: var(--gg-azul);
	--gg-acento-fraco: #e6eef8;

	/* --- Tipografia --- */
	--gg-fonte-texto: 'Atkinson Hyperlegible Next', 'Atkinson Hyperlegible', system-ui, sans-serif;
	--gg-fonte-display: 'SPORE', 'Atkinson Hyperlegible Next', system-ui, sans-serif;
	--gg-fonte-mono: 'Atkinson Hyperlegible Mono', ui-monospace, 'Cascadia Code', monospace;

	/* --- Forma --- */
	--gg-r-1: 6px;
	--gg-r-2: 10px;
	--gg-r-3: 16px;
	--gg-r-pilula: 999px;

	/* --- Profundidade --- */
	--gg-sombra-1: 0 1px 2px rgba(4, 28, 58, .05), 0 2px 8px rgba(4, 28, 58, .06);
	--gg-sombra-2: 0 2px 4px rgba(4, 28, 58, .07), 0 12px 32px rgba(4, 28, 58, .10);

	/* --- Fundo glífico --- */
	--gg-glifos-opacidade: .55;
	--gg-glifos-filtro: none;
	--gg-glifos-tamanho: 420px;

	/* --- Ritmo --- */
	--gg-transicao: 140ms ease;
}


/* =============================================================================
 *  3. TOKENS — TEMA ESCURO
 *
 *  Dois gatilhos:
 *   a) o seletor de aparência do MediaWiki (skin-theme-clientpref-night);
 *   b) a preferência do sistema, a menos que o leitor tenha fixado o modo claro.
 *  Assim funciona com ou sem o modo noturno instalado no wiki.
 * ========================================================================== */

html.skin-theme-clientpref-night {
	--gg-azul-abissal: #06101f;
	--gg-azul-profundo: #0d2440;
	--gg-azul: #6ec1f0;
	--gg-azul-vivo: #8fd4fa;
	--gg-ciano: #a5e4f7;
	--gg-roxo: #c79ce0;

	--gg-verde: #74d19a;
	--gg-vermelho: #ff9d86;
	--gg-ambar: #e2b565;
	--gg-laranja: #f0a072;

	--gg-fundo: #0a1220;
	--gg-superficie: #111c2e;
	--gg-superficie-2: #17243a;
	--gg-superficie-3: #1e2f4a;
	--gg-borda: #2c405f;
	--gg-borda-forte: #46608a;

	--gg-texto: #e7eef8;
	--gg-texto-suave: #a9bad0;
	--gg-texto-invertido: #06101f;

	--gg-link: #6ec1f0;
	--gg-link-hover: #a5e4f7;
	--gg-link-visitado: #c79ce0;
	--gg-link-novo: #ff9d86;

	--gg-foco: #8fd4fa;
	--gg-foco-sombra: #06101f;

	--gg-acento: #6ec1f0;
	--gg-acento-fraco: #1e2f4a;

	--gg-sombra-1: 0 1px 2px rgba(0, 0, 0, .4), 0 2px 8px rgba(0, 0, 0, .3);
	--gg-sombra-2: 0 2px 4px rgba(0, 0, 0, .45), 0 12px 32px rgba(0, 0, 0, .4);

	/* O fundo glífico é claro: invertemos e apagamos bastante. */
	--gg-glifos-opacidade: .07;
	--gg-glifos-filtro: invert(1);
}

@media (prefers-color-scheme: dark) {
	html:not(.skin-theme-clientpref-day) {
		--gg-azul-abissal: #06101f;
		--gg-azul-profundo: #0d2440;
		--gg-azul: #6ec1f0;
		--gg-azul-vivo: #8fd4fa;
		--gg-ciano: #a5e4f7;
		--gg-roxo: #c79ce0;

		--gg-verde: #74d19a;
		--gg-vermelho: #ff9d86;
		--gg-ambar: #e2b565;
		--gg-laranja: #f0a072;

		--gg-fundo: #0a1220;
		--gg-superficie: #111c2e;
		--gg-superficie-2: #17243a;
		--gg-superficie-3: #1e2f4a;
		--gg-borda: #2c405f;
		--gg-borda-forte: #46608a;

		--gg-texto: #e7eef8;
		--gg-texto-suave: #a9bad0;
		--gg-texto-invertido: #06101f;

		--gg-link: #6ec1f0;
		--gg-link-hover: #a5e4f7;
		--gg-link-visitado: #c79ce0;
		--gg-link-novo: #ff9d86;

		--gg-foco: #8fd4fa;
		--gg-foco-sombra: #06101f;

		--gg-acento: #6ec1f0;
		--gg-acento-fraco: #1e2f4a;

		--gg-sombra-1: 0 1px 2px rgba(0, 0, 0, .4), 0 2px 8px rgba(0, 0, 0, .3);
		--gg-sombra-2: 0 2px 4px rgba(0, 0, 0, .45), 0 12px 32px rgba(0, 0, 0, .4);

		--gg-glifos-opacidade: .07;
		--gg-glifos-filtro: invert(1);
	}
}


/* =============================================================================
 *  4. PONTE COM OS TOKENS DO CODEX
 *  Faz os componentes que ainda não estilizamos herdarem a paleta sozinhos.
 * ========================================================================== */

:root,
html.skin-theme-clientpref-night {
	--background-color-base: var(--gg-superficie);
	--background-color-neutral-subtle: var(--gg-superficie-2);
	--background-color-interactive-subtle: var(--gg-superficie-2);
	--background-color-interactive: var(--gg-superficie-3);
	--color-base: var(--gg-texto);
	--color-emphasized: var(--gg-texto);
	--color-subtle: var(--gg-texto-suave);
	--color-progressive: var(--gg-link);
	--color-progressive--hover: var(--gg-link-hover);
	--color-visited: var(--gg-link-visitado);
	--color-destructive: var(--gg-link-novo);
	--border-color-base: var(--gg-borda-forte);
	--border-color-subtle: var(--gg-borda);
	--border-color-muted: var(--gg-borda);
	--border-color-interactive: var(--gg-borda-forte);
}


/* =============================================================================
 *  5. BASE — PÁGINA, FUNDO, TIPOGRAFIA
 * ========================================================================== */

html,
body {
	background-color: var(--gg-fundo);
	color: var(--gg-texto);
}

body {
	font-family: var(--gg-fonte-texto);
	font-size: 1rem;
	line-height: 1.65;
	-webkit-font-smoothing: antialiased;
	text-rendering: optimizeLegibility;
}

/*
 * Camada de glifos. Fica atrás de tudo, em position: fixed, para que o
 * padrão não role junto com o texto e não vire ruído durante a leitura.
 */
body::before {
	content: "";
	position: fixed;
	inset: 0;
	z-index: -1;
	pointer-events: none;
	background-image: url('/images/background.jpg');
	background-repeat: repeat;
	background-size: var(--gg-glifos-tamanho) auto;
	opacity: var(--gg-glifos-opacidade);
	filter: var(--gg-glifos-filtro);
}

/* Foco visível e generoso — vale para tudo, inclusive links dentro do texto. */
:focus-visible {
	outline: 3px solid var(--gg-foco);
	outline-offset: 2px;
	border-radius: 3px;
	box-shadow: 0 0 0 5px color-mix(in srgb, var(--gg-foco-sombra) 22%, transparent);
}

::selection {
	background: color-mix(in srgb, var(--gg-azul-vivo) 30%, transparent);
	color: var(--gg-texto);
}

/* --- Ligações --- *
 * Sublinhado mantido: em texto corrido ele é o único sinal não cromático
 * de que algo é clicável.
 */
.mw-parser-output a:not(.image):not(.mw-file-description) {
	color: var(--gg-link);
	text-decoration: underline;
	text-decoration-thickness: 1px;
	text-underline-offset: .18em;
	text-decoration-color: color-mix(in srgb, currentColor 45%, transparent);
	transition: color var(--gg-transicao), text-decoration-color var(--gg-transicao);
}

.mw-parser-output a:not(.image):not(.mw-file-description):hover {
	color: var(--gg-link-hover);
	text-decoration-color: currentColor;
	text-decoration-thickness: 2px;
}

.mw-parser-output a:visited:not(.image):not(.mw-file-description) {
	color: var(--gg-link-visitado);
}

.mw-parser-output a.new,
.mw-parser-output a.new:visited {
	color: var(--gg-link-novo);
}

.mw-parser-output a.external {
	background-position: right center;
	padding-right: .95em;
}


/* --- Títulos --- *
 * A fonte SPORE entra só nos títulos grandes. Corpo de texto e títulos
 * pequenos ficam com a Atkinson, que foi desenhada para legibilidade.
 */
.mw-body h1,
.mw-body h2,
.mw-body h3,
.mw-body h4,
.mw-body h5,
.mw-body h6,
.mw-heading {
	font-family: var(--gg-fonte-texto);
	color: var(--gg-texto);
	line-height: 1.25;
	scroll-margin-top: 4.5rem;
}

.mw-body h1,
.mw-body-header h1,
#firstHeading {
	font-family: var(--gg-fonte-display);
	font-weight: 400;
	font-size: 2.15rem;
	letter-spacing: .01em;
	border-bottom: 0;
	color: var(--gg-azul-profundo);
}

html.skin-theme-clientpref-night #firstHeading {
	color: var(--gg-texto);
}

/* h2 recebe uma régua com um "cromossomo" de acento à esquerda. */
.mw-body h2,
.mw-heading2 {
	font-family: var(--gg-fonte-texto);
	font-weight: 700;
	font-size: 1.5rem;
	border-bottom: 2px solid var(--gg-borda);
	padding-bottom: .35rem;
	margin-top: 2.2rem;
	position: relative;
}

.mw-body h2::after,
.mw-heading2::after {
	content: "";
	position: absolute;
	left: 0;
	bottom: -2px;
	width: 2.75rem;
	height: 2px;
	background: var(--gg-azul-vivo);
	border-radius: var(--gg-r-pilula);
}

.mw-body h3,
.mw-heading3 {
	font-weight: 700;
	font-size: 1.2rem;
	margin-top: 1.6rem;
}

.mw-body h4,
.mw-heading4 {
	font-weight: 700;
	font-size: 1.05rem;
	color: var(--gg-texto-suave);
}

.mw-parser-output p {
	margin: .75em 0;
	max-width: 78ch; /* medida de leitura confortável */
}

.mw-parser-output b,
.mw-parser-output strong {
	font-weight: 700;
}

/* --- Código --- */
code,
kbd,
samp,
pre,
.mw-code {
	font-family: var(--gg-fonte-mono);
	font-size: .92em;
}

code {
	background: var(--gg-superficie-2);
	border: 1px solid var(--gg-borda);
	border-radius: var(--gg-r-1);
	padding: .1em .35em;
	color: var(--gg-azul-profundo);
}

html.skin-theme-clientpref-night code {
	color: var(--gg-ciano);
}

pre,
.mw-code {
	background: var(--gg-superficie-2);
	border: 1px solid var(--gg-borda);
	border-left: 4px solid var(--gg-azul-vivo);
	border-radius: var(--gg-r-2);
	padding: 1rem;
	overflow-x: auto;
	line-height: 1.55;
}

kbd {
	background: var(--gg-superficie);
	border: 1px solid var(--gg-borda-forte);
	border-bottom-width: 3px;
	border-radius: var(--gg-r-1);
	padding: .1em .45em;
}

blockquote {
	border-left: 4px solid var(--gg-azul-vivo);
	background: var(--gg-superficie-2);
	margin: 1.25rem 0;
	padding: .85rem 1.15rem;
	border-radius: 0 var(--gg-r-2) var(--gg-r-2) 0;
	color: var(--gg-texto-suave);
	font-style: normal;
}

hr {
	border: 0;
	height: 1px;
	background: linear-gradient(90deg, var(--gg-borda-forte), transparent);
	margin: 2rem 0;
}


/* =============================================================================
 *  6. ESTRUTURA DA SKIN — CONTÊINER, CABEÇALHO, COLUNAS, RODAPÉ
 * ========================================================================== */

/* O contêiner vira um cartão flutuando sobre os glifos. */
.mw-page-container {
	background: transparent;
	max-width: 1600px;
}

.mw-content-container,
.mw-body,
.mw-body-content,
#content.mw-body {
	background: var(--gg-superficie);
	color: var(--gg-texto);
	border: 1px solid var(--gg-borda);
	border-radius: var(--gg-r-3);
	box-shadow: var(--gg-sombra-1);
}

/* Evita cartão-dentro-de-cartão quando os dois seletores coincidem. */
.mw-content-container .mw-body {
	border: 0;
	border-radius: 0;
	box-shadow: none;
	background: transparent;
}

#content.mw-body,
.vector-body {
	padding: 1.75rem 2rem 2.5rem;
}

/* --- Cabeçalho --- */
.vector-header-container .vector-header {
	background: transparent;
	padding-block: .5rem;
}

.vector-sticky-header {
	background: color-mix(in srgb, var(--gg-superficie) 88%, transparent);
	-webkit-backdrop-filter: blur(10px) saturate(1.3);
	backdrop-filter: blur(10px) saturate(1.3);
	border-bottom: 1px solid var(--gg-borda);
	box-shadow: var(--gg-sombra-1);
}

.mw-logo-wordmark {
	max-height: 2.1em;
}

.mw-logo-tagline {
	font-family: var(--gg-fonte-texto);
	color: var(--gg-texto-suave);
	font-size: .8rem;
	letter-spacing: .02em;
}

/* --- Busca --- */
.vector-search-box .cdx-text-input__input,
.vector-search-box input[type="search"] {
	background: var(--gg-superficie);
	border: 1px solid var(--gg-borda-forte);
	border-radius: var(--gg-r-pilula);
	color: var(--gg-texto);
	font-family: var(--gg-fonte-texto);
	padding-left: 2.4em;
	transition: border-color var(--gg-transicao), box-shadow var(--gg-transicao);
}

.vector-search-box .cdx-text-input__input:hover {
	border-color: var(--gg-azul-vivo);
}

.vector-search-box .cdx-text-input__input:focus {
	border-color: var(--gg-azul-vivo);
	box-shadow: 0 0 0 3px color-mix(in srgb, var(--gg-azul-vivo) 28%, transparent);
	outline: 0;
}

.cdx-menu {
	background: var(--gg-superficie);
	border: 1px solid var(--gg-borda);
	border-radius: var(--gg-r-2);
	box-shadow: var(--gg-sombra-2);
	overflow: hidden;
}

/* --- Colunas laterais (menu principal, sumário, ferramentas) --- */
.vector-column-start,
.vector-column-end {
	color: var(--gg-texto);
}

.vector-main-menu-container .vector-main-menu,
.vector-page-tools,
.vector-toc,
.vector-appearance,
#vector-main-menu-dropdown .vector-dropdown-content,
.vector-dropdown-content {
	background: var(--gg-superficie);
	border: 1px solid var(--gg-borda);
	border-radius: var(--gg-r-2);
	box-shadow: var(--gg-sombra-1);
	padding: .6rem .5rem;
}

.vector-pinnable-header,
.vector-menu-heading,
.vector-toc-pinnable-header {
	font-family: var(--gg-fonte-texto);
	font-weight: 700;
	font-size: .78rem;
	letter-spacing: .07em;
	text-transform: uppercase;
	color: var(--gg-texto-suave);
}

.vector-menu-content-list li a,
.vector-toc-link,
.vector-page-tools .mw-list-item a {
	color: var(--gg-link);
	border-radius: var(--gg-r-1);
	padding-inline: .5rem;
	text-decoration: none;
	transition: background-color var(--gg-transicao), color var(--gg-transicao);
}

.vector-menu-content-list li a:hover,
.vector-toc-link:hover,
.vector-page-tools .mw-list-item a:hover {
	background: var(--gg-superficie-3);
	color: var(--gg-link-hover);
	text-decoration: underline;
}

/* Item ativo do sumário: barra de acento + peso, não só cor. */
.vector-toc-list-item-active > .vector-toc-link {
	background: var(--gg-acento-fraco);
	font-weight: 700;
	box-shadow: inset 3px 0 0 var(--gg-azul-vivo);
}

/* --- Abas de página (Artigo / Discussão / Ler / Editar / Histórico) --- */
.vector-menu-tabs .mw-list-item a,
.vector-menu-tabs-legacy li a {
	background: transparent;
	border: 0;
	border-radius: var(--gg-r-pilula) var(--gg-r-pilula) 0 0;
	color: var(--gg-link);
	font-weight: 500;
	transition: background-color var(--gg-transicao), box-shadow var(--gg-transicao);
}

.vector-menu-tabs .mw-list-item a:hover {
	background: var(--gg-superficie-3);
}

.vector-menu-tabs .selected a,
.vector-menu-tabs .selected a:visited {
	color: var(--gg-texto);
	font-weight: 700;
	background: var(--gg-superficie-2);
	box-shadow: inset 0 -3px 0 var(--gg-azul-vivo);
}

/* --- Botões --- */
.cdx-button:not(.cdx-button--weight-quiet) {
	border-radius: var(--gg-r-pilula);
	font-family: var(--gg-fonte-texto);
	font-weight: 500;
	border-color: var(--gg-borda-forte);
	transition: transform var(--gg-transicao), box-shadow var(--gg-transicao);
}

.cdx-button--action-progressive.cdx-button--weight-primary {
	background: var(--gg-azul);
	border-color: var(--gg-azul);
	color: var(--gg-texto-invertido);
}

html.skin-theme-clientpref-night .cdx-button--action-progressive.cdx-button--weight-primary {
	color: var(--gg-azul-abissal);
}

.cdx-button:not(.cdx-button--weight-quiet):hover {
	transform: translateY(-1px);
	box-shadow: var(--gg-sombra-1);
}

.cdx-button:active {
	transform: translateY(0);
}

/* --- Rodapé --- */
.mw-footer,
.mw-footer-container {
	background: transparent;
	color: var(--gg-texto-suave);
	border-top: 0;
}

.mw-footer-container {
	margin-top: 1.5rem;
	padding-top: 1.5rem;
	border-top: 1px solid var(--gg-borda);
}

.mw-footer li,
.mw-footer a {
	color: var(--gg-texto-suave);
}

.mw-footer a:hover {
	color: var(--gg-link-hover);
}


/* =============================================================================
 *  7. INFOBOXES — {{Infobox}} e derivadas
 * ========================================================================== */

.gg-infobox {
	--gg-acento: var(--gg-azul);
	--gg-acento-fraco: #e6eef8;

	float: right;
	clear: right;
	width: 22.5rem;
	max-width: 100%;
	margin: 0 0 1.25rem 1.5rem;
	border: 1px solid var(--gg-borda);
	border-top: 4px solid var(--gg-acento);
	border-radius: var(--gg-r-2);
	background: var(--gg-superficie);
	box-shadow: var(--gg-sombra-1);
	border-collapse: separate;
	border-spacing: 0;
	overflow: hidden;
	font-size: .92rem;
	line-height: 1.5;
}

.gg-infobox-titulo {
	font-family: var(--gg-fonte-display);
	font-weight: 400;
	font-size: 1.35rem;
	line-height: 1.2;
	text-align: left;
	padding: .85rem 1rem .3rem;
	color: var(--gg-acento);
	background: var(--gg-acento-fraco);
	caption-side: top;
}

html.skin-theme-clientpref-night .gg-infobox-titulo {
	color: var(--gg-texto);
}

.gg-infobox-subtitulo {
	padding: 0 1rem .8rem;
	background: var(--gg-acento-fraco);
	color: var(--gg-texto-suave);
	font-size: .9em;
}

.gg-infobox-imagem {
	padding: .9rem 1rem;
	text-align: center;
	background: var(--gg-superficie-2);
	border-bottom: 1px solid var(--gg-borda);
}

.gg-infobox-imagem img {
	max-width: 100%;
	height: auto;
	border-radius: var(--gg-r-1);
}

.gg-infobox-legenda {
	margin-top: .5rem;
	font-size: .85em;
	color: var(--gg-texto-suave);
	line-height: 1.45;
}

.gg-infobox-rotulo {
	width: 38%;
	text-align: left;
	vertical-align: top;
	font-weight: 700;
	color: var(--gg-texto-suave);
	padding: .55rem .5rem .55rem 1rem;
	border-bottom: 1px solid var(--gg-borda);
	hyphens: auto;
}

.gg-infobox-dado {
	vertical-align: top;
	padding: .55rem 1rem .55rem .5rem;
	border-bottom: 1px solid var(--gg-borda);
}

/* Zebra suave: ajuda a rastrear a linha em infoboxes longas. */
.gg-infobox tr:nth-child(even) .gg-infobox-rotulo,
.gg-infobox tr:nth-child(even) .gg-infobox-dado {
	background: var(--gg-superficie-2);
}

.gg-infobox-rodape {
	padding: .7rem 1rem;
	background: var(--gg-superficie-2);
	border-top: 1px solid var(--gg-borda);
	font-size: .85em;
	color: var(--gg-texto-suave);
}

.gg-infobox tr:last-child .gg-infobox-rotulo,
.gg-infobox tr:last-child .gg-infobox-dado {
	border-bottom: 0;
}

/* --- Cor de espécie por tipo de infobox --- */
.gg-infobox-jogo       { --gg-acento: var(--gg-azul);     --gg-acento-fraco: #e6eef8; }
.gg-infobox-estagio    { --gg-acento: var(--gg-verde);    --gg-acento-fraco: #e3f2e9; }
.gg-infobox-criador    { --gg-acento: #0f6f8c;            --gg-acento-fraco: #e0f1f6; }
.gg-infobox-criacao    { --gg-acento: var(--gg-roxo);     --gg-acento-fraco: #f1e6f5; }
.gg-infobox-download   { --gg-acento: #37527a;            --gg-acento-fraco: #e8edf5; }
.gg-infobox-raridade   { --gg-acento: var(--gg-ambar);    --gg-acento-fraco: #f7efdd; }
.gg-infobox-ferramenta { --gg-acento: var(--gg-laranja);  --gg-acento-fraco: #f9e9e0; }
.gg-infobox-arquetipo  { --gg-acento: #4b3fa0;            --gg-acento-fraco: #e9e7f7; }

html.skin-theme-clientpref-night .gg-infobox-jogo       { --gg-acento: #6ec1f0; --gg-acento-fraco: #16293f; }
html.skin-theme-clientpref-night .gg-infobox-estagio    { --gg-acento: #74d19a; --gg-acento-fraco: #16301f; }
html.skin-theme-clientpref-night .gg-infobox-criador    { --gg-acento: #6fd0e8; --gg-acento-fraco: #113140; }
html.skin-theme-clientpref-night .gg-infobox-criacao    { --gg-acento: #c79ce0; --gg-acento-fraco: #2b1c39; }
html.skin-theme-clientpref-night .gg-infobox-download   { --gg-acento: #9fb6d8; --gg-acento-fraco: #1a2438; }
html.skin-theme-clientpref-night .gg-infobox-raridade   { --gg-acento: #e2b565; --gg-acento-fraco: #33270f; }
html.skin-theme-clientpref-night .gg-infobox-ferramenta { --gg-acento: #f0a072; --gg-acento-fraco: #35200f; }
html.skin-theme-clientpref-night .gg-infobox-arquetipo  { --gg-acento: #a99cf0; --gg-acento-fraco: #221e3f; }


/* =============================================================================
 *  8. {{Esboço}}
 * ========================================================================== */

.gg-esboco {
	display: flow-root;
	clear: both;
	margin: 2rem 0 1rem;
	padding: .9rem 1.1rem .9rem 3.25rem;
	background: var(--gg-superficie-2);
	border: 1px dashed var(--gg-borda-forte);
	border-radius: var(--gg-r-2);
	color: var(--gg-texto-suave);
	font-size: .95rem;
	position: relative;
}

/* Broto decorativo. Puramente CSS, portanto invisível para leitores de tela. */
.gg-esboco::before {
	content: "";
	position: absolute;
	left: 1.15rem;
	top: 1.05rem;
	width: .85rem;
	height: .85rem;
	border-radius: 60% 0 60% 60%;
	background: var(--gg-verde);
	transform: rotate(-15deg);
}


/* =============================================================================
 *  9. {{Trilha de estágios}} — .gg-evolucao
 * ========================================================================== */

.gg-evolucao {
	display: flex;
	flex-wrap: wrap;
	gap: .4rem;
	align-items: stretch;
	margin: 0 0 1.5rem;
	padding: .45rem;
	background: var(--gg-superficie-2);
	border: 1px solid var(--gg-borda);
	border-radius: var(--gg-r-pilula);
	counter-reset: etapa;
}

.gg-evolucao-etapa {
	counter-increment: etapa;
	flex: 1 1 7rem;
	position: relative;
	text-align: center;
}

.gg-evolucao-etapa a {
	display: block;
	padding: .5rem .65rem;
	border-radius: var(--gg-r-pilula);
	font-family: var(--gg-fonte-texto);
	font-weight: 500;
	font-size: .95rem;
	color: var(--gg-link);
	text-decoration: none;
	background: var(--gg-superficie);
	border: 1px solid var(--gg-borda);
	transition: background-color var(--gg-transicao), color var(--gg-transicao), transform var(--gg-transicao);
}

.gg-evolucao-etapa a::before {
	content: counter(etapa) ".";
	margin-right: .35em;
	color: var(--gg-texto-suave);
	font-variant-numeric: tabular-nums;
}

.gg-evolucao-etapa a:hover {
	background: var(--gg-superficie-3);
	color: var(--gg-link-hover);
	transform: translateY(-1px);
	text-decoration: underline;
}

/*
 * Estágio atual: cor + peso + borda dupla. Três sinais, para que a
 * informação sobreviva ao daltonismo e ao alto contraste.
 */
.gg-evolucao-atual a,
.gg-evolucao-atual a:visited {
	background: var(--gg-azul);
	border-color: var(--gg-azul);
	color: var(--gg-texto-invertido);
	font-weight: 700;
	box-shadow: 0 0 0 2px var(--gg-superficie-2), 0 0 0 4px var(--gg-azul);
}

html.skin-theme-clientpref-night .gg-evolucao-atual a,
html.skin-theme-clientpref-night .gg-evolucao-atual a:visited {
	color: var(--gg-azul-abissal);
}

.gg-evolucao-atual a::before {
	color: inherit;
	opacity: .75;
}


/* =============================================================================
 *  10. TABELAS
 * ========================================================================== */

.mw-parser-output table.wikitable {
	background: var(--gg-superficie);
	color: var(--gg-texto);
	border: 1px solid var(--gg-borda);
	border-radius: var(--gg-r-2);
	border-collapse: separate;
	border-spacing: 0;
	overflow: hidden;
	box-shadow: var(--gg-sombra-1);
}

.mw-parser-output table.wikitable > * > tr > th {
	background: var(--gg-superficie-3);
	color: var(--gg-texto);
	border: 0;
	border-bottom: 2px solid var(--gg-borda-forte);
	padding: .6rem .75rem;
	text-align: left;
}

.mw-parser-output table.wikitable > * > tr > td {
	border: 0;
	border-bottom: 1px solid var(--gg-borda);
	padding: .55rem .75rem;
}

.mw-parser-output table.wikitable > * > tr:last-child > td {
	border-bottom: 0;
}

/* --- {{Tabela evolutiva}} --- */
.gg-tabela-evolutiva {
	width: 100%;
	margin: 1.5rem 0;
	background: var(--gg-superficie);
	border: 1px solid var(--gg-borda);
	border-radius: var(--gg-r-2);
	border-collapse: separate;
	border-spacing: 0;
	overflow: hidden;
	box-shadow: var(--gg-sombra-1);
}

.gg-tabela-evolutiva caption {
	font-family: var(--gg-fonte-texto);
	font-weight: 700;
	text-align: left;
	padding: .8rem 1rem;
	color: var(--gg-texto);
	background: var(--gg-superficie-2);
	border-bottom: 1px solid var(--gg-borda);
}

.gg-tabela-evolutiva th[scope="col"] {
	background: var(--gg-superficie-3);
	padding: .6rem .8rem;
	text-align: left;
	font-size: .88rem;
	letter-spacing: .03em;
	text-transform: uppercase;
	border-bottom: 2px solid var(--gg-borda-forte);
}

.gg-tabela-evolutiva td,
.gg-tabela-evolutiva th[scope="row"] {
	padding: .65rem .8rem;
	border-bottom: 1px solid var(--gg-borda);
	vertical-align: top;
	text-align: left;
}

.gg-tabela-evolutiva tr:last-child td,
.gg-tabela-evolutiva tr:last-child th {
	border-bottom: 0;
}

.gg-te-escolha {
	font-weight: 700;
	white-space: nowrap;
	position: relative;
	padding-left: 2.1rem !important;
}

/*
 * Marcador da escolha: a FORMA muda junto com a cor (círculo, losango,
 * triângulo). Assim a linha continua legível em escala de cinza.
 */
.gg-te-escolha::before {
	content: "";
	position: absolute;
	left: .85rem;
	top: 1.05em;
	width: .6rem;
	height: .6rem;
	background: var(--gg-texto-suave);
}

.gg-cor-verde .gg-te-escolha::before {
	background: var(--gg-verde);
	border-radius: 50%;
}

.gg-cor-azul .gg-te-escolha::before {
	background: var(--gg-azul);
	transform: rotate(45deg);
}

.gg-cor-vermelho .gg-te-escolha::before {
	background: var(--gg-vermelho);
	clip-path: polygon(50% 0, 100% 100%, 0 100%);
}

.gg-cor-neutra .gg-te-escolha::before {
	background: var(--gg-texto-suave);
	border-radius: var(--gg-r-1);
}

.gg-cor-verde    > th:first-child { box-shadow: inset 4px 0 0 var(--gg-verde); }
.gg-cor-azul     > th:first-child { box-shadow: inset 4px 0 0 var(--gg-azul); }
.gg-cor-vermelho > th:first-child { box-shadow: inset 4px 0 0 var(--gg-vermelho); }
.gg-cor-neutra   > th:first-child { box-shadow: inset 4px 0 0 var(--gg-borda-forte); }

.gg-cor-verde:hover,
.gg-cor-azul:hover,
.gg-cor-vermelho:hover,
.gg-cor-neutra:hover {
	background: var(--gg-superficie-2);
}


/* =============================================================================
 *  11. PÁGINA INICIAL — .gg-inicio
 * ========================================================================== */

.gg-inicio {
	max-width: 62rem;
	margin-inline: auto;
}

/* Herói: gradiente do azul abissal ao azul Spore, com os glifos por cima. */
.gg-inicio > h1,
.gg-inicio > .mw-heading1 {
	font-family: var(--gg-fonte-display);
	font-weight: 400;
	font-size: clamp(2rem, 5.5vw, 3.1rem);
	line-height: 1.1;
	text-align: center;
	color: var(--gg-texto-invertido);
	background:
		linear-gradient(135deg, var(--gg-azul-abissal), var(--gg-azul) 60%, var(--gg-azul-vivo));
	border: 0;
	border-radius: var(--gg-r-3) var(--gg-r-3) 0 0;
	padding: 2.5rem 1.5rem 1rem;
	margin: 0;
	box-shadow: none;
}

.gg-subtitulo {
	text-align: center;
	color: color-mix(in srgb, #ffffff 88%, transparent);
	background: linear-gradient(135deg, var(--gg-azul) 20%, var(--gg-azul-vivo));
	padding: 0 1.5rem 2rem;
	font-size: 1.05rem;
	margin: 0;
}

.gg-subtitulo b,
.gg-subtitulo strong {
	color: #ffffff;
	font-weight: 700;
}

/* --- Painel de estatísticas --- */
.gg-stats {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(10.5rem, 1fr));
	gap: 1px;
	background: var(--gg-borda);
	border: 1px solid var(--gg-borda);
	border-top: 0;
	border-radius: 0 0 var(--gg-r-3) var(--gg-r-3);
	overflow: hidden;
	margin-bottom: 2.5rem;
	box-shadow: var(--gg-sombra-2);
}

.gg-stat {
	background: var(--gg-superficie);
	padding: 1.15rem .75rem;
	text-align: center;
	display: flex;
	flex-direction: column;
	gap: .2rem;
	justify-content: center;
}

.gg-stat-numero {
	font-family: var(--gg-fonte-display);
	font-size: 1.9rem;
	line-height: 1.1;
	font-weight: 400;
	color: var(--gg-azul);
	font-variant-numeric: tabular-nums;
	font-feature-settings: "tnum";
}

.gg-stat-rotulo {
	font-size: .82rem;
	line-height: 1.35;
	color: var(--gg-texto-suave);
	text-wrap: balance;
}

/* --- Seções da inicial viram cartões --- */
.gg-inicio h2,
.gg-inicio .mw-heading2 {
	font-size: 1.3rem;
	border: 0;
	padding: 0 0 .6rem;
	margin: 2rem 0 .85rem;
}

.gg-inicio h2::after,
.gg-inicio .mw-heading2::after {
	width: 2rem;
	height: 3px;
	bottom: 0;
}

/*
 * As listas da inicial viram grades de pastilhas. Continuam sendo <ul>/<li>
 * no HTML, então a semântica e a navegação por leitor de tela não mudam.
 */
.gg-inicio ul {
	list-style: none;
	margin: 0 0 1.5rem;
	padding: 0;
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(12rem, 1fr));
	gap: .6rem;
}

.gg-inicio ul li {
	margin: 0;
}

.gg-inicio ul li a {
	display: block;
	padding: .8rem 1rem;
	background: var(--gg-superficie);
	border: 1px solid var(--gg-borda);
	border-left: 4px solid var(--gg-azul-vivo);
	border-radius: var(--gg-r-2);
	color: var(--gg-link);
	font-weight: 500;
	text-decoration: none;
	box-shadow: var(--gg-sombra-1);
	transition: transform var(--gg-transicao), box-shadow var(--gg-transicao),
		border-color var(--gg-transicao), background-color var(--gg-transicao);
}

.gg-inicio ul li a:hover {
	transform: translateY(-2px);
	box-shadow: var(--gg-sombra-2);
	border-left-color: var(--gg-azul);
	background: var(--gg-superficie-2);
	text-decoration: underline;
}

.gg-inicio ul li a.new {
	border-left-color: var(--gg-vermelho);
}

/* Na inicial não queremos o cartão externo duplicado. */
body.page-Página_inicial #content.mw-body,
body.page-Página_principal #content.mw-body {
	background: transparent;
	border: 0;
	box-shadow: none;
}


/* =============================================================================
 *  12. IMAGENS E MISCELÂNEA
 * ========================================================================== */

.mw-parser-output figure[typeof~='mw:File/Thumb'],
.mw-parser-output .thumbinner {
	background: var(--gg-superficie);
	border: 1px solid var(--gg-borda);
	border-radius: var(--gg-r-2);
	box-shadow: var(--gg-sombra-1);
	padding: .5rem;
}

.mw-parser-output .thumbcaption,
.mw-parser-output figcaption {
	color: var(--gg-texto-suave);
	font-size: .88rem;
	line-height: 1.45;
	padding: .5rem .35rem .2rem;
}

.mw-parser-output figure img,
.mw-parser-output .thumbimage {
	border: 0;
	border-radius: var(--gg-r-1);
}

/* Caixa de categorias */
.catlinks {
	background: var(--gg-superficie-2);
	border: 1px solid var(--gg-borda);
	border-radius: var(--gg-r-2);
	padding: .8rem 1rem;
	margin-top: 2rem;
}

/* Notas de rodapé e referências */
.mw-parser-output .reflist,
.mw-parser-output .references {
	font-size: .9rem;
	color: var(--gg-texto-suave);
}

/* Avisos do sistema */
.mw-message-box,
.cdx-message {
	border-radius: var(--gg-r-2);
}

/* Redirecionamentos, tabela de conteúdo em linha etc. */
.mw-parser-output .toc {
	background: var(--gg-superficie-2);
	border: 1px solid var(--gg-borda);
	border-radius: var(--gg-r-2);
}


/* =============================================================================
 *  13. RESPONSIVO
 * ========================================================================== */

@media (max-width: 720px) {
	#content.mw-body,
	.vector-body {
		padding: 1.25rem 1.1rem 2rem;
	}

	.mw-content-container,
	.mw-body,
	#content.mw-body {
		border-radius: var(--gg-r-2);
	}

	.gg-infobox {
		float: none;
		width: 100%;
		margin: 0 0 1.5rem;
	}

	.gg-evolucao {
		border-radius: var(--gg-r-2);
	}

	.gg-inicio ul {
		grid-template-columns: 1fr;
	}

	.gg-stats {
		grid-template-columns: repeat(2, 1fr);
	}

	/* Tabelas largas rolam em vez de estourar a página. */
	.gg-tabela-evolutiva,
	.mw-parser-output table.wikitable {
		display: block;
		overflow-x: auto;
		max-width: 100%;
	}
}


/* =============================================================================
 *  14. PREFERÊNCIAS DO LEITOR
 * ========================================================================== */

@media (prefers-reduced-motion: reduce) {
	*,
	*::before,
	*::after {
		animation-duration: .001ms !important;
		animation-iteration-count: 1 !important;
		transition-duration: .001ms !important;
		scroll-behavior: auto !important;
	}

	.gg-inicio ul li a:hover,
	.gg-evolucao-etapa a:hover,
	.cdx-button:hover {
		transform: none;
	}
}

/* Modo de alto contraste do sistema: devolve bordas de verdade. */
@media (forced-colors: active) {
	.gg-infobox,
	.gg-esboco,
	.gg-evolucao,
	.gg-tabela-evolutiva,
	.gg-stats,
	.gg-inicio ul li a,
	.mw-content-container {
		border: 1px solid CanvasText;
		box-shadow: none;
	}

	.gg-evolucao-atual a {
		outline: 3px solid CanvasText;
		outline-offset: 2px;
	}

	body::before {
		display: none;
	}
}

/* Impressão: sem cromo, sem fundo, tinta poupada. */
@media print {
	body::before {
		display: none;
	}

	.mw-content-container,
	.mw-body,
	#content.mw-body,
	.gg-infobox,
	.gg-stats,
	.gg-tabela-evolutiva {
		box-shadow: none;
		border-color: #999;
	}

	.gg-inicio > h1,
	.gg-subtitulo {
		background: none !important;
		color: #000 !important;
	}

	.gg-evolucao,
	.catlinks {
		display: none;
	}
}
</style>
<style>
/* --- Ajustes só da prévia: apontar recursos para o servidor de testes --- */
@font-face { font-family: 'Atkinson Hyperlegible Next'; src: url('https://beta.guia.esporo.net/images/fonts/AtkinsonHyperlegibleNext.woff2') format('woff2'); font-weight: 200 800; font-display: swap; }
@font-face { font-family: 'Atkinson Hyperlegible Mono'; src: url('https://beta.guia.esporo.net/images/fonts/AtkinsonHyperlegibleMono.woff2') format('woff2'); font-weight: 200 800; font-display: swap; }
@font-face { font-family: 'SPORE'; src: url('https://beta.guia.esporo.net/images/fonts/SPORERegular.woff2') format('woff2'); font-weight: 400; font-display: swap; }
@font-face { font-family: 'SPORE'; src: url('https://beta.guia.esporo.net/images/fonts/SPOREBold.woff2') format('woff2'); font-weight: 700; font-display: swap; }
body::before { background-image: url('https://beta.guia.esporo.net/images/background.jpg'); }

/* Andaime que na wiki é entregue pela própria skin */
body { margin: 0; }
.mw-page-container { margin-inline: auto; padding: 1.5rem 1rem 3rem; }
.mw-content-container { padding: 0; }
.gg-preview-barra { display: flex; gap: .5rem; align-items: center; justify-content: flex-end;
  max-width: 1600px; margin: 0 auto .9rem; font-family: var(--gg-fonte-texto); font-size: .85rem; }
.gg-preview-barra button { font: inherit; padding: .45rem .9rem; border-radius: var(--gg-r-pilula);
  border: 1px solid var(--gg-borda-forte); background: var(--gg-superficie); color: var(--gg-texto); cursor: pointer; }
.gg-preview-nota { max-width: 1600px; margin: 0 auto 1rem; padding: .75rem 1rem;
  font-family: var(--gg-fonte-texto); font-size: .85rem; color: var(--gg-texto-suave);
  background: var(--gg-superficie-2); border: 1px dashed var(--gg-borda-forte); border-radius: var(--gg-r-2); }
</style>
</head>
<body class="skin-vector-2022">

<div class="mw-page-container">

  <div class="gg-preview-barra">
    <button type="button" id="tema">Alternar tema claro/escuro</button>
  </div>

  <p class="gg-preview-nota">
    Prévia estática dos componentes de conteúdo. As fontes e o fundo glífico  aparecem
    se o navegador conseguir buscá-los em <code>beta.guia.esporo.net</code>.
  </p>

  <!-- ================= PÁGINA INICIAL ================= -->
  <div class="mw-content-container">
    <div class="mw-body" id="content">
      <div class="vector-body mw-parser-output">
        <div class="gg-inicio">
          <h1>Boas vindas ao Guia Galáctico!</h1>
          <div class="gg-subtitulo">Documentando toda a Galáxia Spore em <b>1.482</b> artigos e expandindo!</div>

          <div class="gg-stats">
            <div class="gg-stat"><span class="gg-stat-numero">184 M</span><span class="gg-stat-rotulo">criações na Sporepédia</span></div>
            <div class="gg-stat"><span class="gg-stat-numero">2.310</span><span class="gg-stat-rotulo">criações hoje</span></div>
            <div class="gg-stat"><span class="gg-stat-numero">3,1 M</span><span class="gg-stat-rotulo">criadores</span></div>
            <div class="gg-stat"><span class="gg-stat-numero">417</span><span class="gg-stat-rotulo">criadores ativos hoje</span></div>
          </div>

          <h2>Conheça os jogos Spore</h2>
          <ul>
            <li><a href="#">SPORE</a></li>
            <li><a href="#">Aventuras Galácticas</a></li>
            <li><a href="#">Medonhas &amp; Fofinhas</a></li>
            <li><a href="#">Darkspore</a></li>
            <li><a href="#" class="new">Outros jogos</a></li>
          </ul>

          <h2>Saiba mais sobre os estágios evolutivos</h2>
          <ul>
            <li><a href="#">Estágio de Célula</a></li>
            <li><a href="#">Estágio de Criatura</a></li>
            <li><a href="#">Estágio de Tribo</a></li>
            <li><a href="#">Estágio de Civilização</a></li>
            <li><a href="#">Estágio Espacial</a></li>
          </ul>
        </div>
      </div>
    </div>
  </div>

  <div style="height:2.5rem"></div>

  <!-- ================= ARTIGO ================= -->
  <div class="mw-content-container">
    <div class="mw-body" id="content2">
      <h1 id="firstHeading">Estágio de Criatura</h1>
      <div class="vector-body mw-parser-output">

        <div class="gg-evolucao" role="navigation" aria-label="Estágios evolutivos">
          <div class="gg-evolucao-etapa"><a href="#">Célula</a></div>
          <div class="gg-evolucao-etapa gg-evolucao-atual"><a href="#">Criatura</a></div>
          <div class="gg-evolucao-etapa"><a href="#">Tribo</a></div>
          <div class="gg-evolucao-etapa"><a href="#">Civilização</a></div>
          <div class="gg-evolucao-etapa"><a href="#">Espaço</a></div>
        </div>

        <table class="gg-infobox gg-infobox-estagio">
          <caption class="gg-infobox-titulo">Estágio de Criatura</caption>
          <tr><td colspan="2" class="gg-infobox-subtitulo">Segundo dos cinco estágios evolutivos</td></tr>
          <tr><th scope="row" class="gg-infobox-rotulo">Ordem</th><td class="gg-infobox-dado"> de 5</td></tr>
          <tr><th scope="row" class="gg-infobox-rotulo">Estágio anterior</th><td class="gg-infobox-dado"><a href="#">Estágio de Célula</a></td></tr>
          <tr><th scope="row" class="gg-infobox-rotulo">Próximo estágio</th><td class="gg-infobox-dado"><a href="#">Estágio de Tribo</a></td></tr>
          <tr><th scope="row" class="gg-infobox-rotulo">Objetivo</th><td class="gg-infobox-dado">Evoluir o cérebro até a consciência</td></tr>
          <tr><th scope="row" class="gg-infobox-rotulo">Moeda</th><td class="gg-infobox-dado">Pontos de DNA</td></tr>
          <tr><th scope="row" class="gg-infobox-rotulo">Criadores usados</th><td class="gg-infobox-dado"><a href="#">Criador de Criaturas</a></td></tr>
          <tr><td colspan="2" class="gg-infobox-rodape">Dados conferidos na versão 1.05.1 do jogo.</td></tr>
        </table>

        <p>O <b>Estágio de Criatura</b> começa quando a espécie deixa a água e pisa em terra firme
        pela primeira vez. É aqui que o <a href="#">Criador de Criaturas</a> se abre por inteiro:
        membros, bocas, olhos e armas passam a valer pontos de DNA, e cada parte adicionada muda
        o que a criatura consegue fazer no mundo.</p>

        <h2>Socializar ou atacar</h2>
        <p>Toda interação com outra espécie cai em uma de duas famílias. Cantar, dançar, posar e
        encantar constroem aliança; morder, atacar em bando e assustar constroem domínio. O jogo
        registra a proporção entre as duas e a carrega para os estágios seguintes  inclusive para
        o <a href="#">arquétipo</a> final da civilização.</p>

        <table class="gg-tabela-evolutiva">
          <caption>Escolhas do Estágio de Criatura e suas consequências</caption>
          <tr>
            <th scope="col">Escolha</th>
            <th scope="col"><a href="#">Tribo</a></th>
            <th scope="col">Influência no <a href="#">arquétipo</a></th>
          </tr>
          <tr class="gg-cor-verde">
            <th scope="row" class="gg-te-escolha">Social</th>
            <td>Ferramenta do Maestro</td>
            <td>Aproxima das filosofias sociais</td>
          </tr>
          <tr class="gg-cor-azul">
            <th scope="row" class="gg-te-escolha">Equilibrado</th>
            <td>Ferramenta do Adaptável</td>
            <td>Aproxima das filosofias adaptáveis</td>
          </tr>
          <tr class="gg-cor-vermelho">
            <th scope="row" class="gg-te-escolha">Predador</th>
            <td>Ferramenta do Caçador</td>
            <td>Aproxima das filosofias agressivas</td>
          </tr>
        </table>

        <h3>Uma nota sobre partes</h3>
        <p>O orçamento de DNA cresce a cada nível de cérebro. Um resumo do custo aparece
        no canto do editor, e o atalho <kbd>Tab</kbd> alterna entre a vista de teste e a de edição.</p>

        <blockquote>Todo organismo começa pequeno  e a maioria continua pequena por bastante tempo.</blockquote>

        <pre>{{Trilha de estágios|atual=criatura}}</pre>

        <div class="gg-esboco">Este artigo é um <b>esboço em evolução</b>. Você pode ajudar o Guia Galáctico
        <a href="#">expandindo-o</a>  todo organismo começa pequeno.</div>

        <div class="catlinks"><b>Categorias:</b> <a href="#">Estágios</a> · <a href="#">Esboços</a></div>
      </div>
    </div>
  </div>

  <div style="height:2.5rem"></div>

  <!-- ================= AMOSTRA DE INFOBOXES ================= -->
  <div class="mw-content-container">
    <div class="mw-body">
      <h1 id="firstHeading2">Cores por tipo de infobox</h1>
      <div class="vector-body mw-parser-output">
        <div style="display:grid;grid-template-columns:repeat(auto-fill,minmax(19rem,1fr));gap:1.25rem">
          <table class="gg-infobox gg-infobox-jogo" style="float:none;width:auto;margin:0">
            <caption class="gg-infobox-titulo">SPORE</caption>
            <tr><th scope="row" class="gg-infobox-rotulo">Lançamento</th><td class="gg-infobox-dado">7 de setembro de 2008</td></tr>
            <tr><th scope="row" class="gg-infobox-rotulo">Plataformas</th><td class="gg-infobox-dado">Windows, macOS</td></tr>
          </table>
          <table class="gg-infobox gg-infobox-criador" style="float:none;width:auto;margin:0">
            <caption class="gg-infobox-titulo">Criador de Veículos</caption>
            <tr><th scope="row" class="gg-infobox-rotulo">Jogo</th><td class="gg-infobox-dado">SPORE</td></tr>
            <tr><th scope="row" class="gg-infobox-rotulo">Orçamento</th><td class="gg-infobox-dado">Sporebucks</td></tr>
          </table>
          <table class="gg-infobox gg-infobox-criacao" style="float:none;width:auto;margin:0">
            <caption class="gg-infobox-titulo">Grox Sentinela</caption>
            <tr><th scope="row" class="gg-infobox-rotulo">Tipo</th><td class="gg-infobox-dado">Criatura</td></tr>
            <tr><th scope="row" class="gg-infobox-rotulo">Autor(a)</th><td class="gg-infobox-dado">MaxisArtista</td></tr>
          </table>
          <table class="gg-infobox gg-infobox-raridade" style="float:none;width:auto;margin:0">
            <caption class="gg-infobox-titulo">Escultura Antiga</caption>
            <tr><th scope="row" class="gg-infobox-rotulo">Valor</th><td class="gg-infobox-dado">50.000 Sporebucks</td></tr>
            <tr><th scope="row" class="gg-infobox-rotulo">Coleção</th><td class="gg-infobox-dado">Esculturas Perdidas (3 de 8)</td></tr>
          </table>
          <table class="gg-infobox gg-infobox-ferramenta" style="float:none;width:auto;margin:0">
            <caption class="gg-infobox-titulo">Raio de Abdução</caption>
            <tr><th scope="row" class="gg-infobox-rotulo">Custo</th><td class="gg-infobox-dado">75.000 Sporebucks</td></tr>
            <tr><th scope="row" class="gg-infobox-rotulo">Energia</th><td class="gg-infobox-dado">10 por uso</td></tr>
          </table>
          <table class="gg-infobox gg-infobox-arquetipo" style="float:none;width:auto;margin:0">
            <caption class="gg-infobox-titulo">Xamã</caption>
            <tr><th scope="row" class="gg-infobox-rotulo">Filosofia</th><td class="gg-infobox-dado">Harmonia</td></tr>
            <tr><th scope="row" class="gg-infobox-rotulo">Superpoder</th><td class="gg-infobox-dado">Retorno</td></tr>
          </table>
        </div>
      </div>
    </div>
  </div>

</div>

<script>
document.getElementById('tema').addEventListener('click', function () {
  var h = document.documentElement;
  if (h.classList.contains('skin-theme-clientpref-night')) {
    h.classList.remove('skin-theme-clientpref-night');
    h.classList.add('skin-theme-clientpref-day');
  } else {
    h.classList.remove('skin-theme-clientpref-day');
    h.classList.add('skin-theme-clientpref-night');
  }
});
</script>
</body>
</html>