Mudanças entre as edições de "Widget:Teste"

De Wiki Gla
Ir para navegação Ir para pesquisar
m
Etiqueta: Revertido
m
 
(168 revisões intermediárias por 3 usuários não estão sendo mostradas)
Linha 1: Linha 1:
<script>
/*******************************************************************************
(function() {
* TEMA ESCURO MODERNO - WIKI GLA
    // Tab switching
* Estilo wiki.gg com paleta personalizada
    const buttons = document.querySelectorAll('.character-tab-btn');
* Substitua seu Common.css por este arquivo
    const contents = document.querySelectorAll('.character-tab-content');
*******************************************************************************/
    buttons.forEach(btn => btn.addEventListener('click', () => {
        buttons.forEach(b => b.classList.remove('active'));
        contents.forEach(c => c.classList.remove('active'));
        btn.classList.add('active');
        document.getElementById(btn.dataset.tab).classList.add('active');
    }));


    // Carousel arrows (skins)
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans:wght@400;500;600;700&display=swap');
    activateCarouselArrows();


     // Ability card click/preview
/*******************************************************************************
     const skillbar = document.querySelector('.character-skillbar');
* SISTEMA DE VARIÁVEIS - PALETA ESCURA
     const descContainer = document.querySelector('.character-description');
*******************************************************************************/
     const videoContainer = document.querySelector('.character-video-container');
:root {
     if (skillbar && descContainer) {
     /* Backgrounds */
        const skills = [...skillbar.querySelectorAll('.character-skill')];
    --page-bg: #14161b;
        skills.forEach(div => {
    --content-bg: #1f2229;
            const name = div.dataset.name;
    --content-bg-alt: #242831;
            const desc = div.dataset.desc ? div.dataset.desc.replace(/'''(.*?)'''/g, '<b>$1</b>') : '';
    --surface-bg: #2a2f38;
            const attr = div.dataset.attr || '';
   
            const video = div.dataset.video || '';
    /* Borders & Shadows */
     --border-color: #2d313a;
    --border-light: #343a46;
    --shadow-color: rgba(0, 0, 0, 0.45);
    --content-shadow: 0 8px 22px var(--shadow-color);
   
    /* Text */
    --text-primary: #e7ebf2;
    --text-secondary: #b7bfcc;
    --text-muted: #8891a0;
   
    /* Links */
    --link-color: #7ec8ff;
    --link-visited: #9aa9ff;
    --link-hover: #a7e0ff;
    --link-new: #ff6b6b;
   
    /* Accent Colors */
    --accent-primary: #459cca;
    --accent-secondary: #5684c8;
    --accent-gradient: linear-gradient(135deg, #459cca 0%, #5684c8 100%);
   
    /* Tables */
    --table-bg: #242831;
    --table-header: #2d313a;
    --table-border: #343a46;
    --table-hover: #2a303b;
    --table-stripe: #262b34;
   
    /* Forms */
    --input-bg: #242831;
    --input-border: #3d4450;
    --input-focus: #459cca;
   
    /* Scrollbar */
    --scrollbar-track: #1f2229;
    --scrollbar-thumb: #3d4450;
    --scrollbar-hover: #4a5263;
   
    /* Legacy compatibility */
    --content-text: var(--text-primary);
     --simpleSearch-bg: var(--input-bg);
     --searchInput-text: var(--text-secondary);
     --lightGray: var(--surface-bg);
    --gray: var(--border-light);
    --transparent-blue: rgba(69, 156, 202, 0.3);
    --blue: #459cca;
}
 
/*******************************************************************************
* BASE & BODY
*******************************************************************************/
html {
    scroll-behavior: smooth;
}
 
body {
    background-color: var(--page-bg);
    color: var(--text-primary);
    font-family: 'Noto Sans', sans-serif;
}
 
/* Remove imagem de fundo clara */
body::before {
    display: none !important;
}
 
/*******************************************************************************
* TIPOGRAFIA
*******************************************************************************/
body,
.mw-parser-output,
.mw-headline,
#firstHeading,
h1, h2, h3, h4, h5, h6,
p, ul, ol, li,
table, td, th, caption {
    font-family: 'Noto Sans', sans-serif !important;
    color: var(--text-primary);
}
 
h1, h2, h3, h4, h5, h6 {
    color: var(--text-primary) !important;
    border-bottom: none !important;
}
 
.mw-headline {
    border-bottom: none !important;
}
 
#firstHeading {
    border-bottom: none !important;
    color: var(--text-primary) !important;
}
 
/*******************************************************************************
* LINKS
*******************************************************************************/
a {
    color: var(--link-color) !important;
    transition: color 0.2s ease;
}
 
a:visited {
    color: var(--link-visited) !important;
}
 
a:hover {
    color: var(--link-hover) !important;
    text-decoration: none;
}
 
a.new {
    color: var(--link-new) !important;
}
 
/*******************************************************************************
* CONTENT AREA
*******************************************************************************/
#content,
.mw-body {
    background-color: var(--content-bg) !important;
    color: var(--text-primary) !important;
    border: 1px solid var(--border-color) !important;
    box-shadow: var(--content-shadow);
}
 
#mw-page-base,
#mw-head-base {
    background: transparent !important;
}
 
#mw-head-base {
    background: linear-gradient(180deg, var(--page-bg) 0%, transparent 100%) !important;
}
 
/*******************************************************************************
* SIDEBAR & NAVIGATION
*******************************************************************************/
#mw-panel {
    background: transparent;
}


            div.title = name;
#mw-panel .mw-portlet {
    background: transparent;
}


            div.addEventListener('click', () => {
#mw-panel .mw-portlet h3 {
                descContainer.innerHTML = `
    color: var(--text-muted) !important;
                    <div class="character-ability-title">
    font-size: 0.75em;
                        <h3>${name || ''}</h3>
    text-transform: uppercase;
                        <div class="character-tooltip-container">
    letter-spacing: 0.5px;
                            <button class="character-info-btn">i</button>
}
                            <span class="character-tooltip-text">
 
                                Additional info about the ability, tips or special effects.
#mw-panel .mw-portlet .vector-menu-content-list > li > a {
                            </span>
    color: var(--link-color) !important;
                        </div>
    font-size: 0.80rem !important;
                    </div>
    font-weight: 500 !important;
                    ${generateAttributesHTML(attr)}
    padding: 0.3em 0;
                    <div class="desc">${desc}</div>
    transition: color 0.2s ease, padding-left 0.2s ease;
                `;
}
                videoContainer.innerHTML = video ? `
 
                    <video width="100%" controls playsinline>
#mw-panel .mw-portlet .vector-menu-content-list > li > a:hover {
                        <source src="${video}" type="video/webm">
    color: var(--link-hover) !important;
                    </video>
    padding-left: 4px;
                ` : '';
}
                skills.forEach(c => c.classList.remove('active'));
 
                div.classList.add('active');
#p-logo {
            });
    background-color: transparent !important;
            // Limpa data-* pra não poluir o DOM
}
            ['data-name', 'data-desc', 'data-attr', 'data-video', 'data-index'].forEach(attr => div.removeAttribute(attr));
 
        });
#p-navigation {
        // Seleciona a primeira habilidade automaticamente
    background-color: transparent;
        if (skills.length) skills[0].click();
}
     }
 
#p-tb {
     display: none;
}


    // Permite scroll horizontal do skillbar via roda do mouse
/*******************************************************************************
     if (skillbar) {
* SEARCH BAR
        skillbar.addEventListener('wheel', e => {
*******************************************************************************/
            if (e.deltaY) {
#simpleSearch {
                e.preventDefault();
     background-color: var(--input-bg) !important;
                skillbar.scrollLeft += e.deltaY;
    border: 1px solid var(--input-border) !important;
            }
    border-radius: 6px;
        });
    transition: border-color 0.2s ease, box-shadow 0.2s ease;
    }
}


    // Oculta o título da página automaticamente
#simpleSearch:focus-within {
     const heading = document.querySelector('.firstHeading') || document.querySelector('.mw-first-heading');
     border-color: var(--input-focus) !important;
     if (heading) heading.style.display = 'none';
     box-shadow: 0 0 0 3px rgba(69, 156, 202, 0.2);
}


     // Faz a ficha ocupar toda a largura
#searchInput {
     ['.mw-body', '.mw-body-content', '.mw-content-ltr'].forEach(sel => {
     background-color: transparent !important;
        document.querySelectorAll(sel).forEach(el => {
     color: var(--text-primary) !important;
            el.style.width = '100vw';
    border: none !important;
            el.style.maxWidth = '100vw';
}
            el.style.margin = '0';
            el.style.padding = '0';
            el.style.background = 'transparent';
        });
    });


     // ========== FUNCTIONS ==========
