Ir para o conteúdo

MediaWiki:Common.css

De Normas Regulamentadoras

Nota: Após publicar, você pode ter que limpar o "cache" do seu navegador para ver as alterações.

  • Firefox / Safari: Pressione Shift enquanto clica Recarregar, ou pressione Ctrl-F5 ou Ctrl-R (⌘-R no Mac)
  • Google Chrome: Pressione Ctrl-Shift-R (⌘-Shift-R no Mac)
  • Edge: Pressione Ctrl enquanto clica Recarregar, ou pressione Ctrl-F5.
  • Opera: Pressione Ctrl-F5.
/* Quando a tela for menor que 768px (Celulares e Tablets na vertical) */
@media screen and (max-width: 768px) {
    .norma-page-layout {
        flex-direction: column !important; /* Empilha a lateral abaixo do texto */
        gap: 20px;
    }

    .norma-main-column, 
    .norma-sidebar-column {
        flex: 100% !important; /* Cada um ocupa a largura total da tela do celular */
        width: 100% !important;
    }
    
    /* Garante que tabelas de dados permitam rolagem lateral no dedo se forem muito grandes */
    .render-regra-tabela {
        width: 100% !important;
        overflow-x: auto !important;
        -webkit-overflow-scrolling: touch;
    }
}



/* Página Principal Container do Card com Sombra Sutil e Borda Escura */
.norma-container {
    display: block; 
    clear: both; 
    width: 100%; 
    margin-bottom: 16px; 
    box-sizing: border-box;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.05), 0 1px 3px rgba(0, 0, 0, 0.1);
    border: 1px solid #bbb !important;
    border-radius: 6px;
    overflow: hidden;
}

/*  Página Principal  Cores Unificadas por Classe (Cabeçalho e Conteúdo) */
.norma-box-Geral th, .norma-box-Geral td {
    background-color: #e3f2fd !important;
}
.norma-box-Especial th, .norma-box-Especial td {
    background-color: #fff3e0 !important;
}
.norma-box-Setorial th, .norma-box-Setorial td {
    background-color: #e8f5e9 !important;
}
.norma-box-Revogada th, .norma-box-Revogada td {
    background-color: #ffebee !important;
}

/*  Página Normas Container Principal: Divide em duas colunas (70% para o texto, 30% para a barra lateral) */
.norma-page-layout {
    display: flex;
    gap: 5px;
    width: 100%;
    box-sizing: border-box;
}

/* Página Normas Coluna da Esquerda: (Texto Principal) */
.norma-main-column {
    flex: 70%;
}

/* Página Normas Coluna da Direita: (Painéis Laterais) */
.norma-sidebar-column {
    flex: 30%;
    display: flex;
    flex-direction: column;
    gap: 15px; /* Espaço vertical entre as caixas da direita */
}


