MediaWiki:Common.css: mudanças entre as edições
Aparência
Sem resumo de edição |
Sem resumo de edição |
||
| (86 revisões intermediárias pelo mesmo usuário não estão sendo mostradas) | |||
| Linha 1: | Linha 1: | ||
/* ========================================================================== | |||
PAINEL DIGITAL DELOREAN - VERSÃO FINAL SIMPLIFICADA (nr.wiki.br) | |||
========================================================================== */ | |||
/* 1. Importação da Fonte Física Local (CORRIGIDA A URL COMPLETA COM A PASTA) */ | |||
@font-face { | |||
font-family: 'DeLoreanDigital'; | |||
src: url('/fonts/digital-7 (mono italic).ttf') format('truetype'), | |||
url('https://nr.wiki.br (mono italic).ttf') format('truetype'); | |||
font-weight: normal; | |||
font-style: normal; | |||
} | |||
/* 2. Placa de Metal Traseira (Cinza Alumínio Escovado com Toque de Ferrugem) */ | |||
.delorean-panel-container { | |||
background: linear-gradient(135deg, #cccccc 0%, #b3b3b3 50%, #999999 100%) !important; | |||
border: 5px double #555555 !important; /* Borda dupla simulando placa rebitada */ | |||
border-radius: 12px !important; | |||
padding: 20px 15px !important; | |||
/* Sombra externa para flutuar na sidebar + sombra interna âmbar simulando pátina/ferrugem sutil nas bordas */ | |||
box-shadow: 0 10px 25px rgba(0,0,0,0.4), inset 0 0 20px rgba(139, 90, 43, 0.25) !important; | |||
display: inline-block; | |||
width: 330px; | |||
box-sizing: border-box; | |||
margin: 0 25px !important; | |||
} | |||
/* 3. Fendas dos Visores (Efeito de Recorte Profundo no Metal) */ | |||
.delorean-display { | |||
background: #000000 !important; | |||
/* Borda escura interna simula o relevo e a profundidade do corte na chapa metálica */ | |||
border-top: 3px solid #333333 !important; | |||
border-left: 3px solid #333333 !important; | |||
border-bottom: 2px solid #ffffff !important; /* Brilho de metal na borda inferior */ | |||
border-right: 2px solid #ffffff !important; | |||
margin-bottom: 16px; | |||
padding: 10px 14px; | |||
border-radius: 6px; | |||
box-sizing: border-box; | |||
box-shadow: inset 0 4px 10px rgba(0,0,0,0.9) !important; /* Escuridão interna do visor */ | |||
} | |||
/* Placas de Identificação sob os Visores (Estilo Retrô e Seguro) */ | |||
.delorean-display .display-label { | |||
font-family: 'Arial Black', sans-serif !important; | |||
font-size: 9px !important; | |||
font-weight: bold; | |||
text-transform: uppercase; | |||
letter-spacing: 1px; | |||
/* Moldura preta idêntica ao filme */ | |||
background-color: #0c0c0c !important; | |||
background: #0c0c0c !important; | |||
color: #dddddd !important; | |||
border: 1px solid #555555 !important; | |||
border-radius: 2px !important; | |||
padding: 2px 8px !important; | |||
box-shadow: 1px 1px 3px rgba(0,0,0,0.4) !important; | |||
/* 🌟 FIX DE ESTABILIDADE: Posicionamento nativo centralizado */ | |||
display: table !important; /* Força a caixinha a abraçar apenas o texto */ | |||
margin: 6px auto 0 auto !important; /* Centraliza horizontalmente e cria espaço no topo */ | |||
position: relative !important; /* Desativa o absolute que jogava o texto para o rodapé */ | |||
left: 0 !important; | |||
transform: none !important; | |||
z-index: 10 !important; | |||
white-space: nowrap !important; | |||
} | |||
/* Ajusta o espaçamento dos visores de forma segura */ | |||
.delorean-display { | |||
margin-bottom: 16px !important; | |||
padding-bottom: 12px !important; /* Cria um respiro interno para a plaqueta preta */ | |||
} | |||
/* 4. Caixa Internas e Motores de Visores (DESBLOQUEADO PARA ENTRADA) */ | |||
.display-led-values { | |||
position: relative !important; | |||
background-color: #050505 !important; | |||
background: #050505 !important; | |||
border: none !important; | |||
box-shadow: none !important; | |||
border-radius: 3px; | |||
display: flex !important; /* 🌟 ALTERADO: Transforma em Flexbox */ | |||
align-items: center !important; /* 🌟 NOVO: Centraliza verticalmente de forma matemática */ | |||
justify-content: center !important; /* 🌟 NOVO: Centraliza horizontalmente */ | |||
height: 42px !important; | |||
box-sizing: border-box !important; | |||
overflow: hidden; | |||
} | |||
/* Garante o posicionamento relativo apenas para o dock receptivo do JS */ | |||
.delorean-panel-container .delorean-input-dock { | |||
position: relative !important; | |||
width: 100% !important; | |||
height: 100% !important; | |||
background: transparent !important; | |||
display: block !important; | |||
} | |||
/* 5. Aplicação Unificada da Fonte de 7 Segmentos e Desbloqueio Físico */ | |||
.led-digits, | |||
.led-input-field, | |||
.delorean-panel-container .delorean-input-dock input { | |||
font-family: 'DeLoreanDigital', monospace !important; | |||
font-size: 36px !important; | |||
letter-spacing: 2px !important; | |||
margin: 0 !important; | |||
outline: none !important; | |||
box-sizing: border-box !important; | |||
display: block !important; /* 🌟 ALTERADO: De table para block */ | |||
text-align: center !important; /* 🌟 NOVO: Garante centralização horizontal do texto */ | |||
/* Configuração absoluta para o input flutuar na frente e receber cliques */ | |||
position: absolute !important; | |||
left: 0 !important; | |||
top: 0 !important; | |||
width: 100% !important; | |||
height: 100% !important; | |||
line-height: 42px !important; /* Alinha verticalmente o texto interno do input */ | |||
padding: 0 !important; /* 🌟 ALTERADO: Remove o padding que causava desvio */ | |||
background: transparent !important; | |||
background-color: transparent !important; | |||
border: none !important; | |||
box-shadow: none !important; | |||
z-index: 5 !important; | |||
pointer-events: auto !important; | |||
} | |||
/* Ajuste específico apenas para as datas textuais estáticas dos dois primeiros painéis */ | |||
div.led-digits { | |||
position: relative !important; | |||
width: 100% !important; /* 🌟 NOVO: Ocupa a largura total */ | |||
height: 100% !important; /* 🌟 NOVO: Ocupa a altura total do pai */ | |||
line-height: 42px !important; /* 🌟 NOVO: Centraliza verticalmente o texto da div */ | |||
z-index: 1 !important; | |||
pointer-events: none !important; | |||
} | |||
/* 6. Estilização do Placeholder (Efeito Fantasma 88/88/8888 e Controle de Foco) */ | |||
.delorean-panel-container input::placeholder, | |||
.delorean-panel-container .delorean-input-dock input::placeholder, | |||
.led-input-field::placeholder { | |||
font-family: 'DeLoreanDigital', monospace !important; | |||
color: rgba(255, 255, 255, 0.8) !important; | |||
text-shadow: none !important; | |||
opacity: 1 !important; /* Garante que o navegador não esconda o valor */ | |||
} | |||
/* Anula qualquer tentativa do navegador de restaurar caixas brancas ao clicar */ | |||
.delorean-panel-container input::-webkit-input-placeholder, | |||
.delorean-panel-container .delorean-input-dock input::-webkit-input-placeholder { | |||
font-family: 'DeLoreanDigital', monospace !important; | |||
color: rgba(255, 255, 255, 0.8) !important; | |||
text-shadow: none !important; | |||
} | |||
/* Desativa as setas do seletor nativo do navegador para não quebrar os números do painel */ | |||
.delorean-panel-container input::-webkit-calendar-picker-indicator, | |||
.delorean-panel-container input::-webkit-inner-spin-button { | |||
display: none !important; | |||
-webkit-appearance: none !important; | |||
} | |||
/* 7. Esquema de Cores e Brilhos dos LEDs acesos */ | |||
/* Visor Vermelho (Data Nascimento - Estático) */ | |||
.display-red .display-label { color: #ff3333 !important; } | |||
.display-red .led-digits { | |||
color: #ff1111 !important; | |||
text-shadow: 0 0 10px rgba(255, 0, 0, 0.7); | |||
} | |||
/* Visor Amarelo/Âmbar (Tempo Presente - Estático) */ | |||
.display-amber .display-label { color: #ffaa00 !important; } | |||
.display-amber .led-digits { | |||
color: #ff9900 !important; | |||
text-shadow: 0 0 10px rgba(255, 170, 0, 0.7); | |||
} | |||
/* Visor Verde (Destino Pretendido - Campo Editável) */ | |||
.display-green .display-label { color: #00ff66 !important; } | |||
.display-green .led-digits, | |||
.display-green input, | |||
.led-input-field { | |||
color: #00ff66 !important; | |||
text-shadow: 0 0 10px rgba(0, 255, 51, 0.7); | |||
} | |||
/* 8. Alavanca Industrial de Ativação */ | |||
..delorean-controls { | |||
display: block !important; | |||
width: 100% !important; | |||
padding: 5px 14px 0 14px !important; | |||
box-sizing: border-box !important; | |||
clear: both !important; | |||
} | |||
.delorean-button-dock { | |||
display: block !important; | |||
width: 100% !important; | |||
} | |||
.delorean-panel-container .delorean-lever-btn { | |||
width: 100% !important; | |||
background: linear-gradient(135deg, #cc1111, #880000) !important; | |||
color: #ffffff !important; | |||
border: 2px solid #555555 !important; | |||
padding: 10px !important; | |||
font-weight: bold !important; | |||
font-size: 12px !important; | |||
text-transform: uppercase !important; | |||
letter-spacing: 1px !important; | |||
cursor: pointer !important; | |||
border-radius: 4px !important; | |||
text-shadow: 1px 1px 2px #000000 !important; | |||
transition: background 0.2s, transform 0.1s !important; | |||
font-family: sans-serif !important; | |||
margin-top: 5px !important; | |||
display: block !important; | |||
box-shadow: 0 3px 6px rgba(0,0,0,0.4) !important; | |||
} | |||
.delorean-panel-container .delorean-lever-btn:hover { | |||
background: linear-gradient(135deg, #ff2222, #aa0000) !important; | |||
} | |||
.delorean-panel-container .delorean-lever-btn:active { | |||
transform: scale(0.98) !important; | |||
} | |||
/* ========================================================================== | |||
RESTAURAÇÃO DO LAYOUT EM CAIXAS DA PÁGINA PRINCIPAL (COM BORDA SUAVE) | |||
========================================================================== */ | |||
.page-Página_principal table, | |||
.rootpage-Página_principal table { | |||
border-collapse: separate !important; | |||
border-spacing: 0 12px !important; /* Aumentei levemente para acomodar a borda respirando */ | |||
width: 100% !important; | |||
background: transparent !important; | |||
} | |||
/* Aplica o preenchimento, arredondamento e a borda suave em cada bloco de NR */ | |||
.page-Página_principal table tr td, | |||
.rootpage-Página_principal table tr td { | |||
padding: 14px 18px !important; | |||
border-radius: 6px !important; /* Arredondamento levemente maior para combinar com a borda */ | |||
border: 1px solid var(--border-color-subtle, #eaecf0) !important; /* 🌟 BORDA SUAVE */ | |||
box-shadow: 0 1px 3px rgba(0, 0, 0, 0.02) !important; /* Sombra quase invisível para dar profundidade */ | |||
box-sizing: border-box !important; | |||
} | |||
.page-Página_principal table tr, | |||
.rootpage-Página_principal table tr { | |||
display: table-row !important; | |||
} | |||
/* ========================================================================== | |||
PÁGINA NORMAS - PROPRIEDADES DOS ELEMENTOS GRÁFICOS (TABELAS E MÍDIAS) | |||
========================================================================== */ | |||
/* 1. Oculta completamente o bloco do gráfico se o valor vier nulo/vazio do banco */ | |||
.elemento-grafico.grafico-val- { | |||
display: none !important; | |||
} | |||
/* 2. Mostra o contêiner se houver valor vindo do banco */ | |||
.elemento-grafico:not(.grafico-val-) { | |||
display: block !important; | |||
clear: both !important; /* 🌟 Limpa os limites e impede altura esmagada */ | |||
width: 100% !important; | |||
height: auto !important; /* 🌟 Força o cálculo real da tabela interna */ | |||
min-height: 20px !important; | |||
margin: 0px auto !important; | |||
box-sizing: border-box !important; | |||
background: transparent !important; | |||
border: none !important; | |||
} | |||
/* 3. Força a remoção de textos fantasmas de regras antigas */ | |||
.elemento-grafico::before, | |||
.elemento-grafico:not(.grafico-val-)::before { | |||
content: "" !important; | |||
display: none !important; | |||
} | |||
/* 4. Oculta todos os blocos internos por padrão para gerenciar via regra ativa */ | |||
.bloco-midia-renderizado > div { | |||
display: none !important; | |||
} | |||
/* ========================================================================== | |||
ATIVAÇÃO ESPECÍFICA POR TIPO DE REGRA | |||
========================================================================== */ | |||
/* REGRA: TABELA (Força comportamento de bloco amplo e visível) */ | |||
.regra-ativa-tabela .render-regra-tabela { | |||
display: block !important; | |||
} | |||
/* REGRA: IMAGEM */ | |||
.regra-ativa-imagem .render-regra-imagem { | |||
display: block !important; | |||
} | |||
/* REGRA: FÓRMULA (Transforma apenas a fórmula em texto fluido/normal) */ | |||
.regra-ativa-formula .render-regra-formula { | |||
display: inline !important; | |||
} | |||
/* Se for uma fórmula, altera o contêiner pai para inline com segurança (sem afetar tabelas) */ | |||
.elemento-grafico:has(.regra-ativa-formula) { | |||
display: inline !important; | |||
clear: none !important; | |||
} | |||
/* ========================================================================== | |||
FORMATAÇÃO DE IMAGENS E TABELAS INTERNAS | |||
========================================================================== */ | |||
/* Garante que imagens nunca ultrapassem a largura útil do texto */ | |||
.render-regra-tabela img, | |||
.elemento-grafico img, | |||
.conteudo-itens-norma img { | |||
max-width: 100% !important; | |||
height: auto !important; | |||
display: block; | |||
} | |||
/* Ajuste para que tabelas de dados calculem suas colunas pelo texto em telas grandes */ | |||
.render-regra-tabela table, | |||
.conteudo-itens-norma table { | |||
max-width: 100% !important; | |||
width: auto !important; | |||
} | |||
/* Força as linhas internas da tabela de dados a aparecerem quando a tabela estiver ativa */ | |||
.render-regra-tabela table tr { | |||
display: table-row !important; | |||
} | |||
/* Ocultação padrão para elementos fora das tabelas ativas */ | |||
.linha-nivel-2, .linha-nivel-3, .linha-nivel-4 { | |||
display: none; | |||
} | |||
/* ========================================================================== | |||
RESPONSIVIDADE (CELULAR / TELAS MENORES QUE 1000PX) | |||
========================================================================== */ | |||
/* | |||
@media screen and (max-width: 1200px) { | |||
.norma-page-layout { | |||
display: block !important; | |||
width: 100% !important; | |||
} | |||
.norma-main-column { | |||
width: 100% !important; | |||
margin-bottom: 25px; | |||
} | |||
.norma-sidebar-column { | |||
width: 100% !important; | |||
display: flex; | |||
flex-direction: column; | |||
gap: 15px; | |||
} | |||
/* Adiciona a rolagem com o dedo para tabelas largas no celular */ | |||
.render-regra-tabela, | |||
.elemento-grafico { | |||
max-width: 100% !important; | |||
overflow-x: auto !important; | |||
-webkit-overflow-scrolling: touch; | |||
} | |||
} | |||
*/ | |||
/* Página Principal Container do Card com Sombra Sutil e Borda Escura */ | /* Página Principal Container do Card com Sombra Sutil e Borda Escura */ | ||
.norma-container { | .norma-container { | ||
| Linha 49: | Linha 438: | ||
/* Página Normas - Texto Principal Layout base dos itens da norma */ | /* 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; } | .conteudo-itens-norma { | ||
font-family: sans-serif; | |||
line-height: 1.6; | |||
text-align: justify; | |||
color: #2d3748; | |||
/* Hifenização por dicionário */ | |||
-webkit-hyphens: auto; | |||
-ms-hyphens: auto; | |||
hyphens: auto; | |||
/* Fallback anti-esburacamento (Se o hífen falhar, ele distribui melhor ou força a quebra) */ | |||
word-break: break-word; | |||
text-justify: inter-word; | |||
} | |||
.item-nr { margin-bottom: 3px; } | .item-nr { margin-bottom: 3px; } | ||
| Linha 65: | Linha 469: | ||
/* Página Normas - Texto Principal Formatação baseada no campo Forma */ | /* Página Normas - Texto Principal Formatação baseada no campo Forma */ | ||
.item-nr.f-1 span { font-weight: bold; } | .item-nr.f-1 span { display: block; text-align: center; font-weight: bold; } | ||
.item-nr.f-2 span { | .item-nr.f-2 span { display: block; font-weight: bold; } | ||
.item-nr.f-3 span { font-style: italic; } | .item-nr.f-3 span { font-style: italic; } | ||
.item-nr.f-4 span { vertical-align: super; font-size: 80%; } | .item-nr.f-4 span { vertical-align: super; font-size: 80%; } | ||
| Linha 73: | Linha 477: | ||
.item-nr.f-7 span { text-transform: uppercase; } | .item-nr.f-7 span { text-transform: uppercase; } | ||
.item-nr.f-8 { margin-left: 30px; } | .item-nr.f-8 { margin-left: 30px; } | ||
.item-nr.f-9 { margin-bottom: 6px; } | |||
/* Página Normas - Texto Principal Notas sobrescritas */ | /* Página Normas - Texto Principal Notas sobrescritas */ | ||
| Linha 122: | Linha 527: | ||
/* | /* ========================================================================== | ||
. | PÁGINA NORMAS - PROPRIEDADES DOS ELEMENTOS GRÁFICOS (TABELAS E MÍDIAS) | ||
.elemento-grafico | ========================================================================== */ | ||
/* 1. Oculta completamente o bloco do gráfico se o valor vier nulo/vazio do banco */ | |||
.elemento-grafico.grafico-val- { | |||
display: none !important; | display: none !important; | ||
} | } | ||
/* | /* 2. Mostra o contêiner se houver valor vindo do banco */ | ||
.elemento-grafico:not(.grafico-val-) { | .elemento-grafico:not(.grafico-val-) { | ||
display: block !important; | display: block !important; | ||
clear: both !important; /* 🌟 | clear: both !important; /* 🌟 Limpa os limites e impede altura esmagada */ | ||
width: 100% !important; | width: 100% !important; | ||
height: auto !important; | height: auto !important; /* 🌟 Força o cálculo real da tabela interna */ | ||
min-height: 20px !important; | min-height: 20px !important; | ||
margin: 0px auto !important; | margin: 0px auto !important; | ||
box-sizing: border-box !important; | box-sizing: border-box !important; | ||
| Linha 141: | Linha 548: | ||
border: none !important; | border: none !important; | ||
} | } | ||
/* | |||
/* 3. Força a remoção de textos fantasmas de regras antigas */ | |||
.elemento-grafico::before, | |||
.elemento-grafico:not(.grafico-val-)::before { | |||
content: "" !important; | |||
display: none !important; | |||
} | |||
/* 4. Oculta todos os blocos internos por padrão para gerenciar via regra ativa */ | |||
.bloco-midia-renderizado > div { | .bloco-midia-renderizado > div { | ||
display: none !important; | display: none !important; | ||
} | } | ||
/* ========================================================================== | |||
ATIVAÇÃO ESPECÍFICA POR TIPO DE REGRA | |||
========================================================================== */ | |||
/* REGRA: TABELA (Força comportamento de bloco amplo e visível) */ | |||
.regra-ativa-tabela .render-regra-tabela { | |||
display: block !important; | |||
} | |||
/* | /* REGRA: IMAGEM */ | ||
.regra-ativa-imagem .render-regra-imagem { | |||
display: block !important; | display: block !important; | ||
} | } | ||
/* | /* REGRA: FÓRMULA (Transforma apenas a fórmula em texto fluido/normal) */ | ||
.texto- | .regra-ativa-formula .render-regra-formula { | ||
display: inline !important; | |||
} | |||
/* Se for uma fórmula, altera o contêiner pai para inline com segurança (sem afetar tabelas) */ | |||
.elemento-grafico:has(.regra-ativa-formula) { | |||
display: inline !important; | |||
clear: none !important; | |||
} | |||
/* ========================================================================== | |||
FORMATAÇÃO DE IMAGENS E TABELAS INTERNAS | |||
========================================================================== */ | |||
/* Garante que imagens nunca ultrapassem a largura útil do texto */ | |||
.render-regra-tabela img, | |||
.elemento-grafico img, | |||
.conteudo-itens-norma img { | |||
max-width: 100% !important; | |||
height: auto !important; | |||
display: block; | display: block; | ||
} | } | ||
/* Página Normas - Tabelas - | /* Ajuste para que tabelas de dados calculem suas colunas pelo texto em telas grandes */ | ||
.render-regra-tabela table, | |||
.conteudo-itens-norma table { | |||
max-width: 100% !important; | |||
width: auto !important; | |||
} | |||
/* Força as linhas internas da tabela de dados a aparecerem quando a tabela estiver ativa */ | |||
.render-regra-tabela table tr { | |||
display: table-row !important; | |||
} | |||
/* Página Normas - Tabelas - 7. Estilo conteúdo de dentro da tabela (regras ativas) NÃO fique invisível */ | |||
/* 1. Visibilidade Inicial: Apenas Nível 1 aparece */ | /* 1. Visibilidade Inicial: Apenas Nível 1 aparece */ | ||
.linha-nivel-2, .linha-nivel-3, .linha-nivel-4 { | .linha-nivel-2:not(.show), .linha-nivel-3:not(.show), .linha-nivel-4:not(.show) { | ||
display: none; | display: none !important; | ||
} | } | ||
| Linha 192: | Linha 636: | ||
.linha-nivel-4 { background-color: #e8e8e8; } | .linha-nivel-4 { background-color: #e8e8e8; } | ||
.show { | .show { | ||
| Linha 240: | Linha 679: | ||
} | } | ||
/* | /* Garante o Sol perfeitamente estático e centralizado no meio do sistema solar */ | ||
.bolha-centro { | .bolha-centro { | ||
position: absolute !important; | position: absolute !important; | ||
| Linha 248: | Linha 687: | ||
background: #34495e !important; | background: #34495e !important; | ||
border-radius: 50% !important; | border-radius: 50% !important; | ||
/* Centralização por coordenadas fixa garantida pelas bordas */ | |||
top: 50% !important; | top: 50% !important; | ||
left: 50% !important; | left: 50% !important; | ||
transform: translate(-50%, -50%) | |||
/* O REMÉDIO: Removemos o !important para permitir que os keyframes apliquem o rotate */ | |||
transform: translate(-50%, -50%); | |||
animation: rotacionarEsquerdaSol 160s linear infinite !important; | animation: rotacionarEsquerdaSol 160s linear infinite !important; | ||
display: flex !important; | display: flex !important; | ||
justify-content: center !important; | justify-content: center !important; | ||
| Linha 263: | Linha 707: | ||
box-sizing: border-box !important; | box-sizing: border-box !important; | ||
} | } | ||
/* Página Normas - Sistema Orbital - Remove qualquer caixa de parágrafo residual do MediaWiki dentro do Sol */ | /* Página Normas - Sistema Orbital - Remove qualquer caixa de parágrafo residual do MediaWiki dentro do Sol */ | ||
| Linha 362: | Linha 807: | ||
/* Página Normas - Sistema Orbital -Limpeza do Cargo */ | /* Página Normas - Sistema Orbital -Limpeza do Cargo */ | ||
.caixa-orbital-container | .caixa-orbital-container .cargoMoreLinks, | ||
.caixa-orbital-container .cargo-more-links { | |||
display: none !important; | display: none !important; | ||
} | } | ||
| Linha 368: | Linha 814: | ||
.planeta-satelite.pagina-ativa { | .planeta-satelite.pagina-ativa { | ||
border: 2px solid #34495e !important; /* Muda a borda para a cor escura do SOL */ | border: 2px solid #34495e !important; /* Muda a borda para a cor escura do SOL */ | ||
background-color: # | color: #ffffff !important; | ||
background-color: #34495e !important; /* Fundo levemente cinza */ | |||
cursor: default !important; /* Remove o cursor de mãozinha (link) */ | cursor: default !important; /* Remove o cursor de mãozinha (link) */ | ||
pointer-events: none !important; /* Desativa qualquer clique físico no elemento */ | pointer-events: none !important; /* Desativa qualquer clique físico no elemento */ | ||
| Linha 379: | Linha 826: | ||
color: #2c3e50 !important; | color: #2c3e50 !important; | ||
} | } | ||
/* Acende o LED do planeta correspondente ao Anexo Ativo */ | |||
.container-satelites .planeta-satelite.pagina-ativa { | |||
background-color: #27ae60 !important; | |||
border: 2px solid #2ecc71 !important; | |||
box-shadow: 0 0 12px rgba(46, 204, 113, 0.8) !important; | |||
color: #ffffff !important; | |||
cursor: default !important; | |||
} | |||
/* Garante o contraste do texto interno do LED ativo */ | |||
.container-satelites .planeta-satelite.pagina-ativa span { | |||
color: #ffffff !important; | |||
font-weight: bold !important; | |||
} | |||
/* Caixa 2: Estilização da Máquina do Tempo */ | /* Caixa 2: Estilização da Máquina do Tempo */ | ||
.maquina-tempo-container { | .maquina-tempo-container { | ||
| Linha 385: | Linha 853: | ||
} | } | ||
.maquina-tempo-container .tempo-item { | .maquina-tempo-container .tempo-item { | ||
font-family: | font-family:'LED Digital 7'; | ||
font-size: 13px; | font-size: 13px; | ||
color: #2c3e50; | color: #2c3e50; | ||
| Linha 401: | Linha 869: | ||
display: flex !important; | display: flex !important; | ||
flex-direction: column !important; | flex-direction: column !important; | ||
width: | width: 85% !important; | ||
gap: 15px !important; | gap: 15px !important; | ||
margin: 0 25px !important; | |||
} | } | ||
| Linha 415: | Linha 884: | ||
text-transform: uppercase; | text-transform: uppercase; | ||
letter-spacing: 1px; | letter-spacing: 1px; | ||
font-family: sans-serif; | font-family: sans-serif; | ||
} | } | ||
| Linha 463: | Linha 931: | ||
text-decoration: none !important; | text-decoration: none !important; | ||
display: inline-block !important; | display: inline-block !important; | ||
width: | width: auto !important; | ||
text-align: inherit !important; | text-align: inherit !important; | ||
} | } | ||
| Linha 469: | Linha 937: | ||
text-decoration: underline !important; | text-decoration: underline !important; | ||
} | } | ||
/* Remove a seta de link externo padrão do MediaWiki dentro do histórico */ | /* Remove a seta de link externo padrão do MediaWiki dentro do histórico */ | ||
.timeline-item .timeline-text a.external { | .timeline-item .timeline-text a.external { | ||
| Linha 476: | Linha 943: | ||
} | } | ||
/* --- | |||
/* | /* */ | ||
. | /* 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 */ | ||
/* Bloco | border-radius: 6px !important; | ||
. | border: 1px dashed #bba887 !important; /* Borda pontilhada cor de linho */ | ||
margin: 0 25px !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 */ | |||
} | |||
/* ========================================================================== | |||
AJUSTE DE ANCORAGEM - ESTUDO TRANSVERSAL (nr.wiki.br) | |||
========================================================================== */ | |||
/* Garante que as propriedades da órbita datada herdem as mesmas configurações do sistema principal */ | |||
.caixa-orbital-container #sistema-orbital-historico 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; | |||
} | |||
/* Força a ocultação física da estrutura vazia no passado se o JS disparar o recuo */ | |||
.caixa-orbital-container[style*="display: none"] { | |||
display: none !important; | |||
} | |||
/* ========================================================================== | |||
ANIMAÇÃO DO VELHO LEGISLADOR (nr.wiki.br) | |||
========================================================================== */ | |||
.alquimista-loading-box { | |||
text-align: center; | |||
padding: 60px 20px; | |||
background-color: var(--background-color-neutral-subtle, #f8f9fa); | |||
border: 1px dashed var(--border-color-muted, #dadde3); | |||
border-radius: 8px; | |||
margin: 20px 0; | |||
display: flex; | |||
flex-direction: column; | |||
align-items: center; | |||
justify-content: center; | |||
} | |||
.alquimista-texto { | |||
font-family: 'Courier New', Courier, monospace; | |||
font-size: 13px; | |||
color: var(--color-subtle, #54595d); | |||
margin-top: 20px; | |||
font-weight: bold; | |||
letter-spacing: 0.5px; | |||
} | |||
/* O Pergaminho Cenográfico */ | |||
.pergaminho-animado { | |||
width: 140px; | |||
position: relative; | |||
display: flex; | |||
flex-direction: column; | |||
align-items: center; | |||
animation: pulsarPergaminho 1.8s ease-in-out infinite; | |||
} | |||
.corpo-pergaminho { | |||
width: 120px; | |||
height: 70px; | |||
background: #fdf6e2; /* Cor de papel envelhecido suave */ | |||
border-left: 2px solid #e6cfa3; | |||
border-right: 2px solid #e6cfa3; | |||
padding: 10px; | |||
box-sizing: border-box; | |||
display: flex; | |||
flex-direction: column; | |||
justify-content: space-around; | |||
} | |||
.rolo { | |||
width: 136px; | |||
height: 10px; | |||
background: linear-gradient(to bottom, #d2b48c, #8b5a2b, #d2b48c); | |||
border-radius: 4px; | |||
box-shadow: 0 2px 4px rgba(0,0,0,0.1); | |||
} | |||
/* Linhas de escrita antigas simuladas (Texto Fantasma) */ | |||
.linha-texto-fantasma { | |||
height: 4px; | |||
background-color: #dfcfad; | |||
border-radius: 2px; | |||
animation: escreverLinhas 1.8s ease-in-out infinite; | |||
} | |||
.lf-1 { width: 85%; } | |||
.lf-2 { width: 65%; animation-delay: 0.2s; } | |||
.lf-3 { width: 75%; animation-delay: 0.4s; } | |||
/* Animações de Efeito Visual Loop */ | |||
@keyframes pulsarPergaminho { | |||
0%, 100% { transform: translateY(0) scale(1); opacity: 0.85; } | |||
50% { transform: translateY(-6px) scale(1.02); opacity: 1; } | |||
} | |||
@keyframes escreverLinhas { | |||
0%, 100% { opacity: 0.4; transform: scaleX(0.95); } | |||
50% { opacity: 0.9; transform: scaleX(1); } | |||
} | |||
/* ========================================================================== | |||
/* FORMATAR H1 DOS TÍTULOS DAS PÁGINAS */ | |||
========================================================================== */ | |||
/* 1. Remove qualquer borda cinza, caixas ou linhas nativas do cabeçalho da Wiki */ | |||
#firstHeading, | |||
.firstHeading, | |||
#firstHeading div, | |||
#titulo-cargo-injetado { | |||
background: none !important; | |||
background-color: transparent !important; | |||
border: none !important; | |||
border-bottom: none !important; /* Remove a linha cinza nativa do MediaWiki */ | |||
box-shadow: none !important; | |||
padding: 0 !important; | |||
text-align: left !important; | |||
} | |||
/* 2. Controla o tamanho e o espaçamento para o CENÁRIO 3 (Páginas Atuais Presente) */ | |||
/* Reduz o tamanho gigante do H1 para o mesmo padrão elegante de 22px */ | |||
#firstHeading { | |||
font-family: sans-serif !important; | |||
font-size: 22px !important; | |||
font-weight: bold !important; | |||
color: #2d3748 !important; | |||
margin-top: 10px !important; | |||
margin-bottom: 15px !important; /* Espaço confortável para o texto de baixo começar */ | |||
text-align: left !important; /* Alinha com a margem do texto da norma */ | |||
} | |||
/* 3. Controla o comportamento do Bloco Injetado pelo JS nos CENÁRIOS 1 e 2 (Passado) */ | |||
#firstHeading #titulo-cargo-injetado { | |||
display: block !important; | |||
width: 100% !important; | |||
font-family: sans-serif !important; | |||
font-size: 18px !important; /* Tamanho ajustado dos cenários datados */ | |||
font-weight: bold !important; | |||
text-align: center !important; /* Mantém centralizado combinando com o DeLorean */ | |||
color: #2d3748 !important; | |||
letter-spacing: normal !important; | |||
line-height: 1.4 !important; | |||
margin-top: 8px !important; /* Distância ideal aproximada do relógio digital */ | |||
} | |||
/* Formatação da linha do Anexo no título principal */ | |||
#firstHeading .titulo-anexo-verde { | |||
color: #27ae60 !important; /* Verde padrão do sistema orbital */ | |||
font-size: 0.85em !important; /* Ligeiramente menor que o título da NR */ | |||
font-weight: bold !important; /* Mantém em negrito */ | |||
display: inline-block !important; | |||
margin-top: 4px !important; /* Ajuste fino de espaçamento após a quebra */ | |||
text-align: left !important; | |||
} | |||
/* Define o tamanho, cor e o espaçamento controlado dos títulos no Passado */ | |||
.topo-titulo-norma-datada { | |||
font-family: sans-serif !important; | |||
font-size: 18px !important; | |||
font-weight: bold !important; | |||
text-align: left !important; | |||
color: #2d3748 !important; | |||
letter-spacing: normal !important; | |||
line-height: 1.5 !important; /* Dá um respiro excelente se houver duas linhas */ | |||
margin-top: 10px !important; | |||
margin-bottom: 5px !important; | |||
white-space: normal !important; /* 🌟 ESSENCIAL: Permite a quebra de linha <br> funcionar aqui também */ | |||
} | |||
Edição atual tal como às 21h50min de 20 de agosto de 2026
/* ==========================================================================
PAINEL DIGITAL DELOREAN - VERSÃO FINAL SIMPLIFICADA (nr.wiki.br)
========================================================================== */
/* 1. Importação da Fonte Física Local (CORRIGIDA A URL COMPLETA COM A PASTA) */
@font-face {
font-family: 'DeLoreanDigital';
src: url('/fonts/digital-7 (mono italic).ttf') format('truetype'),
url('https://nr.wiki.br (mono italic).ttf') format('truetype');
font-weight: normal;
font-style: normal;
}
/* 2. Placa de Metal Traseira (Cinza Alumínio Escovado com Toque de Ferrugem) */
.delorean-panel-container {
background: linear-gradient(135deg, #cccccc 0%, #b3b3b3 50%, #999999 100%) !important;
border: 5px double #555555 !important; /* Borda dupla simulando placa rebitada */
border-radius: 12px !important;
padding: 20px 15px !important;
/* Sombra externa para flutuar na sidebar + sombra interna âmbar simulando pátina/ferrugem sutil nas bordas */
box-shadow: 0 10px 25px rgba(0,0,0,0.4), inset 0 0 20px rgba(139, 90, 43, 0.25) !important;
display: inline-block;
width: 330px;
box-sizing: border-box;
margin: 0 25px !important;
}
/* 3. Fendas dos Visores (Efeito de Recorte Profundo no Metal) */
.delorean-display {
background: #000000 !important;
/* Borda escura interna simula o relevo e a profundidade do corte na chapa metálica */
border-top: 3px solid #333333 !important;
border-left: 3px solid #333333 !important;
border-bottom: 2px solid #ffffff !important; /* Brilho de metal na borda inferior */
border-right: 2px solid #ffffff !important;
margin-bottom: 16px;
padding: 10px 14px;
border-radius: 6px;
box-sizing: border-box;
box-shadow: inset 0 4px 10px rgba(0,0,0,0.9) !important; /* Escuridão interna do visor */
}
/* Placas de Identificação sob os Visores (Estilo Retrô e Seguro) */
.delorean-display .display-label {
font-family: 'Arial Black', sans-serif !important;
font-size: 9px !important;
font-weight: bold;
text-transform: uppercase;
letter-spacing: 1px;
/* Moldura preta idêntica ao filme */
background-color: #0c0c0c !important;
background: #0c0c0c !important;
color: #dddddd !important;
border: 1px solid #555555 !important;
border-radius: 2px !important;
padding: 2px 8px !important;
box-shadow: 1px 1px 3px rgba(0,0,0,0.4) !important;
/* 🌟 FIX DE ESTABILIDADE: Posicionamento nativo centralizado */
display: table !important; /* Força a caixinha a abraçar apenas o texto */
margin: 6px auto 0 auto !important; /* Centraliza horizontalmente e cria espaço no topo */
position: relative !important; /* Desativa o absolute que jogava o texto para o rodapé */
left: 0 !important;
transform: none !important;
z-index: 10 !important;
white-space: nowrap !important;
}
/* Ajusta o espaçamento dos visores de forma segura */
.delorean-display {
margin-bottom: 16px !important;
padding-bottom: 12px !important; /* Cria um respiro interno para a plaqueta preta */
}
/* 4. Caixa Internas e Motores de Visores (DESBLOQUEADO PARA ENTRADA) */
.display-led-values {
position: relative !important;
background-color: #050505 !important;
background: #050505 !important;
border: none !important;
box-shadow: none !important;
border-radius: 3px;
display: flex !important; /* 🌟 ALTERADO: Transforma em Flexbox */
align-items: center !important; /* 🌟 NOVO: Centraliza verticalmente de forma matemática */
justify-content: center !important; /* 🌟 NOVO: Centraliza horizontalmente */
height: 42px !important;
box-sizing: border-box !important;
overflow: hidden;
}
/* Garante o posicionamento relativo apenas para o dock receptivo do JS */
.delorean-panel-container .delorean-input-dock {
position: relative !important;
width: 100% !important;
height: 100% !important;
background: transparent !important;
display: block !important;
}
/* 5. Aplicação Unificada da Fonte de 7 Segmentos e Desbloqueio Físico */
.led-digits,
.led-input-field,
.delorean-panel-container .delorean-input-dock input {
font-family: 'DeLoreanDigital', monospace !important;
font-size: 36px !important;
letter-spacing: 2px !important;
margin: 0 !important;
outline: none !important;
box-sizing: border-box !important;
display: block !important; /* 🌟 ALTERADO: De table para block */
text-align: center !important; /* 🌟 NOVO: Garante centralização horizontal do texto */
/* Configuração absoluta para o input flutuar na frente e receber cliques */
position: absolute !important;
left: 0 !important;
top: 0 !important;
width: 100% !important;
height: 100% !important;
line-height: 42px !important; /* Alinha verticalmente o texto interno do input */
padding: 0 !important; /* 🌟 ALTERADO: Remove o padding que causava desvio */
background: transparent !important;
background-color: transparent !important;
border: none !important;
box-shadow: none !important;
z-index: 5 !important;
pointer-events: auto !important;
}
/* Ajuste específico apenas para as datas textuais estáticas dos dois primeiros painéis */
div.led-digits {
position: relative !important;
width: 100% !important; /* 🌟 NOVO: Ocupa a largura total */
height: 100% !important; /* 🌟 NOVO: Ocupa a altura total do pai */
line-height: 42px !important; /* 🌟 NOVO: Centraliza verticalmente o texto da div */
z-index: 1 !important;
pointer-events: none !important;
}
/* 6. Estilização do Placeholder (Efeito Fantasma 88/88/8888 e Controle de Foco) */
.delorean-panel-container input::placeholder,
.delorean-panel-container .delorean-input-dock input::placeholder,
.led-input-field::placeholder {
font-family: 'DeLoreanDigital', monospace !important;
color: rgba(255, 255, 255, 0.8) !important;
text-shadow: none !important;
opacity: 1 !important; /* Garante que o navegador não esconda o valor */
}
/* Anula qualquer tentativa do navegador de restaurar caixas brancas ao clicar */
.delorean-panel-container input::-webkit-input-placeholder,
.delorean-panel-container .delorean-input-dock input::-webkit-input-placeholder {
font-family: 'DeLoreanDigital', monospace !important;
color: rgba(255, 255, 255, 0.8) !important;
text-shadow: none !important;
}
/* Desativa as setas do seletor nativo do navegador para não quebrar os números do painel */
.delorean-panel-container input::-webkit-calendar-picker-indicator,
.delorean-panel-container input::-webkit-inner-spin-button {
display: none !important;
-webkit-appearance: none !important;
}
/* 7. Esquema de Cores e Brilhos dos LEDs acesos */
/* Visor Vermelho (Data Nascimento - Estático) */
.display-red .display-label { color: #ff3333 !important; }
.display-red .led-digits {
color: #ff1111 !important;
text-shadow: 0 0 10px rgba(255, 0, 0, 0.7);
}
/* Visor Amarelo/Âmbar (Tempo Presente - Estático) */
.display-amber .display-label { color: #ffaa00 !important; }
.display-amber .led-digits {
color: #ff9900 !important;
text-shadow: 0 0 10px rgba(255, 170, 0, 0.7);
}
/* Visor Verde (Destino Pretendido - Campo Editável) */
.display-green .display-label { color: #00ff66 !important; }
.display-green .led-digits,
.display-green input,
.led-input-field {
color: #00ff66 !important;
text-shadow: 0 0 10px rgba(0, 255, 51, 0.7);
}
/* 8. Alavanca Industrial de Ativação */
..delorean-controls {
display: block !important;
width: 100% !important;
padding: 5px 14px 0 14px !important;
box-sizing: border-box !important;
clear: both !important;
}
.delorean-button-dock {
display: block !important;
width: 100% !important;
}
.delorean-panel-container .delorean-lever-btn {
width: 100% !important;
background: linear-gradient(135deg, #cc1111, #880000) !important;
color: #ffffff !important;
border: 2px solid #555555 !important;
padding: 10px !important;
font-weight: bold !important;
font-size: 12px !important;
text-transform: uppercase !important;
letter-spacing: 1px !important;
cursor: pointer !important;
border-radius: 4px !important;
text-shadow: 1px 1px 2px #000000 !important;
transition: background 0.2s, transform 0.1s !important;
font-family: sans-serif !important;
margin-top: 5px !important;
display: block !important;
box-shadow: 0 3px 6px rgba(0,0,0,0.4) !important;
}
.delorean-panel-container .delorean-lever-btn:hover {
background: linear-gradient(135deg, #ff2222, #aa0000) !important;
}
.delorean-panel-container .delorean-lever-btn:active {
transform: scale(0.98) !important;
}
/* ==========================================================================
RESTAURAÇÃO DO LAYOUT EM CAIXAS DA PÁGINA PRINCIPAL (COM BORDA SUAVE)
========================================================================== */
.page-Página_principal table,
.rootpage-Página_principal table {
border-collapse: separate !important;
border-spacing: 0 12px !important; /* Aumentei levemente para acomodar a borda respirando */
width: 100% !important;
background: transparent !important;
}
/* Aplica o preenchimento, arredondamento e a borda suave em cada bloco de NR */
.page-Página_principal table tr td,
.rootpage-Página_principal table tr td {
padding: 14px 18px !important;
border-radius: 6px !important; /* Arredondamento levemente maior para combinar com a borda */
border: 1px solid var(--border-color-subtle, #eaecf0) !important; /* 🌟 BORDA SUAVE */
box-shadow: 0 1px 3px rgba(0, 0, 0, 0.02) !important; /* Sombra quase invisível para dar profundidade */
box-sizing: border-box !important;
}
.page-Página_principal table tr,
.rootpage-Página_principal table tr {
display: table-row !important;
}
/* ==========================================================================
PÁGINA NORMAS - PROPRIEDADES DOS ELEMENTOS GRÁFICOS (TABELAS E MÍDIAS)
========================================================================== */
/* 1. Oculta completamente o bloco do gráfico se o valor vier nulo/vazio do banco */
.elemento-grafico.grafico-val- {
display: none !important;
}
/* 2. Mostra o contêiner se houver valor vindo do banco */
.elemento-grafico:not(.grafico-val-) {
display: block !important;
clear: both !important; /* 🌟 Limpa os limites e impede altura esmagada */
width: 100% !important;
height: auto !important; /* 🌟 Força o cálculo real da tabela interna */
min-height: 20px !important;
margin: 0px auto !important;
box-sizing: border-box !important;
background: transparent !important;
border: none !important;
}
/* 3. Força a remoção de textos fantasmas de regras antigas */
.elemento-grafico::before,
.elemento-grafico:not(.grafico-val-)::before {
content: "" !important;
display: none !important;
}
/* 4. Oculta todos os blocos internos por padrão para gerenciar via regra ativa */
.bloco-midia-renderizado > div {
display: none !important;
}
/* ==========================================================================
ATIVAÇÃO ESPECÍFICA POR TIPO DE REGRA
========================================================================== */
/* REGRA: TABELA (Força comportamento de bloco amplo e visível) */
.regra-ativa-tabela .render-regra-tabela {
display: block !important;
}
/* REGRA: IMAGEM */
.regra-ativa-imagem .render-regra-imagem {
display: block !important;
}
/* REGRA: FÓRMULA (Transforma apenas a fórmula em texto fluido/normal) */
.regra-ativa-formula .render-regra-formula {
display: inline !important;
}
/* Se for uma fórmula, altera o contêiner pai para inline com segurança (sem afetar tabelas) */
.elemento-grafico:has(.regra-ativa-formula) {
display: inline !important;
clear: none !important;
}
/* ==========================================================================
FORMATAÇÃO DE IMAGENS E TABELAS INTERNAS
========================================================================== */
/* Garante que imagens nunca ultrapassem a largura útil do texto */
.render-regra-tabela img,
.elemento-grafico img,
.conteudo-itens-norma img {
max-width: 100% !important;
height: auto !important;
display: block;
}
/* Ajuste para que tabelas de dados calculem suas colunas pelo texto em telas grandes */
.render-regra-tabela table,
.conteudo-itens-norma table {
max-width: 100% !important;
width: auto !important;
}
/* Força as linhas internas da tabela de dados a aparecerem quando a tabela estiver ativa */
.render-regra-tabela table tr {
display: table-row !important;
}
/* Ocultação padrão para elementos fora das tabelas ativas */
.linha-nivel-2, .linha-nivel-3, .linha-nivel-4 {
display: none;
}
/* ==========================================================================
RESPONSIVIDADE (CELULAR / TELAS MENORES QUE 1000PX)
========================================================================== */
/*
@media screen and (max-width: 1200px) {
.norma-page-layout {
display: block !important;
width: 100% !important;
}
.norma-main-column {
width: 100% !important;
margin-bottom: 25px;
}
.norma-sidebar-column {
width: 100% !important;
display: flex;
flex-direction: column;
gap: 15px;
}
/* Adiciona a rolagem com o dedo para tabelas largas no celular */
.render-regra-tabela,
.elemento-grafico {
max-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;
/* Hifenização por dicionário */
-webkit-hyphens: auto;
-ms-hyphens: auto;
hyphens: auto;
/* Fallback anti-esburacamento (Se o hífen falhar, ele distribui melhor ou força a quebra) */
word-break: break-word;
text-justify: inter-word;
}
.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 { display: block; text-align: center; font-weight: bold; }
.item-nr.f-2 span { display: block; font-weight: bold; }
.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; }
.item-nr.f-9 { margin-bottom: 6px; }
/* 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 - PROPRIEDADES DOS ELEMENTOS GRÁFICOS (TABELAS E MÍDIAS)
========================================================================== */
/* 1. Oculta completamente o bloco do gráfico se o valor vier nulo/vazio do banco */
.elemento-grafico.grafico-val- {
display: none !important;
}
/* 2. Mostra o contêiner se houver valor vindo do banco */
.elemento-grafico:not(.grafico-val-) {
display: block !important;
clear: both !important; /* 🌟 Limpa os limites e impede altura esmagada */
width: 100% !important;
height: auto !important; /* 🌟 Força o cálculo real da tabela interna */
min-height: 20px !important;
margin: 0px auto !important;
box-sizing: border-box !important;
background: transparent !important;
border: none !important;
}
/* 3. Força a remoção de textos fantasmas de regras antigas */
.elemento-grafico::before,
.elemento-grafico:not(.grafico-val-)::before {
content: "" !important;
display: none !important;
}
/* 4. Oculta todos os blocos internos por padrão para gerenciar via regra ativa */
.bloco-midia-renderizado > div {
display: none !important;
}
/* ==========================================================================
ATIVAÇÃO ESPECÍFICA POR TIPO DE REGRA
========================================================================== */
/* REGRA: TABELA (Força comportamento de bloco amplo e visível) */
.regra-ativa-tabela .render-regra-tabela {
display: block !important;
}
/* REGRA: IMAGEM */
.regra-ativa-imagem .render-regra-imagem {
display: block !important;
}
/* REGRA: FÓRMULA (Transforma apenas a fórmula em texto fluido/normal) */
.regra-ativa-formula .render-regra-formula {
display: inline !important;
}
/* Se for uma fórmula, altera o contêiner pai para inline com segurança (sem afetar tabelas) */
.elemento-grafico:has(.regra-ativa-formula) {
display: inline !important;
clear: none !important;
}
/* ==========================================================================
FORMATAÇÃO DE IMAGENS E TABELAS INTERNAS
========================================================================== */
/* Garante que imagens nunca ultrapassem a largura útil do texto */
.render-regra-tabela img,
.elemento-grafico img,
.conteudo-itens-norma img {
max-width: 100% !important;
height: auto !important;
display: block;
}
/* Ajuste para que tabelas de dados calculem suas colunas pelo texto em telas grandes */
.render-regra-tabela table,
.conteudo-itens-norma table {
max-width: 100% !important;
width: auto !important;
}
/* Força as linhas internas da tabela de dados a aparecerem quando a tabela estiver ativa */
.render-regra-tabela table tr {
display: table-row !important;
}
/* Página Normas - Tabelas - 7. 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:not(.show), .linha-nivel-3:not(.show), .linha-nivel-4:not(.show) {
display: none !important;
}
/* 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; }
.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 .cargoMoreLinks,
.caixa-orbital-container .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 */
color: #ffffff !important;
background-color: #34495e !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;
}
/* Acende o LED do planeta correspondente ao Anexo Ativo */
.container-satelites .planeta-satelite.pagina-ativa {
background-color: #27ae60 !important;
border: 2px solid #2ecc71 !important;
box-shadow: 0 0 12px rgba(46, 204, 113, 0.8) !important;
color: #ffffff !important;
cursor: default !important;
}
/* Garante o contraste do texto interno do LED ativo */
.container-satelites .planeta-satelite.pagina-ativa span {
color: #ffffff !important;
font-weight: bold !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:'LED Digital 7';
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: 85% !important;
gap: 15px !important;
margin: 0 25px !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;
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;
}
/* */
/* 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: 0 25px !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 */
}
/* ==========================================================================
AJUSTE DE ANCORAGEM - ESTUDO TRANSVERSAL (nr.wiki.br)
========================================================================== */
/* Garante que as propriedades da órbita datada herdem as mesmas configurações do sistema principal */
.caixa-orbital-container #sistema-orbital-historico 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;
}
/* Força a ocultação física da estrutura vazia no passado se o JS disparar o recuo */
.caixa-orbital-container[style*="display: none"] {
display: none !important;
}
/* ==========================================================================
ANIMAÇÃO DO VELHO LEGISLADOR (nr.wiki.br)
========================================================================== */
.alquimista-loading-box {
text-align: center;
padding: 60px 20px;
background-color: var(--background-color-neutral-subtle, #f8f9fa);
border: 1px dashed var(--border-color-muted, #dadde3);
border-radius: 8px;
margin: 20px 0;
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
}
.alquimista-texto {
font-family: 'Courier New', Courier, monospace;
font-size: 13px;
color: var(--color-subtle, #54595d);
margin-top: 20px;
font-weight: bold;
letter-spacing: 0.5px;
}
/* O Pergaminho Cenográfico */
.pergaminho-animado {
width: 140px;
position: relative;
display: flex;
flex-direction: column;
align-items: center;
animation: pulsarPergaminho 1.8s ease-in-out infinite;
}
.corpo-pergaminho {
width: 120px;
height: 70px;
background: #fdf6e2; /* Cor de papel envelhecido suave */
border-left: 2px solid #e6cfa3;
border-right: 2px solid #e6cfa3;
padding: 10px;
box-sizing: border-box;
display: flex;
flex-direction: column;
justify-content: space-around;
}
.rolo {
width: 136px;
height: 10px;
background: linear-gradient(to bottom, #d2b48c, #8b5a2b, #d2b48c);
border-radius: 4px;
box-shadow: 0 2px 4px rgba(0,0,0,0.1);
}
/* Linhas de escrita antigas simuladas (Texto Fantasma) */
.linha-texto-fantasma {
height: 4px;
background-color: #dfcfad;
border-radius: 2px;
animation: escreverLinhas 1.8s ease-in-out infinite;
}
.lf-1 { width: 85%; }
.lf-2 { width: 65%; animation-delay: 0.2s; }
.lf-3 { width: 75%; animation-delay: 0.4s; }
/* Animações de Efeito Visual Loop */
@keyframes pulsarPergaminho {
0%, 100% { transform: translateY(0) scale(1); opacity: 0.85; }
50% { transform: translateY(-6px) scale(1.02); opacity: 1; }
}
@keyframes escreverLinhas {
0%, 100% { opacity: 0.4; transform: scaleX(0.95); }
50% { opacity: 0.9; transform: scaleX(1); }
}
/* ==========================================================================
/* FORMATAR H1 DOS TÍTULOS DAS PÁGINAS */
========================================================================== */
/* 1. Remove qualquer borda cinza, caixas ou linhas nativas do cabeçalho da Wiki */
#firstHeading,
.firstHeading,
#firstHeading div,
#titulo-cargo-injetado {
background: none !important;
background-color: transparent !important;
border: none !important;
border-bottom: none !important; /* Remove a linha cinza nativa do MediaWiki */
box-shadow: none !important;
padding: 0 !important;
text-align: left !important;
}
/* 2. Controla o tamanho e o espaçamento para o CENÁRIO 3 (Páginas Atuais Presente) */
/* Reduz o tamanho gigante do H1 para o mesmo padrão elegante de 22px */
#firstHeading {
font-family: sans-serif !important;
font-size: 22px !important;
font-weight: bold !important;
color: #2d3748 !important;
margin-top: 10px !important;
margin-bottom: 15px !important; /* Espaço confortável para o texto de baixo começar */
text-align: left !important; /* Alinha com a margem do texto da norma */
}
/* 3. Controla o comportamento do Bloco Injetado pelo JS nos CENÁRIOS 1 e 2 (Passado) */
#firstHeading #titulo-cargo-injetado {
display: block !important;
width: 100% !important;
font-family: sans-serif !important;
font-size: 18px !important; /* Tamanho ajustado dos cenários datados */
font-weight: bold !important;
text-align: center !important; /* Mantém centralizado combinando com o DeLorean */
color: #2d3748 !important;
letter-spacing: normal !important;
line-height: 1.4 !important;
margin-top: 8px !important; /* Distância ideal aproximada do relógio digital */
}
/* Formatação da linha do Anexo no título principal */
#firstHeading .titulo-anexo-verde {
color: #27ae60 !important; /* Verde padrão do sistema orbital */
font-size: 0.85em !important; /* Ligeiramente menor que o título da NR */
font-weight: bold !important; /* Mantém em negrito */
display: inline-block !important;
margin-top: 4px !important; /* Ajuste fino de espaçamento após a quebra */
text-align: left !important;
}
/* Define o tamanho, cor e o espaçamento controlado dos títulos no Passado */
.topo-titulo-norma-datada {
font-family: sans-serif !important;
font-size: 18px !important;
font-weight: bold !important;
text-align: left !important;
color: #2d3748 !important;
letter-spacing: normal !important;
line-height: 1.5 !important; /* Dá um respiro excelente se houver duas linhas */
margin-top: 10px !important;
margin-bottom: 5px !important;
white-space: normal !important; /* 🌟 ESSENCIAL: Permite a quebra de linha <br> funcionar aqui também */
}