#searchInput::placeholder {
     color: var(--text-muted);
}


    function activateCarouselArrows() {
#searchButton {
        const carousel = document.querySelector('.character-skins-carousel');
    filter: invert(0.8);
        const wrapper = document.querySelector('.character-skins-carousel-wrapper');
}
        const [leftBtn, rightBtn] = ['.character-skins-arrow.left', '.character-skins-arrow.right'].map(sel => document.querySelector(sel));
        let isPredictingScroll = false;


        if (!carousel || !leftBtn || !rightBtn || !wrapper) return;
#p-search {
    float: left;
    margin-left: -0.1em;
    margin-right: 1em;
    margin-top: -0.4em;
}


        const getScrollAmount = () => carousel.clientWidth * 0.6;
/*******************************************************************************
* TABS & ACTIONS
*******************************************************************************/
.vector-menu-tabs,
.vector-menu-tabs a,
#mw-head .vector-menu-dropdown h3 {
    background: none;
}


        const hideArrow = btn => {
.vector-menu-tabs li {
            if (!btn.classList.contains('disappearing') && btn.style.display !== 'none') {
    background: transparent;
                btn.classList.add('disappearing');
}
                setTimeout(() => {
                    btn.style.display = 'none';
                    btn.classList.remove('disappearing');
                }, 300);
            }
        };


        const showArrow = btn => {
.vector-menu-tabs li a {
            if (btn.style.display === 'none') {
    color: var(--text-secondary) !important;
                btn.style.display = 'inline-block';
    background: transparent;
                void btn.offsetWidth;
    transition: color 0.2s ease;
            }
}
            btn.classList.remove('disappearing');
        };


        const setArrowsState = scrollLeft => {
.vector-menu-tabs li a:hover {
            const maxScroll = carousel.scrollWidth - carousel.clientWidth;
    color: var(--link-hover) !important;
            const hasLeft = scrollLeft > 5, hasRight = scrollLeft < maxScroll - 5;
}
            hasLeft ? showArrow(leftBtn) : hideArrow(leftBtn);
            hasRight ? showArrow(rightBtn) : hideArrow(rightBtn);
            wrapper.classList.toggle('has-left', hasLeft);
            wrapper.classList.toggle('has-right', hasRight);
            carousel.style.justifyContent = (!hasLeft && !hasRight) ? 'center' : '';
        };


        const handleArrowClick = dir => {
.vector-menu-tabs .selected {
            isPredictingScroll = true;
    background: var(--content-bg) !important;
            const scrollLeft = carousel.scrollLeft, maxScroll = carousel.scrollWidth - carousel.clientWidth;
    border: 1px solid var(--border-color) !important;
            const nextScroll = dir === 'left' ? Math.max(0, scrollLeft - getScrollAmount()) : Math.min(maxScroll, scrollLeft + getScrollAmount());
    border-bottom-color: var(--content-bg) !important;
            setArrowsState(nextScroll);
    border-radius: 4px 4px 0 0;
            carousel.scrollTo({ left: nextScroll, behavior: 'smooth' });
}


            let last = -1, still = 0;
.vector-menu-tabs .selected a {
            const wait = setInterval(() => {
    color: var(--text-primary) !important;
                const current = Math.round(carousel.scrollLeft);
    font-weight: 600;
                if (current === last) {
}
                    if (++still >= 2) {
                        clearInterval(wait);
                        isPredictingScroll = false;
                        setArrowsState(current);
                    }
                } else {
                    last = current;
                    still = 0;
                }
            }, 50);
        };


        carousel.addEventListener('scroll', () => {
#p-cactions {
            if (!isPredictingScroll) setArrowsState(carousel.scrollLeft);
    background: none;
        });
    margin-top: -0.6em;
}


        new ResizeObserver(() => {
#p-cactions li {
            if (!isPredictingScroll) setArrowsState(carousel.scrollLeft);
    background: none;
        }).observe(carousel);
}


        leftBtn.addEventListener('click', () => handleArrowClick('left'));
#p-cactions li.selected {
        rightBtn.addEventListener('click', () => handleArrowClick('right'));
    background: var(--content-bg);
        setArrowsState(carousel.scrollLeft);
    border: 1px solid var(--border-color);
    }
}
 
#p-cactions li a {
    background-color: var(--surface-bg) !important;
    color: var(--link-color) !important;
}
 
.vector-menu-dropdown .vector-menu-content {
    background-color: var(--content-bg) !important;
    border: 1px solid var(--border-color) !important;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.3);
}
 
.vector-menu-dropdown .vector-menu-content li a {
    color: var(--text-primary) !important;
}
 
.vector-menu-dropdown .vector-menu-content li a:hover {
    background-color: var(--surface-bg) !important;
}


    function generateAttributesHTML(str) {
#ca-view,
        if (!str) return '';
#ca-history,
        const vals = str.split(',').map(v => v.trim());
#ca-viewsource {
        const title = ['PVE Power','PVP Power','Energy','Cooldown'];
        return `
            <div class="attribute-cards-container">
                ${vals.map((v, i) => {
                    let f = v === '-' ? '-' : parseInt(v);
                    if (i === 2 && !isNaN(f)) f = (f > 0 ? '+' : '') + f;
                    return `
                        <div class="attribute-card">
                            <span class="attribute-card-title">${title[i]}</span>
                            <h2 class="attribute-card-value">${f}${i === 3 && f !== '-' ? ' sec' : ''}</h2>
                        </div>
                    `;
                }).join('')}
            </div>`;
    }
})();
</script>
<style>
/* Esconde o título da página */
.firstHeading, .mw-first-heading {
     display: none !important;
     display: none !important;
}
}


/* Ficha centralizada, não invade lateral da wiki */
/*******************************************************************************
.character-box {
* DISCORD BUTTON
     width: 98%;
*******************************************************************************/
     max-width: 1200px;
#n-Discord {
     margin: 20px auto 40px auto;
     font-size: 10px;
     background: #222;
     line-height: 1.5em;
     border-radius: 10px;
}
     box-shadow: 0 4px 32px #000a, 0 1px 8px #2227;
 
     padding: 0;
#p-Discord-label {
     display: none;
}
 
#n-Discord a {
     color: #fff !important;
    font-weight: bold;
     border-radius: 6px;
    border: 1px solid #4c57d0;
     background-color: #5865f2;
     display: block;
     position: relative;
     position: relative;
    padding: 6px 8px 5px calc(14px + 6.5px * 2);
    box-shadow: 0 2px 8px rgba(88, 101, 242, 0.3);
    transition: all 0.2s ease;
}
#n-Discord a::after {
    content: '';
    background: url(/images/7/76/Discord-brands.png) no-repeat;
    background-size: contain;
    background-position: center;
    filter: drop-shadow(0 1px 1px rgba(0, 0, 0, 0.1));
    position: absolute;
    top: 4px;
    left: 6px;
    width: 18px;
    height: 18px;
}
#n-Discord a:hover {
    text-decoration: none;
    background-color: #7885ff;
    border-color: #6c77f0;
    transform: translateY(-1px);
    box-shadow: 0 4px 12px rgba(88, 101, 242, 0.4);
}
/*******************************************************************************
* TABLES - GENERAL
*******************************************************************************/
table {
    background-color: var(--table-bg);
    border-color: var(--table-border);
}
table th {
    background-color: var(--table-header) !important;
    color: var(--text-primary) !important;
    border-color: var(--table-border) !important;
}
table td {
    background-color: var(--table-bg) !important;
    color: var(--text-primary) !important;
    border-color: var(--table-border) !important;
}
table tr:hover td {
    background-color: var(--table-hover) !important;
}
/*******************************************************************************
* TABLE-ENHANCE
*******************************************************************************/
table.table-enhance {
    background-color: var(--table-bg);
    border: 1px solid var(--table-border);
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.2);
}
.table-enhance th,
.table-enhance td {
    border: 1px solid var(--table-border);
    color: var(--text-primary);
}
.table-enhance th {
    background-color: var(--table-header);
    color: var(--text-primary);
}
.table-enhance tr:nth-child(even) td {
    background-color: var(--table-stripe);
}
.table-enhance tr:hover td {
    background-color: var(--table-hover);
}
.table-enhance-vertical td:first-child {
    color: var(--link-color);
}
/*******************************************************************************
* WIKITABLES
*******************************************************************************/
table.wikitable,
table.wikitablec,
table.wikitablew,
table.wikitablenb,
table.wikitablewhite,
table.wikitablecenter,
table.wikitablew-tr,
table.prettytable {
    background-color: var(--table-bg) !important;
    border: 1px solid var(--table-border) !important;
}
table.wikitable th,
table.wikitablec th,
table.wikitablew th,
table.wikitablenb th,
table.wikitablewhite th,
table.wikitablecenter th,
table.wikitablew-tr th,
table.prettytable th {
    background-color: var(--table-header) !important;
    color: var(--text-primary) !important;
    border: 1px solid var(--table-border) !important;
}
table.wikitable td,
table.wikitablec td,
table.wikitablew td,
table.wikitablenb td,
table.wikitablewhite td,
table.wikitablecenter td,
table.wikitablew-tr td,
table.prettytable td {
    background-color: var(--table-bg) !important;
    color: var(--text-primary) !important;
    border: 1px solid var(--table-border) !important;
}
table.wikitable tr:hover td,
table.wikitablew tr:hover td,
table.wikitablew-tr tr:hover td {
    background-color: var(--table-hover) !important;
}
/*******************************************************************************
* JQUERY TABLESORTER
*******************************************************************************/
.jquery-tablesorter {
    background-color: var(--table-bg) !important;
    border-color: var(--table-border) !important;
}
.jquery-tablesorter tr td {
    background-color: var(--table-bg) !important;
    color: var(--text-primary) !important;
}
.jquery-tablesorter tr th {
    background-color: var(--table-header) !important;
    color: var(--text-primary) !important;
}
#mw-content-text .mw-parser-output .jquery-tablesorter {
    background-color: var(--table-bg) !important;
    color: var(--text-primary) !important;
    border-color: var(--table-border) !important;
}
/*******************************************************************************
* CARDS
*******************************************************************************/
.card {
    background-color: var(--content-bg);
    border: 1px solid var(--border-color);
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.25);
    transition: transform 0.2s ease, box-shadow 0.2s ease;
}
.card:hover {
    transform: translateY(-2px);
    box-shadow: 0 6px 20px rgba(0, 0, 0, 0.35);
}
.card-title {
    background: var(--accent-gradient);
     color: #fff;
     color: #fff;
    font-family: 'Noto Sans', sans-serif;
}
}