/* Página Normas - Texto Principal Layout base dos itens da norma */
.conteudo-itens-norma { font-family: sans-serif; line-height: 1.6; text-align: justify; color: #2d3748; }
.item-nr { margin-bottom: 3px; }

/* Página Normas - Texto Principal Indentação baseada no Nível */
.item-nr.nv-2 { padding-left: 0px; }
.item-nr.nv-3 { padding-left: 5px; }
.item-nr.nv-4 { padding-left: 10px; }
.item-nr.nv-5 { padding-left: 15px; }
.item-nr.nv-6 { padding-left: 20px; }
.item-nr.nv-7 { padding-left: 25px; }
.item-nr.nv-8 { padding-left: 30px; }
.item-nr.nv-9 { padding-left: 35px; }
.item-nr.nv-10 { padding-left: 40px; }
.item-nr.nv-11 { padding-left: 43px; }

/* Página Normas - Texto Principal Formatação baseada no campo Forma */
.item-nr.f-1 span { font-weight: bold; }
.item-nr.f-2 span { text-decoration: line-through; color: #a0aec0; }
.item-nr.f-3 span { font-style: italic; }
.item-nr.f-4 span { vertical-align: super; font-size: 80%; }
.item-nr.f-5 { text-align: center; }
.item-nr.f-6 span { font-variant: small-caps; }
.item-nr.f-7 span { text-transform: uppercase; }
.item-nr.f-8 { margin-left: 30px; }

/* Página Normas - Texto Principal Notas sobrescritas */
.nota-sup { 
    font-size: 70%;            /* Reduz ligeiramente para não sobrecarregar a linha */
    color: #3182ce; 
    font-weight: bold; 
    margin-left: 4px;
    vertical-align: super;   
    line-height: 0;           
}

/* Página Normas - Texto Principal Estilo geral do bloco de infração no fim da linha */
.infracao-nr28 {
    font-size: 75%;
    font-weight: bold;
    color: #FF0000; 
    margin-left: 12px;        
    white-space: nowrap; 
}


/* Página Normas - Texto Principal Oculta completamente o bloco do gráfico se o valor vier nulo/vazio do banco */
.elemento-grafico.grafico-val- {
    display: none !important;
}

/* Página Normas - Texto Principal Oculta o bloco INTEIRO de infração se o campo [infra] vier vazio ou nulo */
.infracao-nr28.status-infra- {
    display: none !important;
}


/* Página Normas - Texto Principal Oculta especificamente o texto do Código se o campo [code] vier nulo */
.status-code- {
    display: none !important;
}


/* Página Normas - Texto Principal Oculta especificamente o texto do Tipo se o campo [classe] vier nulo */
.status-classe- {
    display: none !important;
}

/* Página Normas - Texto Principal Ajuste de espaçamento interno entre os elementos da infração */
.infracao-nr28 span {
    margin-right: 3px;
}


/* Página Normas - Tabelas - 1 Força a remoção de qualquer texto gerado automaticamente por regras antigas */
.elemento-grafico::before,
.elemento-grafico:not(.grafico-val-)::before {
    content: "" !important;
    display: none !important;
}

/* Página Normas - Tabelas - 2. Mostra se valor */
.elemento-grafico:not(.grafico-val-) {
    display: block !important;
    clear: both !important;         /* 🌟 O REMÉDIO: Limpa os limites e impede que a altura seja esmagada */
    width: 100% !important;
    height: auto !important;         /* 🌟 FORÇA o navegador a calcular a altura real da tabela interna */
    min-height: 20px !important;    /* Garante uma altura mínima de segurança */
    margin: 0px auto !important;
    box-sizing: border-box !important;
    background: transparent !important;
    border: none !important;
}
/* 1. Oculta todos os blocos internos por padrão */
.bloco-midia-renderizado > div { 
    display: none !important; 
}

/* Página Normas - Garante que nenhuma imagem vinda do banco ou de tabelas ultrapasse a largura do texto */
.render-regra-tabela img,
.elemento-grafico img,
.conteudo-itens-norma img {
    max-width: 100% !important;
    height: auto !important;
    display: block;
}

/* Ajuste específico para tabelas inline que contêm mídias ou imagens */
.render-regra-tabela table,
.conteudo-itens-norma table {
    max-width: 100% !important;
    width: 100% !important;
    table-layout: fixed; /* Força os limites das colunas a respeitarem a tela */
    word-wrap: break-word;
}


/* 2. Exibe estritamente o bloco correspondente à regra declarada */
.regra-ativa-tabela .render-regra-tabela { display: block !important; }
.regra-ativa-imagem .render-regra-imagem { display: block !important; }
.regra-ativa-formula .render-regra-formula { display: block !important; }


/* Página Normas - Tabelas - 5. Estilo Fórmula Matemática */
.texto-formula-matematica {
    display: block;
    text-align: center;
    font-family: "Times New Roman", Times, serif;
    font-size: 18px;
    font-style: italic;
    letter-spacing: 1px;
    padding: 10px;
    background-color: #f7fafc;
    border-radius: 4px;
}

/* Página Normas - Tabelas - 6. Estilo conteúdo de dentro da tabela (regras ativas) NÃO fique invisível */
/* 1. Visibilidade Inicial: Apenas Nível 1 aparece */
.linha-nivel-2, .linha-nivel-3, .linha-nivel-4 {
    display: none;
}

/* 2. Propriedades visuais e interação */
/* Nível 1: sem cursor de clique */
.linha-nivel-1 { cursor: default; background-color: #ffffff; }

/* Níveis 2 e 3: interativos */
.linha-nivel-2, .linha-nivel-3 {
    cursor: pointer !important;
}

.linha-nivel-2:hover, .linha-nivel-3:hover {
    background-color: #e0e0e0 !important;
}

/* Cores de fundo por nível */
.linha-nivel-1 { background-color: #ffffff; }
.linha-nivel-2 { background-color: #f7f7f7; }
.linha-nivel-3 { background-color: #f0f0f0; }
.linha-nivel-4 { background-color: #e8e8e8; }

/* Classe utilitária para mostrar linhas */
.show { display: table-row !important; }
/* Garante que o display seja controlado apenas pela classe 'show' */
.linha-nivel-2, .linha-nivel-3, .linha-nivel-4 {
    display: none;
}

.show {
    display: table-row !important;
}

/* Página Normas - Sistema Orbital - Container Geral da Caixa */
.caixa-orbital-container {
    overflow: hidden;
}
/* Força os links das luas e do sol a ocuparem 100% do espaço redondo e herdar as cores certas */
.caixa-orbital-container #sistema-orbital a {
    color: inherit !important;
    text-decoration: none !important;
    background: none !important;
    padding: 0 !important;
    margin: 0 !important;
    display: flex !important;
    width: 100% !important;
    height: 100% !important;
    justify-content: center !important;
    align-items: center !important;
}
/* Remove a cor azul padrão se o link for considerado externo ou interno pela Wiki */
.caixa-orbital-container #sistema-orbital a:link,
.caixa-orbital-container #sistema-orbital a:visited,
.caixa-orbital-container #sistema-orbital a:hover,
.caixa-orbital-container #sistema-orbital a:active {
    color: inherit !important;
    text-decoration: none !important;
}
/* Página Normas - Sistema Orbital - O Espaço onde os anexos orbitam */
.espaco-orbital {
    position: relative;
    width: 240px; 
    height: 240px; 
    margin: 25px auto;
    background: #fcfcfc;
    border-radius: 50% !important;
    border: 1px dashed #dcdcdc !important; 
    animation: rotacionarDireita 160s linear infinite !important;
}

/* Garante o Sol perfeitamente estático e centralizado no meio do sistema solar */
.bolha-centro {
    position: absolute !important;
    width: 76px !important;
    height: 76px !important;
    background-color: #34495e !important; 
    background: #34495e !important;
    border-radius: 50% !important;
    
    /* Centralização por coordenadas fixa garantida pelas bordas */
    top: 50% !important;
    left: 50% !important;
    
    /* O REMÉDIO: Removemos o !important para permitir que os keyframes apliquem o rotate */
    transform: translate(-50%, -50%); 
    animation: rotacionarEsquerdaSol 160s linear infinite !important;
    
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    box-shadow: 0 4px 12px rgba(0,0,0,0.15) !important;
    z-index: 10 !important;
    border: 3px solid #ffffff !important;
    padding: 0 !important;
    margin: 0 !important;
    overflow: hidden !important; 
    box-sizing: border-box !important;
}


/* Página Normas - Sistema Orbital - Remove qualquer caixa de parágrafo residual do MediaWiki dentro do Sol */
.bolha-centro *, .bolha-centro p, .bolha-centro span {
    background: transparent !important;
    background-color: transparent !important;
    color: #ffffff !important;
    font-family: sans-serif !important;
    font-weight: bold !important;
    font-size: 14px !important;
    border: none !important;
    box-shadow: none !important;
    padding: 0 !important;
    margin: 0 !important;
    display: block !important;
    text-align: center !important;
    white-space: nowrap !important;
}

/* Página Normas - Sistema Orbital - As Luas Orbitando (Fundo Branco) */
.planeta-satelite {
    position: absolute !important;
    width: 44px !important;
    height: 44px !important;
    background-color: #ffffff !important;
    background: #ffffff !important;
    border: 2px solid #27ae60 !important;
    color: #2c3e50 !important;
    border-radius: 50% !important; 
    box-shadow: 0 3px 8px rgba(0,0,0,0.1) !important;
    transition: transform 0.2s ease, background-color 0.2s ease, color 0.2s ease !important;
    z-index: 5 !important;
    padding: 0 !important;
    margin: 0 !important;
    box-sizing: border-box !important;
    overflow: hidden !important;
    animation: rotacionarEsquerda 160s linear infinite !important;

    /* A MÁGICA DO ALINHAMENTO HORIZONTAL SEM VERTICALIZAR AS LETRAS */
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    align-items: center !important;
}


/* Página Normas - Sistema Orbital - Texto das Luas */
.planeta-satelite span {
    display: block !important;
    flex-direction: unset !important;
    justify-content: unset !important;
    align-items: unset !important;
    width: 100% !important;
    height: auto !important; /* CORREÇÃO: Remove a altura total para o texto subir */
    text-align: center !important;
    line-height: 1.2 !important; /* Ajuste sutil de espaçamento entre as duas linhas */
    font-family: sans-serif !important;
    font-size: 8px !important; /* Tamanho calibrado para encaixe perfeito */
    font-weight: bold !important;
    padding: 0 !important;
    margin: 0 !important;
    background: transparent !important;
    background-color: transparent !important;
    color: inherit !important;
    white-space: nowrap !important; /* Mantém as palavras deitadas na horizontal */
    box-sizing: border-box !important;
}


/* Página Normas - Sistema Orbital - Hover Verde */
.planeta-satelite:hover {
    transform: scale(1.18) !important;
    background-color: #27ae60 !important; 
    background: #27ae60 !important;
    color: #ffffff !important; 
    border-radius: 50% !important; 
}

/* Página Normas - Sistema Orbital - Congela o movimento no Hover */
.caixa-orbital-container:hover .espaco-orbital,
.caixa-orbital-container:hover .planeta-satelite,
.caixa-orbital-container:hover .bolha-centro {
    animation-play-state: paused !important;
}

/* Página Normas - Sistema Orbital - Animações de Eixo */
@keyframes rotacionarDireita {
    from { transform: rotate(0deg); }
    to { transform: rotate(360deg); }
}
@keyframes rotacionarEsquerda {
    from { transform: rotate(0deg); }
    to { transform: rotate(-360deg); }
}
@keyframes rotacionarEsquerdaSol {
    from { transform: translate(-50%, -50%) rotate(0deg); }
    to { transform: translate(-50%, -50%) rotate(-360deg); }
}

/* Página Normas - Sistema Orbital -Limpeza do Cargo */
.caixa-orbital-container a, .cargoMoreLinks, .cargo-more-links {
    display: none !important;
}
/* Estilo para a Lua correspondente à página que já está aberta */
.planeta-satelite.pagina-ativa {
    border: 2px solid #34495e !important; /* Muda a borda para a cor escura do SOL */
    background-color: #f4f6f7 !important; /* Fundo levemente cinza */
    cursor: default !important; /* Remove o cursor de mãozinha (link) */
    pointer-events: none !important; /* Desativa qualquer clique físico no elemento */
}

/* Garante que o hover de expansão não aconteça na lua ativa */
.planeta-satelite.pagina-ativa:hover {
    transform: scale(1) !important;
    background-color: #f4f6f7 !important;
    color: #2c3e50 !important;
}
/* Caixa 2: Estilização da Máquina do Tempo */
.maquina-tempo-container {
    background-color: #fdfbf7;
    border: 1px solid #e2d7c3;
}
.maquina-tempo-container .tempo-item {
    font-family: sans-serif;
    font-size: 13px;
    color: #2c3e50;
    line-height: 1.6;
    margin-bottom: 6px;
    padding-left: 5px;
}
.maquina-tempo-container .tempo-item strong {
    color: #34495e;
}


/* Container do Histórico */
.info-historico-infografico {
    display: flex !important;
    flex-direction: column !important;
    width: 100% !important;
    gap: 15px !important;
}

/* Título superior sutil */
.titulo-bloco-vigencias {
    display: block;
    width: 100%;
    text-align: center;
    font-size: 11px;
    font-weight: bold;
    color: #7f8c8d;
    text-transform: uppercase;
    letter-spacing: 1px;
    margin-bottom: 5px;
    font-family: sans-serif;
}

/* A caixa mãe que envolve o grupo de R e A */
.bloco-grupo {
    display: flex !important;
    flex-direction: column !important;
    width: 100% !important;
    border-radius: 6px !important;
    padding: 2px !important;
    box-sizing: border-box !important;
    gap: 2px !important;
}

/* Base de cada item empilhado */
.timeline-item {
    display: flex !important;
    align-items: center !important;
    padding: 4px 10px !important;
    font-size: 14px !important;
    font-weight: bold !important;
    box-sizing: border-box !important;
    width: 50% !important; /* Ocupa metade da largura para permitir a divisão */
}

/* --- REGRAS DE ALINHAMENTO SOLICITADAS --- */
/* R (Redação) alinha na Esquerda */
.timeline-item.tipo-R {
    align-self: flex-start !important;
    margin-right: auto !important;
    margin-left: 0 !important;
    justify-content: flex-start !important;
}

/* A (Alteração) alinha na Direita */
.timeline-item.tipo-A {
    align-self: flex-end !important;
    margin-left: auto !important;
    margin-right: 0 !important;
    justify-content: flex-end !important;
}

/* Garante que o link ocupe todo o espaço e herde a cor */
.timeline-item .timeline-text a {
    color: inherit !important;
    text-decoration: none !important;
    display: inline-block !important;
    width: auto !important;
    text-align: inherit !important;
}
.timeline-item .timeline-text a:hover {
    text-decoration: underline !important;
}
/* Remove a seta de link externo padrão do MediaWiki dentro do histórico */
.timeline-item .timeline-text a.external {
    background: none !important;
    padding-right: 0 !important;
}

/* --- CORES DOS BLOCOS --- */
/* Bloco 1: Verde Vigente */
.bloco-grupo.bloco-1 { background-color: #27ae60 !important; color: #ffffff !important; }
/* Bloco 2: Cinza Claro */
.bloco-grupo.bloco-2 { background-color: #bcf4d4 !important; color: #2c3e50 !important; }
/* Bloco 3: Cinza Médio */
.bloco-grupo.bloco-3 { background-color: #cceae8 !important; color: #2c3e50 !important; }
/* Bloco 4: Cinza Escuro */
.bloco-grupo.bloco-4 { background-color: #a8dcd9 !important; color: #2c3e50 !important; }
/* Bloco 5: Cinza Profundo */
.bloco-grupo.bloco-5 { background-color: #68c3b7 !important; color: #2c3e50 !important; }
/* Bloco 6: Cinza Profundo */
.bloco-grupo.bloco-6 { background-color: #539091 !important; color: #2c3e50 !important; }
/* Bloco 7: Cinza Profundo */
.bloco-grupo.bloco-7 { background-color: ##66666 !important; color: #2c3e50 !important; }
/* Bloco 8: Cinza Profundo */
.bloco-grupo.bloco-8 { background-color: ##383838 !important; color: #ffffff !important; }
/* Bloco 9: Cinza Profundo */
.bloco-grupo.bloco-9 { background-color: #0D0D0D !important; color: #ffffff !important; }

/*  */
/* Container do Preview Histórico */
.container-preview-historico {
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    padding: 20px 0 !important;
    background: #fdfbf7 !important; /* Fundo tom de papel antigo sutil */
    border-radius: 6px !important;
    border: 1px dashed #bba887 !important; /* Borda pontilhada cor de linho */
    margin-top: 10px !important;
    overflow: hidden !important;
}

/* O Envelopador que centraliza e gerencia a física da inclinação */
.preview-velho-wrapper {
    display: block !important;
    margin: 0 auto !important;
    transition: transform 0.4s cubic-bezier(0.165, 0.84, 0.44, 1) !important;
    transform: rotate(3deg) !important; /* Inclina ligeiramente para a direita */
}

/* A Imagem Real gerada pelo MediaWiki */
.preview-velho-wrapper img {
    max-width: 140px !important; /* Reduz o tamanho físico na barra lateral */
    height: auto !important;
    border: 1px solid #c2b49a !important; /* Moldura envelhecida */
    box-shadow: 4px 4px 12px rgba(0, 0, 0, 0.15) !important; /* Sombra de folha sobreposta */
    background-color: #ffffff !important;
    padding: 6px !important;
    display: block !important;
    filter: sepia(0.25) contrast(0.95) !important; /* Efeito visual de papel antigo amarelecido */
    transition: filter 0.4s ease, box-shadow 0.4s ease !important;
}

/* INTERAÇÃO SENSACIONAL AO PASSAR O MOUSE (Efeito de aproximar da mesa) */
.preview-velho-wrapper:hover {
    transform: rotate(0deg) scale(1.12) !important; /* Desfaz a inclinação e aplica o zoom */
    cursor: zoom-in !important; /* Muda o cursor para lupa de zoom */
}

.preview-velho-wrapper:hover img {
    box-shadow: 0 15px 30px rgba(65, 50, 30, 0.25) !important; /* Sombra projeta para cima (efeito flutuante) */
    filter: sepia(0) contrast(1) !important; /* Revela a cor original e nítida do Diário Oficial */
}