/* HEADER ESTRELADO */
/*******************************************************************************
.character-header {
* HOMEPAGE
     background: #4eb9e2 url('https://static.wikia.nocookie.net/onepiece/images/3/38/Background_Effects_Star.png') repeat;
*******************************************************************************/
     border-radius: 10px 10px 0 0;
.initialPage--table {
     padding: 16px 24px 8px 16px;
     background: transparent !important;
     display: flex;
}
     align-items: flex-start;
 
     position: relative;
.initialPage--table > tbody > tr > th,
     min-height: 125px;
.initialPage--table > tbody > tr > td {
    background: transparent !important;
}
 
.initialPage--title th {
    background-color: transparent !important;
    color: var(--text-primary) !important;
}
 
.initialPage--menuTitle {
    background: var(--accent-gradient);
    color: #fff;
}
 
.initialPage--menuContainer,
.initialPage--sideMenuContainer {
    background: transparent;
}
 
/*******************************************************************************
* SOCIAL MEDIA LINKS
*******************************************************************************/
.initialPage--socialMedia {
    border-top: 2px solid var(--border-light);
}
 
.initialPage--socialMediaLink {
    color: var(--text-secondary) !important;
}
 
.initialPage--socialMediaLink:visited {
    color: var(--text-secondary) !important;
}
 
.socialMedia--svg svg {
    fill: var(--text-secondary);
}
 
/* Discord */
.initialPage--socialMedia.discord > .initialPage--socialMediaLink:hover {
    color: #5865f2 !important;
}
 
.initialPage--socialMedia.discord:before {
    background: #5865f2;
}
 
.initialPage--socialMedia.discord > .initialPage--socialMediaLink:hover > .socialMedia--svg svg {
    fill: #5865f2 !important;
}
 
/* Instagram */
.initialPage--socialMedia.instagram > .initialPage--socialMediaLink:hover {
    color: #f09433 !important;
}
 
.initialPage--socialMedia.instagram:before {
    background: linear-gradient(45deg, #f09433 0%, #e6683c 25%, #dc2743 50%, #cc2366 75%, #bc1888 100%);
}
 
/* Facebook */
.initialPage--socialMedia.facebook > .initialPage--socialMediaLink:hover {
    color: #4267B2 !important;
}
 
.initialPage--socialMedia.facebook:before {
    background: #4267B2;
}
 
/*******************************************************************************
* BADGES & SECTION TITLES
*******************************************************************************/
.badge {
    background: var(--accent-gradient);
    color: #fff;
    box-shadow: rgba(69, 156, 202, 0.3) 0px 0px 0px 3px;
}
 
.section-title {
    background: var(--accent-gradient);
    color: #fff;
}
 
/*******************************************************************************
* FILTERS (CHARACTERS PAGE)
*******************************************************************************/
.filter {
    background-color: var(--content-bg);
    border: 2px solid var(--border-light);
}
 
.filter--title {
    background: var(--accent-gradient);
    border-right: 2px solid var(--border-light);
    color: #fff;
}
 
.filter--input {
    background-color: var(--input-bg);
    border: 2px solid var(--border-light);
    color: var(--text-primary);
}
 
.filter--input::placeholder {
    color: var(--text-muted);
}
 
.filter--searchButton {
    background: var(--accent-gradient);
    border: 2px solid var(--border-light);
}
 
.filter--icon img {
    filter: grayscale(0.5) brightness(0.9);
}
 
.filter--icon.active img {
    filter: grayscale(0) brightness(1);
    box-shadow: 0 0 12px rgba(69, 156, 202, 0.5);
}
 
/*******************************************************************************
* CHARACTER CARDS
*******************************************************************************/
#characters-container > div > a > img {
    filter: grayscale(0.2) brightness(0.95);
    border: 2px solid var(--border-color);
    transition: all 0.25s ease;
}
 
#characters-container > div:hover > a > img {
    filter: grayscale(0) brightness(1);
    border-color: var(--accent-primary);
    box-shadow: 0 0 20px rgba(69, 156, 202, 0.4);
    transform: scale(1.05);
}
 
/*******************************************************************************
* CHARACTER PAGE
*******************************************************************************/
.characterInfo--name {
    color: var(--text-primary) !important;
}
 
.characterInfo--contentContainer {
    background-color: var(--content-bg);
}
 
.stats--container {
    background-color: var(--content-bg);
}
 
.bar-filled {
    background: var(--accent-primary);
}
 
.bar-notFilled {
    background: var(--transparent-blue);
}
 
/*******************************************************************************
* SKILLS TABS
*******************************************************************************/
.tabsContainer table {
    background: transparent;
}
 
.tabsContainer table > tbody > tr > td {
    border-bottom: 2px solid var(--border-color);
}
 
.tab-skill {
    background-color: var(--content-bg);
    border: 2px solid transparent;
    transition: all 0.25s ease;
}
 
.tab-skill.active {
    border-color: var(--accent-primary);
    background-color: var(--surface-bg);
}
 
.tab-skill:hover {
    background-color: var(--surface-bg);
}
 
.skillInfo--name {
    color: var(--text-primary) !important;
}
 
.skillInfo--description {
    color: var(--text-secondary);
}
 
.skillInfo > div > .skillInfo--infoContainer b {
    color: var(--link-color) !important;
}
 
.skillInfo--attributesContainer > h1 {
    color: var(--text-muted) !important;
}
 
/* Scrollbar for skills */
.skillInfo--description::-webkit-scrollbar,
.tabSkill--container::-webkit-scrollbar {
    width: 8px;
    height: 8px;
}
 
.skillInfo--description::-webkit-scrollbar-track,
.tabSkill--container::-webkit-scrollbar-track {
    background-color: var(--scrollbar-track);
     border-radius: 10px;
}
 
.skillInfo--description::-webkit-scrollbar-thumb,
.tabSkill--container::-webkit-scrollbar-thumb {
    background-color: var(--scrollbar-thumb);
    border-radius: 10px;
}
 
.skillInfo--description::-webkit-scrollbar-thumb:hover,
.tabSkill--container::-webkit-scrollbar-thumb:hover {
    background-color: var(--scrollbar-hover);
}
 
/*******************************************************************************
* ATTRIBUTE CARDS
*******************************************************************************/
.attribute--cardsContainer {
    background: var(--surface-bg);
    border: 2px solid var(--border-color);
}
 
.cardAttribute--value {
    color: var(--text-primary) !important;
}
 
/*******************************************************************************
* SKINS CONTAINER
*******************************************************************************/
.skins--container {
    background-color: var(--content-bg);
}
 
.skins--container::-webkit-scrollbar {
     width: 8px;
     height: 8px;
}
 
.skins--container::-webkit-scrollbar-track {
     background-color: var(--scrollbar-track);
    border-radius: 10px;
}
 
.skins--container::-webkit-scrollbar-thumb {
     background-color: var(--scrollbar-thumb);
     border-radius: 10px;
}
}


.character-icon {
/*******************************************************************************
     width: 90px;
* CALCULATOR XP
    height: 90px;
*******************************************************************************/
    border-radius: 8px;
.calcXp--container {
    margin-right: 14px;
     background-color: var(--content-bg);
     border: 3px solid #fff;
     border: 2px solid var(--border-light);
    box-shadow: 0 2px 8px #0006;
    background: #333;
}
}


.character-header-right {
.calcXp--resultTitle {
     flex: 1;
     color: var(--text-secondary) !important;
    display: flex;
    flex-direction: column;
}
}


.character-name {
.calcXp--formItem input {
     font-size: 2.8em;
     background-color: var(--input-bg);
     font-weight: 900;
     border: 2px solid var(--border-light);
    letter-spacing: 1px;
     color: var(--text-primary);
    margin-bottom: 0.1em;
     color: #222;
    text-shadow: 1px 2px 0 #fff7, 2px 2px 6px #0003;
    font-family: 'Orbitron', sans-serif;
}
}


.character-class-list {
.calcXp--formItem span {
     display: flex;
     color: var(--link-color);
    gap: 8px;
    margin-bottom: 8px;
}
}


.character-class {
#calculate-btn {
     font-size: 1em;
     background: var(--accent-gradient);
    font-weight: bold;
    background: #17a2b8;
     color: #fff;
     color: #fff;
    border-radius: 6px;
    padding: 3px 12px;
    box-shadow: 0 1px 3px #0002;
     border: none;
     border: none;
    box-shadow: 0 4px 12px rgba(69, 156, 202, 0.3);
}
#calculate-btn:hover {
    box-shadow: 0 6px 16px rgba(69, 156, 202, 0.4);
    transform: translateY(-2px);
    background: linear-gradient(135deg, #3d8ab8 0%, #4a76b5 100%);
}
/*******************************************************************************
* ITEM INFOBOX
*******************************************************************************/
.iteminfobox {
    background: var(--content-bg);
    border: 1px solid var(--border-color);
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.3);
}
}


.character-description-top {
.iteminfobox b {
     font-size: 1.08em;
    color: var(--link-color);
     margin-bottom: 2px;
}
     color: #333;
 
     background: #bbf7f6;
/*******************************************************************************
     padding: 2px 14px;
* TOOLTIPS
*******************************************************************************/
.tooltipster-default {
     background-color: var(--content-bg) !important;
    color: var(--text-primary) !important;
    border: 1px solid var(--border-color);
    box-shadow: 0 4px 16px rgba(0, 0, 0, 0.4);
}
 
.tip2 {
     background-color: var(--content-bg);
     border: 1px solid var(--border-color);
    box-shadow: 0 4px 16px rgba(0, 0, 0, 0.4);
     color: var(--text-primary);
}
 
/*******************************************************************************
* TRANSCRIPTIONS / DIALOGS
*******************************************************************************/
.transcrições {
     background-color: var(--surface-bg);
     border-radius: 8px;
     border-radius: 8px;
     display: inline-block;
     box-shadow: 0 4px 12px rgba(0, 0, 0, 0.3);
    color: var(--text-primary);
}
 
.transcrições::before {
    background-color: var(--surface-bg);
}
 
.transcrições b,
.transcrições strong {
    color: var(--text-primary) !important;
}
 
.me {
    color: var(--text-primary);
}
 
/*******************************************************************************
* TABBER COMPONENT
*******************************************************************************/
.mw-tabber-container {
    background-color: var(--content-bg);
    border: 1px solid var(--border-color);
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.25);
}
 
.mw-tabber-tabs {
    background-color: var(--surface-bg);
    border-bottom: 2px solid var(--border-color);
}
 
.mw-tabber-tab {
    background-color: var(--surface-bg);
    border-right: 1px solid var(--border-color);
    color: var(--text-secondary);
}
 
.mw-tabber-tab:hover {
    background-color: var(--content-bg);
    color: var(--link-hover);
}
 
.mw-tabber-tab.active {
    background-color: var(--content-bg);
    color: var(--link-color);
    border-bottom: 3px solid var(--accent-primary);
}
 
.mw-tabber-content {
    background-color: var(--content-bg);
}
 
/*******************************************************************************
* PRESET ABAS
*******************************************************************************/
.tabela-abas {
    background: transparent;
}
 
.mostrar-aba {
    background-color: transparent;
}
 
.mostrar-aba:hover::after {
    background-color: var(--text-muted);
}
 
.mostrar-aba.ativa::after {
    background-color: var(--accent-primary);
}
 
.sec-aba-cem {
    color: var(--text-primary);
}
 
.aba {
    background-color: var(--content-bg);
}
 
/*******************************************************************************
* WANTED PAGE
*******************************************************************************/
#selectbox-wanted {
    background-color: var(--input-bg);
    border: 2px solid var(--border-light);
    color: var(--text-primary);
}
}


/* TABS */
.wantedPortrait--title {
.character-tabs {
     color: var(--text-primary);
     display: flex;
    gap: 8px;
    margin-top: 14px;
    margin-bottom: 6px;
    margin-left: 4px;
}
}


.character-tab-btn {
/*******************************************************************************
    padding: 5px 20px;
* GLOBAL EVENT WIDGET
     background: #333;
*******************************************************************************/
    color: #fff;
.global-event-widget {
     border: none;
     background-color: var(--content-bg);
     border: 1px solid var(--border-color);
     border-radius: 8px;
     border-radius: 8px;
     font-size: 1.09em;
     overflow: hidden;
     cursor: pointer;
}
     transition: background 0.15s;
 
#global-event-time {
    background: linear-gradient(to right, rgba(20, 22, 27, 0.9), transparent);
    color: var(--text-primary);
}
 
/*******************************************************************************
* CATEGORIES
*******************************************************************************/
#mw-normal-catlinks {
    background-color: var(--surface-bg);
     border: 1px solid var(--border-color);
     padding: 0.5em 1em;
    border-radius: 4px;
}
 
#mw-normal-catlinks ul a,
#mw-normal-catlinks a {
    color: var(--link-color) !important;
}
 
/*******************************************************************************
* TABLE OF CONTENTS
*******************************************************************************/
#toc {
    background-color: var(--surface-bg);
    border: 1px solid var(--border-color);
}
 
#toc h2 {
    color: var(--text-primary);
}
 
#toc ul li a {
    color: var(--link-color) !important;
}
 
#toc .toctogglelabel,
span.toctogglespan {
    display: none !important;
}
 
/*******************************************************************************
* IMAGE THUMBNAILS
*******************************************************************************/
.thumb {
    background-color: var(--surface-bg);
    border: 1px solid var(--border-color);
}
 
.thumbinner {
    background-color: var(--surface-bg);
    border: 1px solid var(--border-color);
}
 
.thumbcaption {
    color: var(--text-secondary) !important;
}
}


.character-tab-btn.active {
.mw-parser-output .center .thumbcaption,
     background: #156bc7;
.mw-parser-output .tright .thumbcaption {
    font-weight: bold;
     color: var(--text-secondary) !important;
}
}


/* TABS CONTEÚDO */
.magnify a {
.character-tab-content {
     display: none;
     display: none;
    background: #232124;
    padding: 20px 10px 18px 14px;
    border-radius: 0 0 10px 10px;
}
}


.character-tab-content.active {
/*******************************************************************************
     display: flex;
* EDITOR & UPLOAD
     gap: 12px;
*******************************************************************************/
    align-items: flex-start;
.wikiEditor-ui-toolbar {
     background-color: var(--surface-bg);
     border-color: var(--border-color);
}
}


/* HABILIDADES */
.wikiEditor-ui-toolbar .tabs span.tab a {
.character-skillbar {
    color: var(--text-primary) !important;
     display: flex;
}
     flex-direction: row;
 
     gap: 8px;
.wikiEditor-ui-toolbar .group .tool-select .label {
     background: #232124;
    color: var(--text-primary) !important;
     border-radius: 8px;
}
     padding: 5px 6px;
 
     margin-bottom: 7px;
.wikiEditor-ui-toolbar .group .tool-select .options .option {
     overflow-x: auto;
    color: var(--text-primary) !important;
     max-width: 92vw;
    background-color: var(--content-bg);
}
 
.wikiEditor-ui-toolbar .group .tool-select .options .option:hover {
    background-color: var(--surface-bg);
}
 
.wikiEditor-ui-toolbar .booklet > .index {
    color: var(--text-primary);
    background-color: var(--surface-bg);
}
 
.codeEditor-status-message {
    color: var(--text-primary) !important;
    background-color: var(--surface-bg);
    border-color: var(--border-color);
}
 
#msupload-div a {
    color: var(--link-color) !important;
}
 
#msupload-bottom a {
    color: var(--text-primary) !important;
}
 
#msupload-list .file {
    background: var(--surface-bg);
    border-top: 1px solid var(--border-color);
    color: var(--text-primary) !important;
}
 
/*******************************************************************************
* MISC ELEMENTS
*******************************************************************************/
.mw-destfile-warning {
     background-color: var(--surface-bg);
     border: 1px solid var(--border-color);
    color: var(--text-primary);
}
 
.mw-logline-protect {
     color: var(--text-primary) !important;
}
 
div.mw-number-text {
     color: var(--text-muted) !important;
}
 
div.mw-number-text h3 {
    color: var(--text-secondary) !important;
}
 
hr {
     border-color: var(--border-color);
}
 
ul {
     list-style-image: none;
}
 
.mw-parser-output small li,
.mw-parser-output tr i,
.mw-parser-output tr big {
    color: var(--text-primary) !important;
}
 
#contentSub,
#contentSub2 {
     margin: 0 !important;
     padding: 0 !important;
     display: none;
}
 
#footer-info-lastmod {
    display: none !important;
}
}


.character-skill {
/*******************************************************************************
    width: 44px;
* SCALE UP HOVER EFFECT
    height: 44px;
*******************************************************************************/
    border-radius: 5px;
.scaleUp-hover {
    background: #222;
     transition: all 0.25s ease;
    border: 2px solid #fbcc47;
    box-shadow: 0 2px 6px #0004;
    cursor: pointer;
     transition: transform 0.18s, box-shadow 0.15s;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
}
}


.character-skill.active, .character-skill:hover {
.scaleUp-hover:hover {
    border-color: #f9e98f;
    box-shadow: 0 0 8px #FFD70099;
     transform: scale(1.08);
     transform: scale(1.08);
    filter: brightness(1.1);
}
}


.character-skill-icon {
/*******************************************************************************
     width: 100%;
* GLOBAL SCROLLBAR
     height: 100%;
*******************************************************************************/
    object-fit: contain;
::-webkit-scrollbar {
     width: 10px;
     height: 10px;
}
}


.character-details {
::-webkit-scrollbar-track {
     background: #231e1c;
     background-color: var(--scrollbar-track);
    border-radius: 10px;
}
    box-shadow: 0 1px 4px #0002;
 
    padding: 22px 18px;
::-webkit-scrollbar-thumb {
    flex: 1;
     background-color: var(--scrollbar-thumb);
     min-width: 320px;
     border-radius: 5px;
     max-width: 600px;
}
}


.character-ability-title h3 {
::-webkit-scrollbar-thumb:hover {
     font-size: 2.2em;
     background-color: var(--scrollbar-hover);
    color: #fff;
    margin: 0 0 14px 0;
    font-weight: 700;
}
}


.attribute-cards-container {
/* Firefox */
     display: flex;
* {
     gap: 18px;
     scrollbar-width: thin;
    margin-bottom: 12px;
     scrollbar-color: var(--scrollbar-thumb) var(--scrollbar-track);
    flex-wrap: wrap;
}
}


.attribute-card {
/*******************************************************************************
     background: #33292c;
* SELECTION HIGHLIGHT
    border-radius: 7px;
*******************************************************************************/
     padding: 6px 12px;
::selection {
    text-align: center;
     background-color: rgba(69, 156, 202, 0.4);
    min-width: 90px;
     color: var(--text-primary);
}
}


.attribute-card-title {
::-moz-selection {
     font-size: 0.95em;
     background-color: rgba(69, 156, 202, 0.4);
     color: #d4d4d4;
     color: var(--text-primary);
    font-weight: bold;
}
}


.attribute-card-value {
/*******************************************************************************
     font-size: 1.18em;
* RESPONSIVE ADJUSTMENTS
    color: #fff;
*******************************************************************************/
     font-weight: bold;
@media screen and (max-width: 1024px) {
     .initialPage--sideMenuContainer .card {
        background-color: var(--content-bg);
     }
}
}


.desc {
@media screen and (max-width: 768px) {
    margin-top: 11px;
    .mw-tabber-tab {
    color: #f4f4f4;
        background-color: var(--surface-bg);
     font-size: 1.13em;
        border-bottom: 1px solid var(--border-color);
    line-height: 1.6;
     }
   
    .mw-tabber-tab.active {
        border-bottom: 3px solid var(--accent-primary);
    }
}
}


.character-video-container {
/*******************************************************************************
    flex: 1;
* VIDEO RESPONSIVO
     background: #151415;
*******************************************************************************/
     border-radius: 10px;
.video-responsivo {
    padding: 0 12px 0 10px;
     background: var(--page-bg);
    box-shadow: 0 1px 6px #0002;
     border: 1px solid var(--border-color);
    min-width: 260px;
     border-radius: 8px;
    max-width: 480px;
     overflow: hidden;
     display: flex;
    align-items: center;
     justify-content: center;
}
}


.character-video-container video {
.pagevideo {
     width: 100%;
     border: 1px solid var(--border-color);
     border-radius: 8px;
     border-radius: 8px;
     background: #000;
     background-color: var(--page-bg);
    box-shadow: 0 2px 7px #0004;
}
}


@media (max-width: 900px) {
/*******************************************************************************
    .character-box {
* UTILITY OVERRIDES (ensure dark theme)
        width: 99vw;
*******************************************************************************/
        max-width: 99vw;
.oo-ui-popupWidget-head > .oo-ui-iconElement-noIcon + .oo-ui-labelElement-label {
        padding: 0;
     color: var(--text-primary);
    }
}
    .character-header { flex-direction: column; align-items: center; text-align: center; }
 
     .character-header-right { align-items: center; }
#ca-delete a,
    .character-details, .character-video-container { min-width: 170px; max-width: 100vw; padding: 10px 5px; }
#ca-move a,
     .character-tab-content.active { flex-direction: column; }
#ca-unprotect a {
    background-color: var(--surface-bg) !important;
    border-color: var(--border-color) !important;
     color: var(--link-color) !important;
}
}
</style>

Edição atual tal como às 18h29min de 17 de janeiro de 2026

/*******************************************************************************

* TEMA ESCURO MODERNO - WIKI GLA
* Estilo wiki.gg com paleta personalizada
* Substitua seu Common.css por este arquivo
*******************************************************************************/

@import url('https://fonts.googleapis.com/css2?family=Noto+Sans:wght@400;500;600;700&display=swap');

/*******************************************************************************

* SISTEMA DE VARIÁVEIS - PALETA ESCURA
*******************************************************************************/
root {
   /* Backgrounds */
   --page-bg: #14161b;
   --content-bg: #1f2229;
   --content-bg-alt: #242831;
   --surface-bg: #2a2f38;
   
   /* Borders & Shadows */
   --border-color: #2d313a;
   --border-light: #343a46;
   --shadow-color: rgba(0, 0, 0, 0.45);
   --content-shadow: 0 8px 22px var(--shadow-color);
   
   /* Text */
   --text-primary: #e7ebf2;
   --text-secondary: #b7bfcc;
   --text-muted: #8891a0;
   
   /* Links */
   --link-color: #7ec8ff;
   --link-visited: #9aa9ff;
   --link-hover: #a7e0ff;
   --link-new: #ff6b6b;
   
   /* Accent Colors */
   --accent-primary: #459cca;
   --accent-secondary: #5684c8;
   --accent-gradient: linear-gradient(135deg, #459cca 0%, #5684c8 100%);
   
   /* Tables */
   --table-bg: #242831;
   --table-header: #2d313a;
   --table-border: #343a46;
   --table-hover: #2a303b;
   --table-stripe: #262b34;
   
   /* Forms */
   --input-bg: #242831;
   --input-border: #3d4450;
   --input-focus: #459cca;
   
   /* Scrollbar */
   --scrollbar-track: #1f2229;
   --scrollbar-thumb: #3d4450;
   --scrollbar-hover: #4a5263;
   
   /* Legacy compatibility */
   --content-text: var(--text-primary);
   --simpleSearch-bg: var(--input-bg);
   --searchInput-text: var(--text-secondary);
   --lightGray: var(--surface-bg);
   --gray: var(--border-light);
   --transparent-blue: rgba(69, 156, 202, 0.3);
   --blue: #459cca;

}

/*******************************************************************************

* BASE & BODY
*******************************************************************************/

html {

   scroll-behavior: smooth;

}

body {

   background-color: var(--page-bg);
   color: var(--text-primary);
   font-family: 'Noto Sans', sans-serif;

}

/* Remove imagem de fundo clara */ body::before {

   display: none !important;

}

/*******************************************************************************

* TIPOGRAFIA
*******************************************************************************/

body, .mw-parser-output, .mw-headline,

  1. firstHeading,

h1, h2, h3, h4, h5, h6, p, ul, ol, li, table, td, th, caption {

   font-family: 'Noto Sans', sans-serif !important;
   color: var(--text-primary);

}

h1, h2, h3, h4, h5, h6 {

   color: var(--text-primary) !important;
   border-bottom: none !important;

}

.mw-headline {

   border-bottom: none !important;

}

  1. firstHeading {
   border-bottom: none !important;
   color: var(--text-primary) !important;

}

/*******************************************************************************

* LINKS
*******************************************************************************/

a {

   color: var(--link-color) !important;
   transition: color 0.2s ease;

}

a:visited {

   color: var(--link-visited) !important;

}

a:hover {

   color: var(--link-hover) !important;
   text-decoration: none;

}

a.new {

   color: var(--link-new) !important;

}

/*******************************************************************************

* CONTENT AREA
*******************************************************************************/
  1. content,

.mw-body {

   background-color: var(--content-bg) !important;
   color: var(--text-primary) !important;
   border: 1px solid var(--border-color) !important;
   box-shadow: var(--content-shadow);

}

  1. mw-page-base,
  2. mw-head-base {
   background: transparent !important;

}

  1. mw-head-base {
   background: linear-gradient(180deg, var(--page-bg) 0%, transparent 100%) !important;

}

/*******************************************************************************

* SIDEBAR & NAVIGATION
*******************************************************************************/
  1. mw-panel {
   background: transparent;

}

  1. mw-panel .mw-portlet {
   background: transparent;

}

  1. mw-panel .mw-portlet h3 {
   color: var(--text-muted) !important;
   font-size: 0.75em;
   text-transform: uppercase;
   letter-spacing: 0.5px;

}

  1. mw-panel .mw-portlet .vector-menu-content-list > li > a {
   color: var(--link-color) !important;
   font-size: 0.80rem !important;
   font-weight: 500 !important;
   padding: 0.3em 0;
   transition: color 0.2s ease, padding-left 0.2s ease;

}

  1. mw-panel .mw-portlet .vector-menu-content-list > li > a:hover {
   color: var(--link-hover) !important;
   padding-left: 4px;

}

  1. p-logo {
   background-color: transparent !important;

}

  1. p-navigation {
   background-color: transparent;

}

  1. p-tb {
   display: none;

}

/*******************************************************************************

* SEARCH BAR
*******************************************************************************/
  1. simpleSearch {
   background-color: var(--input-bg) !important;
   border: 1px solid var(--input-border) !important;
   border-radius: 6px;
   transition: border-color 0.2s ease, box-shadow 0.2s ease;

}

  1. simpleSearch:focus-within {
   border-color: var(--input-focus) !important;
   box-shadow: 0 0 0 3px rgba(69, 156, 202, 0.2);

}

  1. searchInput {
   background-color: transparent !important;
   color: var(--text-primary) !important;
   border: none !important;

}

  1. searchInput::placeholder {
   color: var(--text-muted);

}

  1. searchButton {
   filter: invert(0.8);

}

  1. p-search {
   float: left;
   margin-left: -0.1em;
   margin-right: 1em;
   margin-top: -0.4em;

}

/*******************************************************************************

* TABS & ACTIONS
*******************************************************************************/

.vector-menu-tabs, .vector-menu-tabs a,

  1. mw-head .vector-menu-dropdown h3 {
   background: none;

}

.vector-menu-tabs li {

   background: transparent;

}

.vector-menu-tabs li a {

   color: var(--text-secondary) !important;
   background: transparent;
   transition: color 0.2s ease;

}

.vector-menu-tabs li a:hover {

   color: var(--link-hover) !important;

}

.vector-menu-tabs .selected {

   background: var(--content-bg) !important;
   border: 1px solid var(--border-color) !important;
   border-bottom-color: var(--content-bg) !important;
   border-radius: 4px 4px 0 0;

}

.vector-menu-tabs .selected a {

   color: var(--text-primary) !important;
   font-weight: 600;

}

  1. p-cactions {
   background: none;
   margin-top: -0.6em;

}

  1. p-cactions li {
   background: none;

}

  1. p-cactions li.selected {
   background: var(--content-bg);
   border: 1px solid var(--border-color);

}

  1. p-cactions li a {
   background-color: var(--surface-bg) !important;
   color: var(--link-color) !important;

}

.vector-menu-dropdown .vector-menu-content {

   background-color: var(--content-bg) !important;
   border: 1px solid var(--border-color) !important;
   box-shadow: 0 4px 12px rgba(0, 0, 0, 0.3);

}

.vector-menu-dropdown .vector-menu-content li a {

   color: var(--text-primary) !important;

}

.vector-menu-dropdown .vector-menu-content li a:hover {

   background-color: var(--surface-bg) !important;

}

  1. ca-view,
  2. ca-history,
  3. ca-viewsource {
   display: none !important;

}

/*******************************************************************************

* DISCORD BUTTON
*******************************************************************************/
  1. n-Discord {
   font-size: 10px;
   line-height: 1.5em;

}

  1. p-Discord-label {
   display: none;

}

  1. n-Discord a {
   color: #fff !important;
   font-weight: bold;
   border-radius: 6px;
   border: 1px solid #4c57d0;
   background-color: #5865f2;
   display: block;
   position: relative;
   padding: 6px 8px 5px calc(14px + 6.5px * 2);
   box-shadow: 0 2px 8px rgba(88, 101, 242, 0.3);
   transition: all 0.2s ease;

}

  1. n-Discord a::after {
   content: ;
   background: url(/images/7/76/Discord-brands.png) no-repeat;
   background-size: contain;
   background-position: center;
   filter: drop-shadow(0 1px 1px rgba(0, 0, 0, 0.1));
   position: absolute;
   top: 4px;
   left: 6px;
   width: 18px;
   height: 18px;

}

  1. n-Discord a:hover {
   text-decoration: none;
   background-color: #7885ff;
   border-color: #6c77f0;
   transform: translateY(-1px);
   box-shadow: 0 4px 12px rgba(88, 101, 242, 0.4);

}

/*******************************************************************************

* TABLES - GENERAL
*******************************************************************************/

table {

   background-color: var(--table-bg);
   border-color: var(--table-border);

}

table th {

   background-color: var(--table-header) !important;
   color: var(--text-primary) !important;
   border-color: var(--table-border) !important;

}

table td {

   background-color: var(--table-bg) !important;
   color: var(--text-primary) !important;
   border-color: var(--table-border) !important;

}

table tr:hover td {

   background-color: var(--table-hover) !important;

}

/*******************************************************************************

* TABLE-ENHANCE
*******************************************************************************/

table.table-enhance {

   background-color: var(--table-bg);
   border: 1px solid var(--table-border);
   box-shadow: 0 2px 8px rgba(0, 0, 0, 0.2);

}

.table-enhance th, .table-enhance td {

   border: 1px solid var(--table-border);
   color: var(--text-primary);

}

.table-enhance th {

   background-color: var(--table-header);
   color: var(--text-primary);

}

.table-enhance tr:nth-child(even) td {

   background-color: var(--table-stripe);

}

.table-enhance tr:hover td {

   background-color: var(--table-hover);

}

.table-enhance-vertical td:first-child {

   color: var(--link-color);

}

/*******************************************************************************

* WIKITABLES
*******************************************************************************/

table.wikitable, table.wikitablec, table.wikitablew, table.wikitablenb, table.wikitablewhite, table.wikitablecenter, table.wikitablew-tr, table.prettytable {

   background-color: var(--table-bg) !important;
   border: 1px solid var(--table-border) !important;

}

table.wikitable th, table.wikitablec th, table.wikitablew th, table.wikitablenb th, table.wikitablewhite th, table.wikitablecenter th, table.wikitablew-tr th, table.prettytable th {

   background-color: var(--table-header) !important;
   color: var(--text-primary) !important;
   border: 1px solid var(--table-border) !important;

}

table.wikitable td, table.wikitablec td, table.wikitablew td, table.wikitablenb td, table.wikitablewhite td, table.wikitablecenter td, table.wikitablew-tr td, table.prettytable td {

   background-color: var(--table-bg) !important;
   color: var(--text-primary) !important;
   border: 1px solid var(--table-border) !important;

}

table.wikitable tr:hover td, table.wikitablew tr:hover td, table.wikitablew-tr tr:hover td {

   background-color: var(--table-hover) !important;

}

/*******************************************************************************

* JQUERY TABLESORTER
*******************************************************************************/

.jquery-tablesorter {

   background-color: var(--table-bg) !important;
   border-color: var(--table-border) !important;

}

.jquery-tablesorter tr td {

   background-color: var(--table-bg) !important;
   color: var(--text-primary) !important;

}

.jquery-tablesorter tr th {

   background-color: var(--table-header) !important;
   color: var(--text-primary) !important;

}

  1. mw-content-text .mw-parser-output .jquery-tablesorter {
   background-color: var(--table-bg) !important;
   color: var(--text-primary) !important;
   border-color: var(--table-border) !important;

}

/*******************************************************************************

* CARDS
*******************************************************************************/

.card {

   background-color: var(--content-bg);
   border: 1px solid var(--border-color);
   box-shadow: 0 4px 12px rgba(0, 0, 0, 0.25);
   transition: transform 0.2s ease, box-shadow 0.2s ease;

}

.card:hover {

   transform: translateY(-2px);
   box-shadow: 0 6px 20px rgba(0, 0, 0, 0.35);

}

.card-title {

   background: var(--accent-gradient);
   color: #fff;

}

/*******************************************************************************

* HOMEPAGE
*******************************************************************************/

.initialPage--table {

   background: transparent !important;

}

.initialPage--table > tbody > tr > th, .initialPage--table > tbody > tr > td {

   background: transparent !important;

}

.initialPage--title th {

   background-color: transparent !important;
   color: var(--text-primary) !important;

}

.initialPage--menuTitle {

   background: var(--accent-gradient);
   color: #fff;

}

.initialPage--menuContainer, .initialPage--sideMenuContainer {

   background: transparent;

}

/*******************************************************************************

* SOCIAL MEDIA LINKS
*******************************************************************************/

.initialPage--socialMedia {

   border-top: 2px solid var(--border-light);

}

.initialPage--socialMediaLink {

   color: var(--text-secondary) !important;

}

.initialPage--socialMediaLink:visited {

   color: var(--text-secondary) !important;

}

.socialMedia--svg svg {

   fill: var(--text-secondary);

}

/* Discord */ .initialPage--socialMedia.discord > .initialPage--socialMediaLink:hover {

   color: #5865f2 !important;

}

.initialPage--socialMedia.discord:before {

   background: #5865f2;

}

.initialPage--socialMedia.discord > .initialPage--socialMediaLink:hover > .socialMedia--svg svg {

   fill: #5865f2 !important;

}

/* Instagram */ .initialPage--socialMedia.instagram > .initialPage--socialMediaLink:hover {

   color: #f09433 !important;

}

.initialPage--socialMedia.instagram:before {

   background: linear-gradient(45deg, #f09433 0%, #e6683c 25%, #dc2743 50%, #cc2366 75%, #bc1888 100%);

}

/* Facebook */ .initialPage--socialMedia.facebook > .initialPage--socialMediaLink:hover {

   color: #4267B2 !important;

}

.initialPage--socialMedia.facebook:before {

   background: #4267B2;

}

/*******************************************************************************

* BADGES & SECTION TITLES
*******************************************************************************/

.badge {

   background: var(--accent-gradient);
   color: #fff;
   box-shadow: rgba(69, 156, 202, 0.3) 0px 0px 0px 3px;

}

.section-title {

   background: var(--accent-gradient);
   color: #fff;

}

/*******************************************************************************

* FILTERS (CHARACTERS PAGE)
*******************************************************************************/

.filter {

   background-color: var(--content-bg);
   border: 2px solid var(--border-light);

}

.filter--title {

   background: var(--accent-gradient);
   border-right: 2px solid var(--border-light);
   color: #fff;

}

.filter--input {

   background-color: var(--input-bg);
   border: 2px solid var(--border-light);
   color: var(--text-primary);

}

.filter--input::placeholder {

   color: var(--text-muted);

}

.filter--searchButton {

   background: var(--accent-gradient);
   border: 2px solid var(--border-light);

}

.filter--icon img {

   filter: grayscale(0.5) brightness(0.9);

}

.filter--icon.active img {

   filter: grayscale(0) brightness(1);
   box-shadow: 0 0 12px rgba(69, 156, 202, 0.5);

}

/*******************************************************************************

* CHARACTER CARDS
*******************************************************************************/
  1. characters-container > div > a > img {
   filter: grayscale(0.2) brightness(0.95);
   border: 2px solid var(--border-color);
   transition: all 0.25s ease;

}

  1. characters-container > div:hover > a > img {
   filter: grayscale(0) brightness(1);
   border-color: var(--accent-primary);
   box-shadow: 0 0 20px rgba(69, 156, 202, 0.4);
   transform: scale(1.05);

}

/*******************************************************************************

* CHARACTER PAGE
*******************************************************************************/

.characterInfo--name {

   color: var(--text-primary) !important;

}

.characterInfo--contentContainer {

   background-color: var(--content-bg);

}

.stats--container {

   background-color: var(--content-bg);

}

.bar-filled {

   background: var(--accent-primary);

}

.bar-notFilled {

   background: var(--transparent-blue);

}

/*******************************************************************************

* SKILLS TABS
*******************************************************************************/

.tabsContainer table {

   background: transparent;

}

.tabsContainer table > tbody > tr > td {

   border-bottom: 2px solid var(--border-color);

}

.tab-skill {

   background-color: var(--content-bg);
   border: 2px solid transparent;
   transition: all 0.25s ease;

}

.tab-skill.active {

   border-color: var(--accent-primary);
   background-color: var(--surface-bg);

}

.tab-skill:hover {

   background-color: var(--surface-bg);

}

.skillInfo--name {

   color: var(--text-primary) !important;

}

.skillInfo--description {

   color: var(--text-secondary);

}

.skillInfo > div > .skillInfo--infoContainer b {

   color: var(--link-color) !important;

}

.skillInfo--attributesContainer > h1 {

   color: var(--text-muted) !important;

}

/* Scrollbar for skills */ .skillInfo--description::-webkit-scrollbar, .tabSkill--container::-webkit-scrollbar {

   width: 8px;
   height: 8px;

}

.skillInfo--description::-webkit-scrollbar-track, .tabSkill--container::-webkit-scrollbar-track {

   background-color: var(--scrollbar-track);
   border-radius: 10px;

}

.skillInfo--description::-webkit-scrollbar-thumb, .tabSkill--container::-webkit-scrollbar-thumb {

   background-color: var(--scrollbar-thumb);
   border-radius: 10px;

}

.skillInfo--description::-webkit-scrollbar-thumb:hover, .tabSkill--container::-webkit-scrollbar-thumb:hover {

   background-color: var(--scrollbar-hover);

}

/*******************************************************************************

* ATTRIBUTE CARDS
*******************************************************************************/

.attribute--cardsContainer {

   background: var(--surface-bg);
   border: 2px solid var(--border-color);

}

.cardAttribute--value {

   color: var(--text-primary) !important;

}

/*******************************************************************************

* SKINS CONTAINER
*******************************************************************************/

.skins--container {

   background-color: var(--content-bg);

}

.skins--container::-webkit-scrollbar {

   width: 8px;
   height: 8px;

}

.skins--container::-webkit-scrollbar-track {

   background-color: var(--scrollbar-track);
   border-radius: 10px;

}

.skins--container::-webkit-scrollbar-thumb {

   background-color: var(--scrollbar-thumb);
   border-radius: 10px;

}

/*******************************************************************************

* CALCULATOR XP
*******************************************************************************/

.calcXp--container {

   background-color: var(--content-bg);
   border: 2px solid var(--border-light);

}

.calcXp--resultTitle {

   color: var(--text-secondary) !important;

}

.calcXp--formItem input {

   background-color: var(--input-bg);
   border: 2px solid var(--border-light);
   color: var(--text-primary);

}

.calcXp--formItem span {

   color: var(--link-color);

}

  1. calculate-btn {
   background: var(--accent-gradient);
   color: #fff;
   border: none;
   box-shadow: 0 4px 12px rgba(69, 156, 202, 0.3);

}

  1. calculate-btn:hover {
   box-shadow: 0 6px 16px rgba(69, 156, 202, 0.4);
   transform: translateY(-2px);
   background: linear-gradient(135deg, #3d8ab8 0%, #4a76b5 100%);

}

/*******************************************************************************

* ITEM INFOBOX
*******************************************************************************/

.iteminfobox {

   background: var(--content-bg);
   border: 1px solid var(--border-color);
   box-shadow: 0 4px 12px rgba(0, 0, 0, 0.3);

}

.iteminfobox b {

   color: var(--link-color);

}

/*******************************************************************************

* TOOLTIPS
*******************************************************************************/

.tooltipster-default {

   background-color: var(--content-bg) !important;
   color: var(--text-primary) !important;
   border: 1px solid var(--border-color);
   box-shadow: 0 4px 16px rgba(0, 0, 0, 0.4);

}

.tip2 {

   background-color: var(--content-bg);
   border: 1px solid var(--border-color);
   box-shadow: 0 4px 16px rgba(0, 0, 0, 0.4);
   color: var(--text-primary);

}

/*******************************************************************************

* TRANSCRIPTIONS / DIALOGS
*******************************************************************************/

.transcrições {

   background-color: var(--surface-bg);
   border-radius: 8px;
   box-shadow: 0 4px 12px rgba(0, 0, 0, 0.3);
   color: var(--text-primary);

}

.transcrições::before {

   background-color: var(--surface-bg);

}

.transcrições b, .transcrições strong {

   color: var(--text-primary) !important;

}

.me {

   color: var(--text-primary);

}

/*******************************************************************************

* TABBER COMPONENT
*******************************************************************************/

.mw-tabber-container {

   background-color: var(--content-bg);
   border: 1px solid var(--border-color);
   box-shadow: 0 4px 12px rgba(0, 0, 0, 0.25);

}

.mw-tabber-tabs {

   background-color: var(--surface-bg);
   border-bottom: 2px solid var(--border-color);

}

.mw-tabber-tab {

   background-color: var(--surface-bg);
   border-right: 1px solid var(--border-color);
   color: var(--text-secondary);

}

.mw-tabber-tab:hover {

   background-color: var(--content-bg);
   color: var(--link-hover);

}

.mw-tabber-tab.active {

   background-color: var(--content-bg);
   color: var(--link-color);
   border-bottom: 3px solid var(--accent-primary);

}

.mw-tabber-content {

   background-color: var(--content-bg);

}

/*******************************************************************************

* PRESET ABAS
*******************************************************************************/

.tabela-abas {

   background: transparent;

}

.mostrar-aba {

   background-color: transparent;

}

.mostrar-aba:hover::after {

   background-color: var(--text-muted);

}

.mostrar-aba.ativa::after {

   background-color: var(--accent-primary);

}

.sec-aba-cem {

   color: var(--text-primary);

}

.aba {

   background-color: var(--content-bg);

}

/*******************************************************************************

* WANTED PAGE
*******************************************************************************/
  1. selectbox-wanted {
   background-color: var(--input-bg);
   border: 2px solid var(--border-light);
   color: var(--text-primary);

}

.wantedPortrait--title {

   color: var(--text-primary);

}

/*******************************************************************************

* GLOBAL EVENT WIDGET
*******************************************************************************/

.global-event-widget {

   background-color: var(--content-bg);
   border: 1px solid var(--border-color);
   border-radius: 8px;
   overflow: hidden;

}

  1. global-event-time {
   background: linear-gradient(to right, rgba(20, 22, 27, 0.9), transparent);
   color: var(--text-primary);

}

/*******************************************************************************

* CATEGORIES
*******************************************************************************/
  1. mw-normal-catlinks {
   background-color: var(--surface-bg);
   border: 1px solid var(--border-color);
   padding: 0.5em 1em;
   border-radius: 4px;

}

  1. mw-normal-catlinks ul a,
  2. mw-normal-catlinks a {
   color: var(--link-color) !important;

}

/*******************************************************************************

* TABLE OF CONTENTS
*******************************************************************************/
  1. toc {
   background-color: var(--surface-bg);
   border: 1px solid var(--border-color);

}

  1. toc h2 {
   color: var(--text-primary);

}

  1. toc ul li a {
   color: var(--link-color) !important;

}

  1. toc .toctogglelabel,

span.toctogglespan {

   display: none !important;

}

/*******************************************************************************

* IMAGE THUMBNAILS
*******************************************************************************/

.thumb {

   background-color: var(--surface-bg);
   border: 1px solid var(--border-color);

}

.thumbinner {

   background-color: var(--surface-bg);
   border: 1px solid var(--border-color);

}

.thumbcaption {

   color: var(--text-secondary) !important;

}

.mw-parser-output .center .thumbcaption, .mw-parser-output .tright .thumbcaption {

   color: var(--text-secondary) !important;

}

.magnify a {

   display: none;

}

/*******************************************************************************

* EDITOR & UPLOAD
*******************************************************************************/

.wikiEditor-ui-toolbar {

   background-color: var(--surface-bg);
   border-color: var(--border-color);

}

.wikiEditor-ui-toolbar .tabs span.tab a {

   color: var(--text-primary) !important;

}

.wikiEditor-ui-toolbar .group .tool-select .label {

   color: var(--text-primary) !important;

}

.wikiEditor-ui-toolbar .group .tool-select .options .option {

   color: var(--text-primary) !important;
   background-color: var(--content-bg);

}

.wikiEditor-ui-toolbar .group .tool-select .options .option:hover {

   background-color: var(--surface-bg);

}

.wikiEditor-ui-toolbar .booklet > .index {

   color: var(--text-primary);
   background-color: var(--surface-bg);

}

.codeEditor-status-message {

   color: var(--text-primary) !important;
   background-color: var(--surface-bg);
   border-color: var(--border-color);

}

  1. msupload-div a {
   color: var(--link-color) !important;

}

  1. msupload-bottom a {
   color: var(--text-primary) !important;

}

  1. msupload-list .file {
   background: var(--surface-bg);
   border-top: 1px solid var(--border-color);
   color: var(--text-primary) !important;

}

/*******************************************************************************

* MISC ELEMENTS
*******************************************************************************/

.mw-destfile-warning {

   background-color: var(--surface-bg);
   border: 1px solid var(--border-color);
   color: var(--text-primary);

}

.mw-logline-protect {

   color: var(--text-primary) !important;

}

div.mw-number-text {

   color: var(--text-muted) !important;

}

div.mw-number-text h3 {

   color: var(--text-secondary) !important;

}

hr {

   border-color: var(--border-color);

}

ul {

   list-style-image: none;

}

.mw-parser-output small li, .mw-parser-output tr i, .mw-parser-output tr big {

   color: var(--text-primary) !important;

}

  1. contentSub,
  2. contentSub2 {
   margin: 0 !important;
   padding: 0 !important;
   display: none;

}

  1. footer-info-lastmod {
   display: none !important;

}

/*******************************************************************************

* SCALE UP HOVER EFFECT
*******************************************************************************/

.scaleUp-hover {

   transition: all 0.25s ease;

}

.scaleUp-hover:hover {

   transform: scale(1.08);
   filter: brightness(1.1);

}

/*******************************************************************************

* GLOBAL SCROLLBAR
*******************************************************************************/
-webkit-scrollbar {
   width: 10px;
   height: 10px;

}

-webkit-scrollbar-track {
   background-color: var(--scrollbar-track);

}

-webkit-scrollbar-thumb {
   background-color: var(--scrollbar-thumb);
   border-radius: 5px;

}

-webkit-scrollbar-thumb:hover {
   background-color: var(--scrollbar-hover);

}

/* Firefox */

  • {
   scrollbar-width: thin;
   scrollbar-color: var(--scrollbar-thumb) var(--scrollbar-track);

}

/*******************************************************************************

* SELECTION HIGHLIGHT
*******************************************************************************/
selection {
   background-color: rgba(69, 156, 202, 0.4);
   color: var(--text-primary);

}

-moz-selection {
   background-color: rgba(69, 156, 202, 0.4);
   color: var(--text-primary);

}

/*******************************************************************************

* RESPONSIVE ADJUSTMENTS
*******************************************************************************/

@media screen and (max-width: 1024px) {

   .initialPage--sideMenuContainer .card {
       background-color: var(--content-bg);
   }

}

@media screen and (max-width: 768px) {

   .mw-tabber-tab {
       background-color: var(--surface-bg);
       border-bottom: 1px solid var(--border-color);
   }
   
   .mw-tabber-tab.active {
       border-bottom: 3px solid var(--accent-primary);
   }

}

/*******************************************************************************

* VIDEO RESPONSIVO
*******************************************************************************/

.video-responsivo {

   background: var(--page-bg);
   border: 1px solid var(--border-color);
   border-radius: 8px;
   overflow: hidden;

}

.pagevideo {

   border: 1px solid var(--border-color);
   border-radius: 8px;
   background-color: var(--page-bg);

}

/*******************************************************************************

* UTILITY OVERRIDES (ensure dark theme)
*******************************************************************************/

.oo-ui-popupWidget-head > .oo-ui-iconElement-noIcon + .oo-ui-labelElement-label {

   color: var(--text-primary);

}

  1. ca-delete a,
  2. ca-move a,
  3. ca-unprotect a {
   background-color: var(--surface-bg) !important;
   border-color: var(--border-color) !important;
   color: var(--link-color) !important;

}