MediaWiki:Common.css: Difference between revisions
Appearance
Content deleted Content added
No edit summary Tag: Reverted |
No edit summary Tag: Manual revert |
||
| Line 1: | Line 1: | ||
/* ================================================================= |
|||
/* CSS placed here will be applied to all skins. This version makes the log-in disappear*/ |
|||
Common.css — Global styles for all skins |
|||
Applies read-only mode, branding, navigation, and AI assistant. |
|||
Logged-in overrides live in MediaWiki:Group-user.css |
|||
================================================================= */ |
|||
/* ================================================================= |
|||
1. BASE MEDIAWIKI OVERRIDES (Fonts, Quotes, Math, References) |
|||
================================================================= */ |
|||
/* ======================================================= */ |
|||
/* 1. STANDARD MEDIAWIKI STYLING (Fonts, Quotes, etc.) */ |
|||
/* ======================================================= */ |
|||
cite, dfn { font-style: inherit; } |
cite, dfn { font-style: inherit; } |
||
q { quotes: '"' '"' "'" "'"; } |
q { quotes: '"' '"' "'" "'"; } |
||
| Line 17: | Line 23: | ||
.ns-talk .mw-body-content dd { margin-top: 0.4em; margin-bottom: 0.4em; } |
.ns-talk .mw-body-content dd { margin-top: 0.4em; margin-bottom: 0.4em; } |
||
/* Collapsible elements |
/* --- Collapsible elements --- */ |
||
.client-js .collapsible:not( |
.client-js .collapsible:not(.mw-made-collapsible).collapsed > tbody > tr:not(:first-child), |
||
.client-js .outercollapse .innercollapse.mw-collapsible:not( |
.client-js .outercollapse .innercollapse.mw-collapsible:not(.mw-made-collapsible) > p, |
||
.client-js .outercollapse .innercollapse.mw-collapsible:not( |
.client-js .outercollapse .innercollapse.mw-collapsible:not(.mw-made-collapsible) > table, |
||
.client-js .outercollapse .innercollapse.mw-collapsible:not( |
.client-js .outercollapse .innercollapse.mw-collapsible:not(.mw-made-collapsible) > thead + tbody, |
||
.client-js .outercollapse .innercollapse.mw-collapsible:not( |
.client-js .outercollapse .innercollapse.mw-collapsible:not(.mw-made-collapsible) tr:not(:first-child), |
||
.client-js .outercollapse .innercollapse.mw-collapsible:not( |
.client-js .outercollapse .innercollapse.mw-collapsible:not(.mw-made-collapsible) .mw-collapsible-content, |
||
#editpage-specialchars { |
#editpage-specialchars { |
||
display: none; |
display: none; |
||
| Line 30: | Line 36: | ||
.references { margin-bottom: 0.5em; } |
.references { margin-bottom: 0.5em; } |
||
/* Cite |
/* --- Cite link styling --- */ |
||
span[ |
span[rel="mw:referencedBy"] { counter-reset: mw-ref-linkback 0; } |
||
span[ |
span[rel="mw:referencedBy"] > a::before { |
||
content: counter( |
content: counter(mw-ref-linkback, lower-alpha); |
||
font-size: 80%; font-weight: bold; font-style: italic; |
font-size: 80%; font-weight: bold; font-style: italic; |
||
} |
} |
||
a[ |
a[rel="mw:referencedBy"]::before { font-weight: bold; content: "^"; } |
||
span[ |
span[rel="mw:referencedBy"]::before { content: "^ "; } |
||
.mw-parser-output .mw-collapsible-toggle:not(.mw-ui-button) { |
.mw-parser-output .mw-collapsible-toggle:not(.mw-ui-button) { |
||
| Line 45: | Line 51: | ||
.wikitable td ul, .wikitable td ol, .wikitable td dl { text-align: left; } |
.wikitable td ul, .wikitable td ol, .wikitable td dl { text-align: left; } |
||
/* PDF |
/* --- PDF icons --- */ |
||
.mw-parser-output a[href$=".pdf"].external, |
.mw-parser-output a[href$=".pdf"].external, |
||
.mw-parser-output a[href*=".pdf?"].external, |
.mw-parser-output a[href*=".pdf?"].external, |
||
| Line 56: | Line 62: | ||
} |
} |
||
/* Warnings and |
/* --- Warnings and notices --- */ |
||
.mw-warning-with-logexcerpt.mw-warning-with-logexcerpt.mw-warning-with-logexcerpt, |
.mw-warning-with-logexcerpt.mw-warning-with-logexcerpt.mw-warning-with-logexcerpt, |
||
div.mw-lag-warn-high, div.mw-cascadeprotectedwarning, div#mw-protect-cascadeon { |
div.mw-lag-warn-high, div.mw-cascadeprotectedwarning, div#mw-protect-cascadeon { |
||
| Line 68: | Line 74: | ||
@media (min-width: 640px) { |
@media (min-width: 640px) { |
||
figure[typeof~= |
figure[typeof~="mw:File/Thumb"], figure[typeof~="mw:File/Frame"], .thumbinner { min-width: 100px; } |
||
} |
} |
||
#mw-subcategories, #mw-pages, #mw-category-media, #filehistory, #wikiPreview, #wikiDiff { clear: both; } |
#mw-subcategories, #mw-pages, #mw-category-media, #filehistory, #wikiPreview, #wikiDiff { clear: both; } |
||
/* |
/* --- Permission groups (hidden by default) --- */ |
||
.checkuser-show, .sysop-show, .abusefilter-show, .abusefilter-helper-show, |
.checkuser-show, .sysop-show, .abusefilter-show, .abusefilter-helper-show, |
||
.patroller-show, .templateeditor-show, .extendedmover-show, .extendedconfirmed-show, |
.patroller-show, .templateeditor-show, .extendedmover-show, .extendedconfirmed-show, |
||
| Line 84: | Line 90: | ||
ul.permissions-errors { margin: 0; } |
ul.permissions-errors { margin: 0; } |
||
ul.permissions-errors > li { list-style: none; } |
ul.permissions-errors > li { list-style: none; } |
||
/* --- Math rendering --- */ |
|||
span.mwe-math-mathml-inline { font-size: 118%; } |
span.mwe-math-mathml-inline { font-size: 118%; } |
||
.mwe-math-fallback-image-display, .mwe-math-mathml-display { |
.mwe-math-fallback-image-display, .mwe-math-mathml-display { |
||
| Line 101: | Line 109: | ||
.mw-special-Book #coll-downloadbox { display: none; } |
.mw-special-Book #coll-downloadbox { display: none; } |
||
/* Infoboxes */ |
/* --- Infoboxes --- */ |
||
.infobox { |
.infobox { |
||
border: 1px solid #a2a9b1; color: black; padding: 0.2em; |
border: 1px solid #a2a9b1; color: black; padding: 0.2em; |
||
| Line 122: | Line 130: | ||
.infobox .infobox-navbar { text-align: right; } |
.infobox .infobox-navbar { text-align: right; } |
||
/* --- Text utilities --- */ |
|||
.wikitable.plainrowheaders th[scope=row], .wikitable.plainrowheaders th[scope=rowgroup] { |
.wikitable.plainrowheaders th[scope=row], .wikitable.plainrowheaders th[scope=rowgroup] { |
||
font-weight: normal; text-align: left; |
font-weight: normal; text-align: left; |
||
| Line 141: | Line 150: | ||
@media screen { .nochecker .gallerybox .thumb img { background-image: none; } } |
@media screen { .nochecker .gallerybox .thumb img { background-image: none; } } |
||
/* YouTube |
/* --- YouTube embeds --- */ |
||
.mw-parser-output iframe[src*="youtube.com"], |
.mw-parser-output iframe[src*="youtube.com"], |
||
.mw-parser-output iframe[src*="youtube-nocookie.com"] { |
.mw-parser-output iframe[src*="youtube-nocookie.com"] { |
||
| Line 148: | Line 157: | ||
} |
} |
||
/* ======================================================= */ |
|||
/* RESTORED CAPSACH TOC (Fixed: No "X", Clear Title) */ |
|||
/* ======================================================= */ |
|||
/* ================================================================= |
|||
/* CapSach — Mobile TOC overlay (all skins) */ |
|||
2. LAYOUT & SPACING |
|||
#cps-open-toc { |
|||
================================================================= */ |
|||
position: fixed; |
|||
display: none; |
|||
} |
|||
/* |
/* --- Content width & readability --- */ |
||
#content { |
|||
#cps-toc-overlay { |
|||
max-width: 900px; |
|||
position: fixed; inset: 0; |
|||
margin: 0 auto; |
|||
background: rgba(0,0,0,0.4); |
|||
line-height: 1.6; |
|||
z-index: 1004; |
|||
} |
} |
||
#cps-toc-overlay.is-open { display: block; } |
|||
/* --- |
/* --- Header reset (invisible container for floating buttons) --- */ |
||
.header-container.header-chrome { |
|||
#cps-toc-panel { |
|||
position: fixed; |
position: fixed !important; |
||
top: 0 !important; left: 0 !important; right: 0 !important; |
|||
height: 60px !important; |
|||
/* CHANGED: Set to 0 to start exactly at the top */ |
|||
z-index: 1000 !important; |
|||
pointer-events: none !important; |
|||
/* HORIZONTAL CENTERING */ |
|||
left: 0 !important; |
|||
right: 0 !important; |
|||
margin: 0 auto !important; |
|||
bottom: auto !important; |
|||
/* WIDTH CONSTRAINT */ |
|||
width: 100% !important; |
|||
max-width: 900px !important; |
|||
/* CHANGED: Increased height since we gained the top space back */ |
|||
/* Was (100vh - 150px), now allowing it to go further down */ |
|||
max-height: calc(100vh - 60px) !important; |
|||
/* APPEARANCE */ |
|||
border-radius: 0 !important; |
|||
background: #ffffff !important; |
|||
color: #202122 !important; |
|||
box-shadow: 0 10px 30px rgba(0,0,0,0.15) !important; |
|||
padding: 15px !important; |
|||
box-sizing: border-box !important; |
|||
/* SCROLLING */ |
|||
overflow-y: auto !important; |
|||
-webkit-overflow-scrolling: touch; |
|||
/* VISIBILITY */ |
|||
z-index: 1005 !important; |
|||
display: none; |
|||
} |
} |
||
/* |
/* Transparent header (Minerva) */ |
||
.header-container.header-chrome, |
|||
.is-open #cps-toc-panel, |
|||
.minerva-header { |
|||
#cps-toc-overlay.is-open + #cps-toc-panel, |
|||
#cps-toc-panel[style*="display: block"] { |
|||
display: block !important; |
|||
} |
|||
/* --- 1. RESET THE CONTAINER (Fixes the "part above" issue) --- */ |
|||
/* We remove all spacing/color from the wrapper so it disappears */ |
|||
#cps-toc-header { |
|||
background: transparent !important; |
background: transparent !important; |
||
background-color: transparent !important; |
|||
margin: 0 !important; |
|||
border: none !important; |
border: none !important; |
||
box-shadow: none !important; |
|||
} |
} |
||
.header-container .navigation-drawer { display: none !important; } |
|||
/* --- 2. STYLE THE TITLE TEXT AS THE GREY BLOCK --- */ |
|||
/* We target the h2 directly so the color sticks to the text */ |
|||
/* --- Top margin resets (remove white gap) --- */ |
|||
#cps-toc-panel > h2, |
|||
body.skin-minerva { padding-top: 0 !important; } |
|||
#cps-toc-title { |
|||
/* THE BACKGROUND COLOR */ |
|||
#content, |
|||
background-color: #F8F9FA !important; |
|||
#content.mw-body, |
|||
.mw-body { |
|||
/* FULL WIDTH TRICK */ |
|||
margin-top: 0 !important; |
|||
/* We pull the text element OUT of the padding to touch the edges */ |
|||
padding-top: 0 !important; |
|||
margin-right: -15px !important; |
|||
margin-top: -15px !important; /* Pulls it to the very top */ |
|||
/* HEIGHT & SPACING */ |
|||
padding-top: 20px !important; |
|||
padding-bottom: 20px !important; |
|||
/* Pushes the link list down so it doesn't overlap */ |
|||
margin-bottom: 15px !important; |
|||
/* BORDER SEPARATOR */ |
|||
border-bottom: 1px solid #eaecf0 !important; |
|||
/* TEXT STYLING */ |
|||
display: block !important; |
|||
width: auto !important; /* Let margins control width */ |
|||
text-align: center !important; |
|||
color: #202122 !important; |
|||
font-size: 18px !important; |
|||
font-family: sans-serif !important; |
|||
font-weight: bold !important; /* Tries to force bold */ |
|||
} |
} |
||
.banner-container, |
|||
/* HIDE THE CLOSE BUTTON ("X") */ |
|||
#siteNotice { |
|||
#cps-toc-close { |
|||
padding: 0 !important; |
|||
margin: 0 !important; |
|||
} |
} |
||
.pre-content, |
|||
/* --- LIST STYLING --- */ |
|||
.page-heading, |
|||
#cps-toc-list { |
|||
.firstHeading { |
|||
list-style: none; margin: 0; padding: 0; |
|||
margin-top: 0 !important; |
|||
padding-top: 0 !important; |
|||
} |
} |
||
#cps-toc-list li { margin: 0; } |
|||
/* Push title down so it clears the invisible header */ |
|||
/* Default Link Styling */ |
|||
.pre-content.heading-holder { |
|||
#cps-toc-list a { |
|||
padding-top: 70px !important; /* 60px header + 10px visual space */ |
|||
display: block; padding: 12px 10px; |
|||
display: block !important; |
|||
border-bottom: 1px solid #f8f8f8; |
|||
text-decoration: none; |
|||
color: #202122; |
|||
font-size: 15px; |
|||
line-height: 1.4; |
|||
} |
} |
||
@media (prefers-reduced-motion: reduce) { |
|||
#cps-toc-list a:active { |
|||
html { scroll-behavior: auto; } |
|||
background: #f0f0f0; |
|||
color: #3366cc; |
|||
} |
} |
||
/* Indentation */ |
|||
#cps-toc-list li[data-level="3"] { padding-left: 15px; } |
|||
#cps-toc-list li[data-level="4"] { padding-left: 30px; } |
|||
#cps-toc-list li[data-level="5"] { padding-left: 45px; } |
|||
/* ================================================================= |
|||
/* --- CUSTOM TOC HEADER & ARROWS --- */ |
|||
3. BRANDING (Logo, Tagline — Desktop Header & Mobile Footer) |
|||
================================================================= */ |
|||
/* --- Desktop: hide logo wordmark, inject tagline --- */ |
|||
/* 1. Target "Contents" Header Link (Bold, Orange, Dark Border) */ |
|||
.mw-logo-container { display: none !important; } |
|||
#cps-toc-list a[href="#mw-toc-heading"] { |
|||
.mw-logo-wordmark { |
|||
font-weight: bold !important; |
|||
display: none !important; |
|||
visibility: hidden !important; |
|||
width: 0 !important; |
|||
} |
} |
||
.mw-logo:hover, |
|||
/* 2. Add Arrow Symbol (▸) to Level 2 AND Level 3 items */ |
|||
.mw-logo:active, |
|||
#cps-toc-list li[data-level="2"] a::before, |
|||
.mw-logo:focus { text-decoration: none !important; } |
|||
#cps-toc-list li[data-level="3"] a::before { |
|||
content: "▸" !important; |
|||
.mw-logo::after { |
|||
content: "Unleashing \A intelligence"; |
|||
font-size: 0.875em; |
|||
font-weight: 700; |
|||
line-height: 1.4; |
|||
color: #202122 !important; |
color: #202122 !important; |
||
text-decoration: none !important; |
|||
margin-right: 8px; /* Space between symbol and text */ |
|||
cursor: pointer; |
|||
display: block; |
|||
white-space: pre; |
|||
margin-left: 3px; |
|||
text-align: left; |
|||
position: relative; |
|||
top: 3px; |
|||
} |
} |
||
@media screen and (max-width: 900px) { |
|||
/* 3. Remove the Arrow from the "Contents" header (it is technically Level 2) */ |
|||
.mw-logo::after { display: none !important; } |
|||
#cps-toc-list li[data-level="2"] a[href="#mw-toc-heading"]::before { |
|||
display: none !important; |
|||
content: "" !important; |
|||
} |
} |
||
/* --- |
/* --- Mobile footer: logo image + tagline --- */ |
||
.minerva-footer-logo { |
|||
font-size: 0 !important; |
|||
color: transparent !important; |
|||
/* --- REMOVED THE IPAD HIDING RULE HERE --- */ |
|||
display: block !important; |
|||
/* (The @media min-width 768px block was deleted to allow TOC on iPad) */ |
|||
text-align: left !important; |
|||
margin-bottom: 20px !important; |
|||
@media (prefers-reduced-motion: reduce) { |
|||
html { scroll-behavior: auto; } |
|||
} |
} |
||
.minerva-footer-logo::before { |
|||
/* FIX: HIDE DUPLICATE "CONTENTS" TITLE IN MOBILE TOC */ |
|||
content: "" !important; |
|||
#cps-toc-panel .toctitle, |
|||
display: block !important; |
|||
#cps-toc-panel #mw-toc-heading, |
|||
background-image: url("https://pro-wiki.s3.eu-central-1.amazonaws.com/2776118/Logo.png"); |
|||
#cps-toc-panel h2 { |
|||
width: 160px; |
|||
height: 50px; |
|||
background-repeat: no-repeat !important; |
|||
background-size: contain !important; |
|||
background-position: left center !important; |
|||
margin-bottom: 6px !important; |
|||
} |
} |
||
.minerva-footer-logo::after { |
|||
/* ======================================================= */ |
|||
content: "Unleashing intelligence" !important; |
|||
/* 2. GLOBAL HIDE (READ-ONLY MODE) */ |
|||
font-size: 0.875rem !important; |
|||
/* These elements are hidden for everyone by default. */ |
|||
font-weight: 700 !important; |
|||
/* They are UNHIDDEN in MediaWiki:Group-user.css */ |
|||
line-height: 1.4 !important; |
|||
/* ======================================================= */ |
|||
color: #202122 !important; |
|||
display: block !important; |
|||
/* HIDE USER LINKS (Includes Sticky Header IDs for Vector 2022) */ |
|||
white-space: pre-wrap !important; |
|||
#vector-user-links, |
|||
#p-personal, |
|||
#pt-login, |
|||
#pt-login-2, /* Sticky Header Login */ |
|||
#pt-createaccount, |
|||
#pt-createaccount-2, /* Sticky Header Create Account */ |
|||
#pt-userpage, |
|||
#pt-mytalk, |
|||
#pt-preferences, |
|||
#pt-watchlist, |
|||
#pt-mycontris, |
|||
#pt-logout { |
|||
display: none !important; |
|||
} |
} |
||
/* Force hidden Minerva footer links to appear */ |
|||
/* HIDE TOOLS (Sidebar, Dropdowns, Tabs) */ |
|||
body.skin-minerva #footer-places-about, |
|||
#p-tb, /* Toolbox */ |
|||
body.skin-minerva #footer-places-disclaimers { |
|||
#vector-page-tools, /* Vector 22 Sidebar */ |
|||
display: inline-block !important; |
|||
#vector-page-tools-dropdown, /* Vector 22 Dropdown */ |
|||
.vector-p-tb, |
|||
#ca-viewsource, |
|||
#ca-history, |
|||
#ca-talk { |
|||
display: none !important; |
|||
} |
} |
||
/* --- Fullscreen logo (fits content width) --- */ |
|||
/* HIDE CATEGORIES */ |
|||
.fullscreen-logo { |
|||
#catlinks, |
|||
width: 100% !important; |
|||
.catlinks, |
|||
padding: 0 !important; |
|||
.mw-normal-catlinks { |
|||
margin: 0 auto !important; |
|||
max-width: 900px !important; |
|||
} |
} |
||
.fullscreen-logo figure, |
|||
/* ======================================================= */ |
|||
.fullscreen-logo .mw-default-size, |
|||
/* FORCE HIDE MOBILE HISTORY BAR */ |
|||
.fullscreen-logo .mw-halign-center { |
|||
/* Placed in Common.css to ensure it loads on all devices */ |
|||
max-width: 100% !important; |
|||
/* ======================================================= */ |
|||
width: 100% !important; |
|||
margin: 0 !important; |
|||
/* Target the container class from your HTML */ |
|||
padding: 0 !important; |
|||
.last-modified-bar, |
|||
a.last-modified-bar { |
|||
display: none !important; |
|||
visibility: hidden !important; |
|||
} |
} |
||
.fullscreen-logo figure > span { |
|||
/* Target the text wrapper explicitly */ |
|||
display: block !important; |
|||
.last-modified-bar__text, |
|||
width: 100% !important; |
|||
.modified-enhancement { |
|||
display: none !important; |
|||
} |
} |
||
.fullscreen-logo img.mw-file-element { |
|||
/* Target the specific clock icon found inside that button */ |
|||
display: block !important; |
|||
.minerva-icon--modified-history { |
|||
width: 100% !important; |
|||
max-width: 100% !important; |
|||
height: auto !important; |
|||
min-width: 0 !important; |
|||
} |
} |
||
/* ======================================================= */ |
|||
/* HIDE MOBILE USER/LOGIN MENU (Wrapper Method) */ |
|||
/* ======================================================= */ |
|||
/* ================================================================= |
|||
/* Target the main container div */ |
|||
4. CAPSACH MOBILE TOC OVERLAY |
|||
.minerva-user-menu { |
|||
================================================================= */ |
|||
display: none !important; |
|||
/* --- Base state (JS toggles visibility) --- */ |
|||
#cps-open-toc { |
|||
position: fixed; |
|||
display: none; |
|||
} |
} |
||
/* --- Full-screen scrim --- */ |
|||
/* Backup: Target the toggle button specifically */ |
|||
#cps-toc-overlay { |
|||
.toggle-list__toggle#minerva-user-menu-toggle { |
|||
position: fixed; inset: 0; |
|||
background: rgba(0,0,0,0.4); |
|||
display: none; |
|||
z-index: 1004; |
|||
} |
} |
||
#cps-toc-overlay.is-open { display: block; } |
|||
/* |
/* --- Dropdown panel --- */ |
||
#cps-toc-panel { |
|||
.minerva-icon--userAvatarOutline { |
|||
position: fixed; |
|||
top: 0 !important; |
|||
left: 0 !important; |
|||
right: 0 !important; |
|||
margin: 0 auto !important; |
|||
bottom: auto !important; |
|||
width: 100% !important; |
|||
max-width: 900px !important; |
|||
max-height: calc(100vh - 60px) !important; |
|||
border-radius: 0 !important; |
|||
background: #ffffff !important; |
|||
color: #202122 !important; |
|||
box-shadow: 0 10px 30px rgba(0,0,0,0.15) !important; |
|||
padding: 15px !important; |
|||
box-sizing: border-box !important; |
|||
overflow-y: auto !important; |
|||
-webkit-overflow-scrolling: touch; |
|||
z-index: 1005 !important; |
|||
display: none; |
|||
} |
} |
||
.is-open #cps-toc-panel, |
|||
/* ======================================================= */ |
|||
#cps-toc-overlay.is-open + #cps-toc-panel, |
|||
/* HIDE MOBILE SIDEBAR ITEMS */ |
|||
#cps-toc-panel[style*="display: block"] { |
|||
/* ======================================================= */ |
|||
display: block !important; |
|||
} |
|||
/* |
/* --- Panel header reset --- */ |
||
#cps-toc-header { |
|||
#mw-mf-page-left a[href*="Special:RecentChanges"], |
|||
background: transparent !important; |
|||
#mw-mf-page-left a[data-event-name="recentchanges"] { |
|||
padding: 0 !important; |
|||
margin: 0 !important; |
|||
border: none !important; |
|||
min-height: 0 !important; |
|||
} |
} |
||
/* |
/* --- Title bar (grey block) --- */ |
||
#cps-toc-panel > h2, |
|||
#mw-mf-page-left a[href*="Special:SpecialPages"] { |
|||
#cps-toc-title { |
|||
display: none !important; |
|||
background-color: #F8F9FA !important; |
|||
margin: -15px -15px 15px !important; |
|||
padding: 20px 0 !important; |
|||
border-bottom: 1px solid #eaecf0 !important; |
|||
display: block !important; |
|||
width: auto !important; |
|||
text-align: center !important; |
|||
color: #202122 !important; |
|||
font-size: 18px !important; |
|||
font-family: sans-serif !important; |
|||
font-weight: bold !important; |
|||
} |
} |
||
/* |
/* Hide close button and duplicate headings */ |
||
#cps-toc-close, |
|||
/* Matches the URL: index.php?title=...Community_portal */ |
|||
#cps-toc-panel .toctitle, |
|||
#mw-mf-page-left a[href*="Community_portal"] { |
|||
#cps-toc-panel #mw-toc-heading, |
|||
#cps-toc-panel h2 { |
|||
display: none !important; |
display: none !important; |
||
} |
} |
||
/* --- TOC list --- */ |
|||
/* ======================================================= */ |
|||
#cps-toc-list { list-style: none; margin: 0; padding: 0; } |
|||
/* HIDE VECTOR 2022 PAGE TOOLBAR & PRE-CONTENT */ |
|||
#cps-toc-list li { margin: 0; } |
|||
/* (Restored for logged-in users in MediaWiki:Group-user.css) */ |
|||
/* ======================================================= */ |
|||
#cps-toc-list a { |
|||
/* Hides the tabs (Read, Edit, History) and the "Tools" dropdown */ |
|||
display: block; padding: 12px 10px; |
|||
.vector-page-toolbar { |
|||
border-bottom: 1px solid #f8f8f8; |
|||
text-decoration: none; |
|||
color: #202122; |
|||
font-size: 15px; |
|||
line-height: 1.4; |
|||
} |
} |
||
#cps-toc-list a:active { |
|||
/* Hides the "From [Sitename]" text and page status indicators */ |
|||
background: #f0f0f0; |
|||
.vector-body-before-content { |
|||
color: #3366cc; |
|||
} |
} |
||
/* Indentation levels */ |
|||
/* ======================================================= */ |
|||
#cps-toc-list li[data-level="3"] { padding-left: 15px; } |
|||
/* HIDE LANGUAGE SELECTOR MENU (Global) */ |
|||
#cps-toc-list li[data-level="4"] { padding-left: 30px; } |
|||
/* ======================================================= */ |
|||
#cps-toc-list li[data-level="5"] { padding-left: 45px; } |
|||
#p-vector-user-menu-preferences { |
|||
display: none !important; |
|||
/* "Contents" header link — bold, orange, dark border */ |
|||
#cps-toc-list a[href="#mw-toc-heading"] { |
|||
font-weight: bold !important; |
|||
color: #f07662 !important; |
|||
border-bottom: 1px solid #202122 !important; |
|||
} |
} |
||
/* |
/* Arrow prefix (▸) for level 2 and 3 items */ |
||
#cps-toc-list li[data-level="2"] a::before, |
|||
.vector-main-menu-landmark { |
|||
#cps-toc-list li[data-level="3"] a::before { |
|||
display: none !important; |
|||
content: "▸" !important; |
|||
color: #202122 !important; |
|||
margin-right: 8px; |
|||
display: inline-block; |
|||
} |
} |
||
/* Remove arrow from "Contents" header (technically level 2) */ |
|||
/* ======================================================= */ |
|||
#cps-toc-list li[data-level="2"] a[href="#mw-toc-heading"]::before { |
|||
/* HIDE COLOR THEME (Read-Only/Anonymous Only) */ |
|||
/* ======================================================= */ |
|||
/* This specific selector hides the element ONLY if the user |
|||
does NOT have the 'group-user' class (i.e., they are logged out). */ |
|||
body:not(.group-user) #skin-client-prefs-skin-theme { |
|||
display: none !important; |
display: none !important; |
||
content: "" !important; |
|||
} |
} |
||
/* Hide default in-article TOC */ |
|||
/* ======================================================= */ |
|||
.toc, |
|||
/* 2. BOTTOM FLOATING SQUARES (4 Buttons: ToC Centered) */ |
|||
#toc, |
|||
/* ======================================================= */ |
|||
.mw-parser-output #toc, |
|||
.client-js .mw-content-ltr .toc { |
|||
/* --- A. HEADER RESET (Invisible Container) --- */ |
|||
display: none !important; |
|||
.header-container.header-chrome { |
|||
position: fixed !important; |
|||
top: 0 !important; left: 0 !important; right: 0 !important; |
|||
height: 60px !important; |
|||
z-index: 1000 !important; |
|||
background: transparent !important; |
|||
border: none !important; |
|||
box-shadow: none !important; |
|||
pointer-events: none !important; |
|||
} |
} |
||
/* Push content down */ |
|||
body.skin-minerva { padding-top: 60px !important; } |
|||
.mw-body { margin-top: 10px !important; } |
|||
/* ================================================================= |
|||
/* Hide default elements */ |
|||
5. FLOATING BOTTOM BUTTONS (Search, Home, ToC, Email) |
|||
.header-container .navigation-drawer { display: none !important; } |
|||
================================================================= */ |
|||
/* --- |
/* --- Shared styles (all 4 buttons + search input) --- */ |
||
.branding-box, |
.branding-box, |
||
#searchIcon, |
#searchIcon, |
||
#cps-open-toc, |
#cps-open-toc, |
||
#custom-email-btn, |
#custom-email-btn, |
||
body.mw-mf-search-mode .minerva-header .search-box input { |
body.mw-mf-search-mode .minerva-header .search-box input { |
||
background-color: rgba(0, 0, 0, 0.2) !important; |
|||
/* Design: Dark Semi-Transparent Circle */ |
|||
background-color: rgba(0, 0, 0, 0.2) !important; |
|||
opacity: 1 !important; |
opacity: 1 !important; |
||
border-radius: 50% !important; |
border-radius: 50% !important; |
||
| Line 506: | Line 479: | ||
backdrop-filter: none !important; |
backdrop-filter: none !important; |
||
pointer-events: auto !important; |
pointer-events: auto !important; |
||
/* Dimensions: 44px x 44px */ |
|||
box-sizing: border-box !important; |
box-sizing: border-box !important; |
||
width: 44px !important; |
width: 44px !important; |
||
height: 44px !important; |
height: 44px !important; |
||
min-width: 44px !important; |
|||
max-width: 44px !important; |
|||
/* === ADD THESE TWO LINES HERE === */ |
|||
padding: 0 !important; |
|||
max-width: 44px !important; /* Ensures it stays a circle */ |
|||
/* ================================ */ |
|||
padding: 0 !important; |
|||
margin: 0 !important; |
margin: 0 !important; |
||
/* Fixed Positioning at Bottom */ |
|||
position: fixed !important; |
position: fixed !important; |
||
top: auto !important; |
top: auto !important; |
||
/* FIX FOR IPHONE: Respect the Home Indicator + GPU Acceleration */ |
|||
/* Uses 15px base + the safe area (black bar height) */ |
|||
bottom: calc(15px + env(safe-area-inset-bottom)) !important; |
bottom: calc(15px + env(safe-area-inset-bottom)) !important; |
||
/* Stops the "Jitter" when the address bar moves */ |
|||
transform: translateZ(0); |
transform: translateZ(0); |
||
will-change: transform; |
will-change: transform; |
||
/* Center Alignment setup (Offsets defined below) */ |
|||
left: 50% !important; |
left: 50% !important; |
||
right: auto !important; |
right: auto !important; |
||
display: flex !important; |
|||
align-items: center; |
|||
display: flex !important; |
|||
align-items: center; |
|||
justify-content: center; |
justify-content: center; |
||
z-index: 1002 !important; |
z-index: 1002 !important; |
||
} |
} |
||
/* --- |
/* --- Individual positions --- */ |
||
/* |
/* Search (far left, offset -150px) */ |
||
/* Offset: -150px */ |
|||
#searchIcon { |
#searchIcon { |
||
margin-left: -150px !important; |
margin-left: -150px !important; |
||
z-index: 1003 !important; |
z-index: 1003 !important; |
||
} |
} |
||
| Line 556: | Line 510: | ||
color: #fff !important; |
color: #fff !important; |
||
fill: #fff !important; |
fill: #fff !important; |
||
filter: brightness(0) invert(1); |
filter: brightness(0) invert(1); |
||
} |
} |
||
/* |
/* Home (left of center, offset -86px) */ |
||
.branding-box { |
.branding-box { |
||
margin-left: -86px !important; |
margin-left: -86px !important; |
||
flex: 0 0 44px !important; |
|||
/* ADD THIS LINE TO PREVENT STRETCHING: */ |
|||
flex: 0 0 44px !important; |
|||
} |
} |
||
/* Home Icon (⌂) */ |
|||
.branding-box::after { |
.branding-box::after { |
||
content: "⌂"; |
content: "⌂"; |
||
font-size: 30px !important; |
font-size: 30px !important; |
||
color: #fff !important; |
color: #fff !important; |
||
-webkit-text-stroke: 0.5px #fff !important; |
-webkit-text-stroke: 0.5px #fff !important; |
||
margin-top: -6px !important; |
margin-top: -6px !important; |
||
line-height: 1 !important; |
line-height: 1 !important; |
||
} |
} |
||
.branding-box a { opacity: 0 !important; position: absolute; inset: 0; } |
.branding-box a { opacity: 0 !important; position: absolute; inset: 0; } |
||
/* |
/* ToC (center, offset -22px) */ |
||
#cps-open-toc { margin-left: -22px !important; } |
|||
#cps-open-toc { |
|||
margin-left: -22px !important; |
|||
} |
|||
#cps-open-toc .icon { |
#cps-open-toc .icon { |
||
font-size: 30px !important; |
font-size: 30px !important; |
||
line-height: 1 !important; |
line-height: 1 !important; |
||
margin-bottom: 3px !important; |
margin-bottom: 3px !important; |
||
color: #fff !important; |
color: #fff !important; |
||
} |
} |
||
#cps-open-toc .label { display: none !important; } |
#cps-open-toc .label { display: none !important; } |
||
/* |
/* Email (right of center, offset +42px) */ |
||
#custom-email-btn { margin-left: 42px !important; } |
|||
/* Offset: +42px */ |
|||
#custom-email-btn { |
|||
margin-left: 42px !important; |
|||
} |
|||
/* Email Icon (Envelope) */ |
|||
#custom-email-btn::after { |
#custom-email-btn::after { |
||
content: "\2709\FE0E"; /* Text-mode envelope glyph */ |
|||
content: "\2709\FE0E"; |
|||
font-size: 26px !important; |
font-size: 26px !important; |
||
line-height: 1 !important; |
line-height: 1 !important; |
||
margin-top: -2px !important; |
margin-top: -2px !important; |
||
color: transparent !important; |
|||
text-shadow: 0 0 0 #fff !important; |
|||
/* IOS HACK: This forces the icon to be flat white */ |
|||
color: transparent !important; /* Hide the colorful emoji */ |
|||
text-shadow: 0 0 0 #fff !important; /* Create a flat white shadow of it */ |
|||
} |
} |
||
/* --- |
/* --- Search input (expanded state) --- */ |
||
/* 1. Hide initially */ |
|||
body:not(.mw-mf-search-mode) .minerva-header .search-box { |
body:not(.mw-mf-search-mode) .minerva-header .search-box { |
||
display: none !important; |
display: none !important; |
||
} |
} |
||
/* 2. Position Wrapper */ |
|||
body.mw-mf-search-mode .minerva-header .search-box { |
body.mw-mf-search-mode .minerva-header .search-box { |
||
display: block !important; |
display: block !important; |
||
| Line 624: | Line 560: | ||
height: 44px !important; |
height: 44px !important; |
||
z-index: 1001 !important; |
z-index: 1001 !important; |
||
left: 10px !important; |
|||
right: 10px !important; |
|||
right: 10px !important; |
|||
width: auto !important; |
width: auto !important; |
||
padding: 0 !important; margin: 0 !important; |
padding: 0 !important; margin: 0 !important; |
||
| Line 634: | Line 568: | ||
} |
} |
||
/* 3. Style Input Pill */ |
|||
/* (Note: The input background/shape is handled in Shared Styles above) */ |
|||
body.mw-mf-search-mode .minerva-header .search-box input { |
body.mw-mf-search-mode .minerva-header .search-box input { |
||
width: 100% !important; |
width: 100% !important; |
||
font-size: 16px !important; |
font-size: 16px !important; |
||
/* Text Color */ |
|||
color: #fff !important; |
color: #fff !important; |
||
-webkit-text-fill-color: #fff !important; |
-webkit-text-fill-color: #fff !important; |
||
padding-left: 55px !important; |
|||
/* PADDING: 44px (Button) + 11px (Gap) */ |
|||
padding-left: 55px !important; |
|||
padding-right: 55px !important; |
padding-right: 55px !important; |
||
position: static !important; |
|||
/* Reset position for the input box specifically */ |
|||
position: static !important; |
|||
margin: 0 !important; |
margin: 0 !important; |
||
} |
} |
||
.minerva-header .search-box .search-box-icon-overlay { display: none !important; } |
|||
/* 4. Hide Inner Icon */ |
|||
.minerva-header .search-box .search-box-icon-overlay { |
|||
display: none !important; |
|||
} |
|||
/* 5. Placeholder */ |
|||
body.mw-mf-search-mode .minerva-header .search-box input::placeholder { |
body.mw-mf-search-mode .minerva-header .search-box input::placeholder { |
||
color: rgba(255, 255, 255, 0.7) !important; |
color: rgba(255, 255, 255, 0.7) !important; |
||
| Line 664: | Line 586: | ||
} |
} |
||
.search-box .search-box-cancel { |
|||
/* 6. Cancel "X" Button */ |
|||
display: block !important; |
|||
.search-box .search-box-cancel { |
|||
display: block !important; |
|||
position: absolute !important; |
position: absolute !important; |
||
top: 0 !important; |
top: 0 !important; right: 0 !important; |
||
width: 44px !important; height: 44px !important; |
|||
width: 44px !important; |
|||
height: 44px !important; |
|||
line-height: 44px !important; |
line-height: 44px !important; |
||
text-align: center !important; |
text-align: center !important; |
||
| Line 678: | Line 597: | ||
} |
} |
||
/* ======================================================= */ |
|||
/* ================================================================= |
|||
/* HIDE PAGE ACTIONS MENU (Language, Watch, Edit, etc.) */ |
|||
6. GLOBAL HIDE (Read-Only Mode) |
|||
/* ======================================================= */ |
|||
Hidden for everyone; un-hidden in MediaWiki:Group-user.css |
|||
#p-views, |
|||
================================================================= */ |
|||
.page-actions-menu__list { |
|||
/* --- User links (includes Vector 2022 sticky header IDs) --- */ |
|||
#vector-user-links, |
|||
#p-personal, |
|||
#pt-login, |
|||
#pt-login-2, |
|||
#pt-createaccount, |
|||
#pt-createaccount-2, |
|||
#pt-userpage, |
|||
#pt-mytalk, |
|||
#pt-preferences, |
|||
#pt-watchlist, |
|||
#pt-mycontris, |
|||
#pt-logout { |
|||
display: none !important; |
display: none !important; |
||
} |
} |
||
/* --- Tools (sidebar, dropdowns, tabs) --- */ |
|||
/* ======================================================= */ |
|||
#p-tb, |
|||
/* HIDE STANDARD "FIXED" TOC (Force Sticky Button Only) */ |
|||
#vector-page-tools, |
|||
/* ======================================================= */ |
|||
#vector-page-tools-dropdown, |
|||
/* This removes the default TOC box inside the article text */ |
|||
.vector-p-tb, |
|||
.toc, |
|||
#ca-viewsource, |
|||
#toc, |
|||
#ca-history, |
|||
.mw-parser-output #toc, |
|||
#ca-talk { |
|||
.client-js .mw-content-ltr .toc { |
|||
display: none !important; |
display: none !important; |
||
} |
} |
||
/* --- Categories --- */ |
|||
/* ======================================================= */ |
|||
#catlinks, |
|||
/* FORCE STICKY BUTTONS ON IPAD / TABLET */ |
|||
.catlinks, |
|||
/* ======================================================= */ |
|||
.mw-normal-catlinks { |
|||
@media screen and (min-width: 768px) { |
|||
display: none !important; |
|||
/* 1. LOCK HOME BUTTON SHAPE (Restored from comment) */ |
|||
.branding-box { |
|||
/* Force exact width to prevent "Tablet Mode" expansion */ |
|||
width: 44px !important; |
|||
min-width: 44px !important; |
|||
max-width: 44px !important; |
|||
/* Stop Flexbox from stretching it */ |
|||
flex: 0 0 44px !important; |
|||
/* Ensure position stays correct (Left of Center) */ |
|||
margin-left: -86px !important; |
|||
} |
|||
/* 2. KEEP TOC CENTERED */ |
|||
#cps-open-toc { |
|||
display: flex !important; |
|||
visibility: visible !important; |
|||
opacity: 1 !important; |
|||
z-index: 9999 !important; |
|||
/* Center Offset */ |
|||
margin-left: -22px !important; |
|||
/* Styling */ |
|||
background-color: rgba(0, 0, 0, 0.2) !important; |
|||
width: 44px !important; |
|||
height: 44px !important; |
|||
border-radius: 50% !important; |
|||
} |
|||
} |
} |
||
/* --- Page actions (Language, Watch, Edit, etc.) --- */ |
|||
/* Constrain main content width for better readability */ |
|||
#p-views, |
|||
#content { |
|||
.page-actions-menu__list, |
|||
max-width: 900px; /* Optimal reading width */ |
|||
.page-actions-menu { |
|||
margin: 0 auto; /* Center it */ |
|||
display: none !important; |
|||
line-height: 1.6; /* More breathing room between lines */ |
|||
} |
} |
||
/* --- Vector 2022 page toolbar & pre-content --- */ |
|||
/* ======================================================= */ |
|||
.vector-page-toolbar { display: none !important; } |
|||
/* SMART HIDE: ONLY HIDE BUTTON ON DESKTOP SKIN */ |
|||
.vector-body-before-content { display: none !important; } |
|||
/* ======================================================= */ |
|||
/* --- Language selector & main menu --- */ |
|||
/* This rule only triggers if the screen is wide AND the user is on the Desktop Skin */ |
|||
#p-vector-user-menu-preferences { display: none !important; } |
|||
@media screen and (min-width: 1000px) { |
|||
.vector-main-menu-landmark { display: none !important; } |
|||
body.skin-vector-2022 #cps-open-toc { |
|||
display: none !important; |
|||
} |
|||
} |
|||
/* --- Color theme (anonymous only) --- */ |
|||
/* 1. Remove gap below the Site Notice (even if empty) */ |
|||
body:not(.group-user) #skin-client-prefs-skin-theme { display: none !important; } |
|||
#siteNotice { |
|||
margin-bottom: 0 !important; |
|||
padding-bottom: 0 !important; |
|||
} |
|||
/* --- Mobile: history bar --- */ |
|||
/* 2. Remove gap above the Main Content container */ |
|||
.last-modified-bar, |
|||
#content.mw-body { |
|||
a.last-modified-bar { |
|||
margin-top: 0 !important; |
|||
padding-top: 0 !important; |
|||
} |
|||
/* 3. Remove gap above the Page Heading ("Home") */ |
|||
/* This is often the hidden cause of the white line */ |
|||
.pre-content, |
|||
.page-heading, |
|||
.firstHeading { |
|||
margin-top: 0 !important; |
|||
padding-top: 0 !important; |
|||
} |
|||
/* ======================================================= */ |
|||
/* 1. MAKE HEADER TRANSPARENT */ |
|||
/* ======================================================= */ |
|||
.header-container.header-chrome, |
|||
.minerva-header { |
|||
background: transparent !important; |
|||
background-color: transparent !important; |
|||
border: none !important; |
|||
box-shadow: none !important; |
|||
} |
|||
/* ======================================================= */ |
|||
/* 2. RESET PAGE & CONTAINER TOP MARGINS */ |
|||
/* This removes the "White Gap" at the very top */ |
|||
/* ======================================================= */ |
|||
body.skin-minerva { |
|||
padding-top: 0 !important; |
|||
} |
|||
/* Force the main content wrapper to start at pixel 0 */ |
|||
#content, |
|||
.mw-body { |
|||
margin-top: 0 !important; |
|||
padding-top: 0 !important; |
|||
} |
|||
/* Remove potential gap from the Site Notice container */ |
|||
.banner-container, |
|||
#siteNotice { |
|||
padding-top: 0 !important; |
|||
margin-top: 0 !important; |
|||
margin-bottom: 0 !important; |
|||
} |
|||
/* ======================================================= */ |
|||
/* 3. PUSH TITLE DOWN INTERNALLY */ |
|||
/* This pushes the text "Home" down so it's not hidden, */ |
|||
/* but keeps the background white/transparent at the top. */ |
|||
/* ======================================================= */ |
|||
.pre-content.heading-holder { |
|||
/* 70px (Header height) + 40px (Visual Space) */ |
|||
padding-top: 70px !important; |
|||
/* Ensure it behaves as a block to accept padding */ |
|||
display: block !important; |
|||
} |
|||
/* Best approach: Hides the text wrapper entirely to remove spacing */ |
|||
.mw-logo-container { |
|||
display: none !important; |
display: none !important; |
||
visibility: hidden !important; |
|||
} |
} |
||
.last-modified-bar__text, |
|||
.modified-enhancement, |
|||
/* Target the specific text element directly */ |
|||
.minerva-icon--modified-history { |
|||
.mw-logo-wordmark { |
|||
display: none !important; |
display: none !important; |
||
visibility: hidden !important; /* Backup if display fails */ |
|||
width: 0 !important; |
|||
} |
} |
||
/* --- Mobile: user/login menu --- */ |
|||
/* ======================================================= */ |
|||
.minerva-user-menu { display: none !important; } |
|||
/* ADD TAGLINE TO HEADER (DESKTOP) */ |
|||
.toggle-list__toggle#minerva-user-menu-toggle { display: none !important; } |
|||
/* ======================================================= */ |
|||
.minerva-icon--userAvatarOutline { display: none !important; } |
|||
/* --- Mobile: sidebar items --- */ |
|||
/* 1. Prevent underline on the parent link when hovering */ |
|||
#mw-mf-page-left a[href*="Special:RecentChanges"], |
|||
.mw-logo:hover, |
|||
#mw-mf-page-left a[data-event-name="recentchanges"], |
|||
.mw-logo:active, |
|||
#mw-mf-page-left a[href*="Special:SpecialPages"], |
|||
.mw-logo:focus { |
|||
#mw-mf-page-left a[href*="Community_portal"] { |
|||
text-decoration: none !important; |
|||
display: none !important; |
|||
} |
} |
||
/* 2. Inject the tagline text */ |
|||
.mw-logo::after { |
|||
/* \A is the CSS escape character for a Newline */ |
|||
content: "Empowering \A human excellence"; |
|||
/* Typography - MATCHING FOOTER EXACTLY */ |
|||
/* Removed font-family line so it inherits the correct system font */ |
|||
font-size: 0.875em; |
|||
font-weight: 700; |
|||
line-height: 1.4; |
|||
/* Visuals */ |
|||
color: #202122 !important; |
|||
text-decoration: none !important; |
|||
cursor: pointer; |
|||
/* Positioning */ |
|||
display: block; |
|||
white-space: pre; |
|||
margin-left: 3px; |
|||
text-align: left; |
|||
/* MOVES TEXT DOWN */ |
|||
position: relative; |
|||
top: 3px; |
|||
} |
|||
/* ================================================================= |
|||
/* Hide styling on Mobile/Tablet so it doesn't clash */ |
|||
7. TYPOGRAPHY & LINKS |
|||
@media screen and (max-width: 900px) { |
|||
================================================================= */ |
|||
.mw-logo::after { |
|||
display: none !important; |
|||
} |
|||
} |
|||
/* --- Heading colors --- */ |
|||
/* ======================================================= */ |
|||
.mw-heading1, h1, |
|||
/* CUSTOM MOBILE FOOTER (Logo Image + Tagline) */ |
|||
.mw-heading2, h2, |
|||
/* ======================================================= */ |
|||
/* 1. Reset the container */ |
|||
.minerva-footer-logo { |
|||
font-size: 0 !important; /* Hide default text */ |
|||
color: transparent !important; /* Make sure it's invisible */ |
|||
display: block !important; /* Stack vertically */ |
|||
text-align: left !important; /* Align left */ |
|||
margin-bottom: 20px !important; |
|||
} |
|||
/* 2. INSERT THE LOGO (via ::before) */ |
|||
.minerva-footer-logo::before { |
|||
content: "" !important; |
|||
display: block !important; |
|||
/* DIRECT LINK TO YOUR LOGO */ |
|||
background-image: url('https://pro-wiki.s3.eu-central-1.amazonaws.com/2776118/Logo.png'); |
|||
/* DIMENSIONS */ |
|||
width: 160px; |
|||
height: 50px; |
|||
background-repeat: no-repeat !important; |
|||
background-size: contain !important; |
|||
background-position: left center !important; |
|||
margin-bottom: 6px !important; |
|||
} |
|||
/* 3. INSERT THE TAGLINE (via ::after) */ |
|||
.minerva-footer-logo::after { |
|||
/* \A is the Newline character. Use "pre" or "pre-wrap" to render it. */ |
|||
content: "Empowering human excellence" !important; |
|||
/* Typography - MATCHING FOOTER LINKS */ |
|||
/* Removed font-family to use system font (Roboto/San Francisco) */ |
|||
font-size: 0.875rem !important; /* Increased to 14px to match footer links */ |
|||
font-weight: 700 !important; |
|||
line-height: 1.4 !important; |
|||
/* Visuals - KEEPING YOUR DARK COLOR */ |
|||
color: #202122 !important; |
|||
/* Layout */ |
|||
display: block !important; |
|||
white-space: pre-wrap !important; |
|||
} |
|||
/* ======================================================= */ |
|||
/* FORCE SHOW HIDDEN MOBILE FOOTER LINKS */ |
|||
/* Minerva hides About/Disclaimers by default. */ |
|||
/* This forces them to appear in the list. */ |
|||
/* ======================================================= */ |
|||
body.skin-minerva #footer-places-about, |
|||
body.skin-minerva #footer-places-disclaimers { |
|||
display: inline-block !important; |
|||
} |
|||
/* Force paragraphs inside the navigation menu to inherit the parent font size */ |
|||
.navigation-menu .infobox-data p { |
|||
font-size: 1em !important; |
|||
margin: 0 !important; |
|||
padding: 0 !important; |
|||
} |
|||
/* ======================================================= */ |
|||
/* GLOBAL BRANDING: DARK LINES & CLEANUP */ |
|||
/* ======================================================= */ |
|||
/* ======================================================= */ |
|||
/* GLOBAL BRANDING: DARK LINES & CLEANUP */ |
|||
/* ======================================================= */ |
|||
/* 1. TEXT COLORS (Headings & Titles) */ |
|||
.mw-heading1, h1, |
|||
.mw-heading2, h2, |
|||
h3, h4, h5, h6, |
h3, h4, h5, h6, |
||
.firstHeading, |
.firstHeading, |
||
| Line 963: | Line 695: | ||
.vector-sticky-header-context-bar-primary, |
.vector-sticky-header-context-bar-primary, |
||
.mw-headline, |
.mw-headline, |
||
.vector-pinnable-header-label { |
.vector-pinnable-header-label { |
||
color: #202122 !important; |
color: #202122 !important; |
||
} |
} |
||
/* --- Heading borders --- */ |
|||
/* 2. BORDERS FOR ALL HEADINGS (Desktop & Mobile) */ |
|||
/* This forces the 1px dark line and overrides the default grey */ |
|||
.mw-heading1, h1, |
.mw-heading1, h1, |
||
.mw-heading2, h2, |
.mw-heading2, h2, |
||
.section-heading { |
.section-heading { |
||
border-bottom: 1px solid #202122 !important; |
border-bottom: 1px solid #202122 !important; |
||
margin-bottom: 0.6em; |
margin-bottom: 0.6em; |
||
} |
} |
||
/* Special weight for the very first page heading */ |
|||
.mw-first-heading { |
.mw-first-heading { |
||
border-bottom: 2px solid #202122 !important; |
border-bottom: 2px solid #202122 !important; |
||
margin-bottom: 0.5em; |
margin-bottom: 0.5em; |
||
} |
} |
||
/* |
/* Remove Vector 2022 default title underline */ |
||
/* You asked to remove the color/transparency of the ::after element */ |
|||
.vector-page-titlebar::after { |
.vector-page-titlebar::after { |
||
background-color: transparent !important; |
background-color: transparent !important; |
||
| Line 990: | Line 719: | ||
} |
} |
||
/* |
/* Contents sidebar heading (no border) */ |
||
h2.vector-pinnable-header-label { border-bottom: none !important; } |
|||
/* This removes the Language/Edit buttons to create a cleaner look. */ |
|||
.page-actions-menu { |
|||
/* --- Link colors (legacy blue #1d70b8) --- */ |
|||
display: none !important; |
|||
a, |
|||
a:visited, |
|||
.mw-parser-output a, |
|||
.mw-parser-output a:visited, |
|||
.mw-body-content a.external, |
|||
.mw-body-content a.external:visited, |
|||
.mw-collapsible-toggle-default .mw-collapsible-text { |
|||
color: #1d70b8 !important; |
|||
} |
} |
||
/* |
/* Red links (missing pages) */ |
||
a.new, |
|||
h2.vector-pinnable-header-label { |
|||
a.new:visited { color: #d73333 !important; } |
|||
/* UI buttons stay white */ |
|||
a.mw-ui-button, |
|||
a.mw-ui-button:visited { color: #fff !important; } |
|||
/* --- Edit section links --- */ |
|||
.mw-editsection, .mw-editsection a { |
|||
color: #202122 !important; |
|||
opacity: 0.7; |
|||
} |
} |
||
/* |
/* --- Footer borders --- */ |
||
#footer, |
#footer, |
||
.mw-footer, |
.mw-footer, |
||
.minerva-footer, |
.minerva-footer, |
||
| Line 1,009: | Line 755: | ||
} |
} |
||
#footer-icons { display: none !important; } |
|||
/* ======================================================= */ |
|||
/* HIDE FOOTER ICONS (Powered By, Hosted By, etc.) */ |
|||
/* ======================================================= */ |
|||
#footer-icons { |
|||
display: none !important; |
|||
} |
|||
/* 7. CLEAN UP MOBILE FOOTER GAPS */ |
|||
.minerva-footer .footer-content, |
.minerva-footer .footer-content, |
||
.minerva-footer .branding-box, |
.minerva-footer .branding-box, |
||
| Line 1,025: | Line 765: | ||
} |
} |
||
/* |
/* Mobile section expand icon */ |
||
.skin-minerva .section-heading .mw-ui-icon-wikimedia-expand-small { |
.skin-minerva .section-heading .mw-ui-icon-wikimedia-expand-small { |
||
filter: grayscale(1) brightness(0.2); |
filter: grayscale(1) brightness(0.2); |
||
} |
} |
||
/* |
/* --- Wikitable styles --- */ |
||
table.wikitable { |
|||
.mw-editsection, .mw-editsection a { |
|||
font-size: 0.85em; |
|||
background-color: #fff; |
|||
} |
} |
||
table.wikitable td { background-color: #fff; } |
|||
table.wikitable caption { |
|||
/* ======================================================= */ |
|||
text-align: left; |
|||
/* FORCE LEGACY BLUE (#1d70b8) - LINKS & TOGGLES */ |
|||
font-weight: bold; |
|||
/* ======================================================= */ |
|||
background-color: #fff; |
|||
/* 1. Force Link Color (Visited, Unvisited & Toggles) */ |
|||
/* Overrides standard links and the collapsible "Show/Hide" text */ |
|||
a, |
|||
a:visited, |
|||
.mw-parser-output a, |
|||
.mw-parser-output a:visited, |
|||
.mw-body-content a.external, |
|||
.mw-body-content a.external:visited, |
|||
.mw-collapsible-toggle-default .mw-collapsible-text { |
|||
color: #1d70b8 !important; |
|||
} |
} |
||
/* |
/* --- Navigation menu paragraphs --- */ |
||
.navigation-menu .infobox-data p { |
|||
/* Keeps missing pages red (#d73333) even if visited */ |
|||
font-size: 1em !important; |
|||
a.new, |
|||
margin: 0 !important; |
|||
a.new:visited { |
|||
padding: 0 !important; |
|||
} |
} |
||
/* |
/* --- Main page menu --- */ |
||
/* Ensures text inside buttons (like 'Save changes') stays white */ |
|||
a.mw-ui-button, |
|||
a.mw-ui-button:visited { |
|||
color: #fff !important; |
|||
} |
|||
/* ======================================================= */ |
|||
/* MAIN PAGE MENU */ |
|||
/* ======================================================= */ |
|||
.main-page-menu { |
.main-page-menu { |
||
line-height: 1.8; |
|||
/* Adjusted from 2.2 to 1.8 for better visual grouping */ |
|||
margin-bottom: 0; |
|||
margin-bottom: 0em; |
|||
font-size: 1em; |
font-size: 1em; |
||
} |
} |
||
/* --- Read pill (inline badge) --- */ |
|||
/* ======================================================= */ |
|||
/* READ PILL - INLINE STYLE */ |
|||
/* ======================================================= */ |
|||
.read-pill { |
.read-pill { |
||
display: inline; |
display: inline; |
||
white-space: nowrap; |
white-space: nowrap; |
||
padding: 1px 0.4em; |
|||
/* 1. THICKER TOP PADDING */ |
|||
/* Top: 2px | Right: 0.4em | Bottom: 1px | Left: 0.4em */ |
|||
padding: 1px 0.4em 1px 0.4em; |
|||
/* 2. LIFT TEXT UP 1 PIXEL */ |
|||
position: relative; |
position: relative; |
||
top: -1px; |
top: -1px; |
||
/* Visuals */ |
|||
border-radius: 4px; |
border-radius: 4px; |
||
margin: 0 0.2em 0 0; |
margin: 0 0.2em 0 0; |
||
/* Fonts */ |
|||
font-size: 0.85em; |
font-size: 0.85em; |
||
font-weight: 500; |
font-weight: 500; |
||
/* Color Inheritance & Wrapping Safety */ |
|||
color: #202122 !important; |
color: #202122 !important; |
||
-webkit-box-decoration-break: clone; |
-webkit-box-decoration-break: clone; |
||
| Line 1,106: | Line 812: | ||
} |
} |
||
.read-pill a, |
|||
/* Link Color Fixes (Standard, Visited & Missing) */ |
|||
.read-pill a |
.read-pill a:visited { |
||
color: #202122 !important; |
|||
.read-pill a:visited { |
|||
text-decoration: none !important; |
|||
text-decoration: none !important; |
|||
} |
} |
||
.read-pill a.new { |
.read-pill a.new { |
||
color: red !important; |
color: red !important; |
||
padding: 0 4px; |
padding: 0 4px; |
||
border-radius: 3px; |
border-radius: 3px; |
||
} |
} |
||
/* --- Minerva bullet indentation fix --- */ |
|||
/* ======================================================= */ |
|||
body.skin-minerva .mw-parser-output ul, |
|||
/* PRINT OPTIMIZATION: HIDE UI BUTTONS */ |
|||
body.skin-minerva .collapsible-block ul { |
|||
/* ======================================================= */ |
|||
padding-left: 1em; |
|||
@media print { |
|||
margin-left: 0; |
|||
/* 1. Hide the 4 floating bottom buttons (Search, Home, ToC, Email) */ |
|||
} |
|||
#searchIcon, |
|||
body.skin-minerva .mw-parser-output ul ul, |
|||
.branding-box, |
|||
body.skin-minerva .collapsible-block ul ul { |
|||
#cps-open-toc, |
|||
padding-left: 1em; |
|||
} |
|||
display: none !important; |
|||
} |
|||
/* 2. Hide the ToC panel and Overlay if they happen to be open */ |
|||
#cps-toc-panel, |
|||
#cps-toc-overlay { |
|||
display: none !important; |
|||
} |
|||
/* ================================================================= |
|||
/* 3. Hide the search input bar if it was left open */ |
|||
8. AI ASSISTANT PANEL |
|||
.minerva-header .search-box { |
|||
================================================================= */ |
|||
display: none !important; |
|||
} |
|||
} |
|||
/* --- Z-index: sits behind floating buttons (z-index 1002) --- */ |
|||
/* ======================================================= */ |
|||
/* 3. AI ASSISTANT (AXA BRAIN) CUSTOMIZATION */ |
|||
/* ======================================================= */ |
|||
/* 1. GLOBAL LAYER (All Devices) */ |
|||
/* CHANGED: Lowered from 2000 to 1001 so it sits BEHIND your floating buttons (z-index: 1002). */ |
|||
.ext-aiassistant, |
.ext-aiassistant, |
||
.ext-aiassistant-panel { |
.ext-aiassistant-panel { |
||
| Line 1,154: | Line 846: | ||
} |
} |
||
/* |
/* --- Panel shell --- */ |
||
/* We only force 'fixed' position on mobile to lock it to the screen. */ |
|||
@media screen and (max-width: 768px) { |
|||
.ext-aiassistant-panel { |
|||
position: fixed !important; |
|||
box-sizing: border-box !important; |
|||
width: 100% !important; |
|||
height: 100% !important; |
|||
max-width: none !important; |
|||
max-height: none !important; |
|||
top: 0 !important; |
|||
left: 0 !important; |
|||
right: 0 !important; |
|||
bottom: 0 !important; |
|||
border-radius: 0 !important; |
|||
margin: 0 !important; |
|||
} |
|||
.ext-aiassistant-body { |
|||
height: auto !important; |
|||
flex-grow: 1 !important; |
|||
} |
|||
/* NEW: Push the AI chat input up so the sticky buttons don't cover it */ |
|||
.ext-aiassistant-footer { |
|||
padding-bottom: calc(75px + env(safe-area-inset-bottom)) !important; |
|||
} |
|||
} |
|||
/* ======================================================= */ |
|||
/* 4. AI ASSISTANT FOOTER ALIGNMENT & MAKE BUTTON CIRCLE */ |
|||
/* ======================================================= */ |
|||
.ext-aiassistant-footer { |
|||
/* CHANGED: Align items to the middle (center) instead of top (flex-start) */ |
|||
align-items: center !important; |
|||
} |
|||
/* Make the AI Assistant Send button a circle */ |
|||
.ext-aiassistant-send { |
|||
/* 1. Force a perfect circle shape */ |
|||
border-radius: 50% !important; |
|||
/* 2. Force equal width and height */ |
|||
width: 36px !important; |
|||
height: 36px !important; |
|||
min-width: 0 !important; /* Overrides Codex default "wide" button style */ |
|||
/* 3. Center the icon */ |
|||
padding: 0 !important; |
|||
display: flex !important; |
|||
align-items: center !important; |
|||
justify-content: center !important; |
|||
/* Optional: Add a subtle margin if it's too close to the text input */ |
|||
margin-left: 4px !important; |
|||
} |
|||
/* ======================================================= */ |
|||
/* 5. AI ASSISTANT VISUAL OVERRIDES (Borders & Shadows) */ |
|||
/* ======================================================= */ |
|||
/* 1. Main Panel: Dark Border, No Shadow */ |
|||
.ext-aiassistant-panel { |
.ext-aiassistant-panel { |
||
border: 1px solid #202122 !important; |
border: 1px solid #202122 !important; |
||
| Line 1,222: | Line 852: | ||
} |
} |
||
/* |
/* --- Header --- */ |
||
.ext-aiassistant-header { |
.ext-aiassistant-header { |
||
border-bottom: 1px solid #202122 !important; |
border-bottom: 1px solid #202122 !important; |
||
margin-left: 0 !important; |
|||
margin-right: 0 !important; |
|||
padding-left: 12px !important; |
|||
padding-right: 12px !important; |
|||
} |
} |
||
/* --- Message area --- */ |
|||
.ext-aiassistant-footer { |
|||
.ext-aiassistant-body { |
|||
border-top: 1px solid #202122 !important; |
|||
padding-left: 20px !important; |
|||
padding-right: 20px !important; |
|||
box-sizing: border-box !important; |
|||
} |
} |
||
.ext-aiassistant-message { |
|||
/* User Message Bubble */ |
|||
margin-left: 0 !important; |
|||
.ext-aiassistant-message-user { |
|||
margin- |
margin-right: 0 !important; |
||
margin-top: 1.6em !important; |
|||
margin-bottom: 1.6em !important; |
|||
} |
} |
||
.ext-aiassistant-message + .ext-aiassistant-message { |
|||
margin-top: 0 !important; |
|||
/* Change background of the Send button ONLY when it is disabled */ |
|||
.ext-aiassistant-send:disabled { |
|||
background-color: #CCCCCC !important; |
|||
/* Recommended: Change the border to match so it looks flat */ |
|||
border-color: #CCCCCC !important; |
|||
} |
} |
||
/* --- User bubble --- */ |
|||
/* ======================================================= */ |
|||
.ext-aiassistant-message-user { |
|||
/* 6. AI ASSISTANT TYPOGRAPHY (Match Article Style) */ |
|||
margin-left: 100px !important; |
|||
/* ======================================================= */ |
|||
/* 1. Target the text container within the AI message */ |
|||
.ext-aiassistant-message-assistant { |
|||
/* Ensure font size matches the article body (usually 14px or 0.875em) */ |
|||
font-size: 1em !important; |
|||
color: #202122 !important; /* Standard MediaWiki text color */ |
|||
} |
|||
/* 2. Unify Line-Height for Paragraphs and Lists */ |
|||
.ext-aiassistant-message-assistant p, |
|||
.ext-aiassistant-message-assistant li, |
|||
.ext-aiassistant-message-assistant ul, |
|||
.ext-aiassistant-message-assistant ol { |
|||
/* Matches your #content rule: line-height: 1.6 */ |
|||
line-height: 1.6 !important; |
|||
} |
|||
/* 3. Add Spacing Between Paragraphs */ |
|||
.ext-aiassistant-message-assistant p { |
|||
/* Standard MediaWiki paragraph spacing (approx 1em) */ |
|||
margin-bottom: 1.1em !important; |
|||
margin-top: 0 !important; |
margin-top: 0 !important; |
||
margin-bottom: 0 !important; |
|||
} |
} |
||
.ext-aiassistant-message-user .ext-aiassistant-message__content { |
|||
/* 4. Fix List Spacing (Bullets) */ |
|||
background-color: #202122 !important; |
|||
.ext-aiassistant-message-assistant ul, |
|||
color: white !important; |
|||
.ext-aiassistant-message-assistant ol { |
|||
border-radius: 18px !important; |
|||
border: none !important; |
|||
padding |
padding: 6px 12px !important; |
||
} |
} |
||
.ext-aiassistant-message- |
.ext-aiassistant-message-user .ext-aiassistant-message__content p { |
||
color: white !important; |
|||
/* Small gap between bullet points for readability */ |
|||
margin |
margin: 0 !important; |
||
} |
} |
||
/* --- Assistant typography (matches article style) --- */ |
|||
/* 5. Ensure Citations [1] don't break the line height */ |
|||
.ext-aiassistant- |
.ext-aiassistant-message-assistant { |
||
font-family: sans-serif !important; |
|||
font-size: |
font-size: 1em !important; |
||
color: #202122 !important; |
|||
overflow-wrap: break-word !important; |
|||
white-space: normal !important; |
|||
max-width: 100% !important; |
|||
} |
} |
||
.ext-aiassistant-message-assistant p { |
|||
/* ======================================================= */ |
|||
margin: 0 0 0.6em !important; |
|||
/* 6. AI ASSISTANT TYPOGRAPHY (Match Article Style) */ |
|||
/* ======================================================= */ |
|||
/* 1. Target the text container within the AI message */ |
|||
.ext-aiassistant-message-assistant { |
|||
/* Ensure font size matches the article body (usually 14px or 0.875em) */ |
|||
font-size: 1em !important; |
|||
color: #202122 !important; /* Standard MediaWiki text color */ |
|||
} |
} |
||
/* 2. Unify Line-Height for Paragraphs and Lists */ |
|||
.ext-aiassistant-message-assistant p, |
.ext-aiassistant-message-assistant p, |
||
.ext-aiassistant-message-assistant li, |
.ext-aiassistant-message-assistant li, |
||
.ext-aiassistant-message-assistant ul, |
.ext-aiassistant-message-assistant ul, |
||
.ext-aiassistant-message-assistant ol { |
.ext-aiassistant-message-assistant ol { |
||
line-height: 1.6 !important; |
|||
line-height: 1.6 !important; |
|||
} |
} |
||
/* 3. Add Spacing Between Paragraphs */ |
|||
.ext-aiassistant-message-assistant p { |
|||
/* Standard MediaWiki paragraph spacing (approx 1em) */ |
|||
margin-bottom: 0.6em !important; |
|||
margin-top: 0 !important; |
|||
} |
|||
/* ======================================================= */ |
|||
/* 4. UNIFIED BULLET POINTS (Clean Editorial Style) */ |
|||
/* ======================================================= */ |
|||
/* A. Base Reset for all lists */ |
|||
.ext-aiassistant-message-assistant ul, |
.ext-aiassistant-message-assistant ul, |
||
.ext-aiassistant-message-assistant ol { |
.ext-aiassistant-message-assistant ol { |
||
margin |
margin: 0.3em 0 0.6em !important; |
||
margin- |
margin-left: 0 !important; |
||
padding-top: 0 !important; |
|||
} |
} |
||
/* B. LEVEL 1: Flush Alignment & Filled Circle */ |
|||
.ext-aiassistant-message-assistant ul { |
.ext-aiassistant-message-assistant ul { |
||
list-style-type: disc !important; |
|||
/* 1. Force the filled circle (disc) */ |
|||
padding-left: 1.2em !important; |
|||
/* 2. ALIGNMENT TRICK: |
|||
1.2em padding reserves just enough space for the bullet. |
|||
This makes the bullet symbol sit 'flush' with the normal text above, |
|||
while the list item text is indented. */ |
|||
padding-left: 1.2em !important; |
|||
} |
} |
||
/* C. LEVEL 2+ (NESTED): Indentation & Consistency */ |
|||
.ext-aiassistant-message-assistant ul ul { |
.ext-aiassistant-message-assistant ul ul { |
||
list-style-type: disc !important; |
|||
/* Keep the same filled circle (don't switch to empty circle) */ |
|||
padding-left: 1.5em !important; |
|||
/* Indent this level relative to the parent */ |
|||
padding-left: 1.5em !important; |
|||
} |
} |
||
/* D. List Item Spacing */ |
|||
.ext-aiassistant-message-assistant li { |
.ext-aiassistant-message-assistant li { |
||
margin-bottom: 0.2em !important; |
margin-bottom: 0.2em !important; |
||
white-space: normal !important; |
|||
} |
} |
||
/* 5. Ensure Citations [1] don't break the line height */ |
|||
.ext-aiassistant-cite { |
|||
line-height: 1 !important; |
|||
font-size: 80% !important; |
|||
vertical-align: super !important; |
|||
} |
|||
/* ======================================================= */ |
|||
/* FIX FOR AI ASSISTANT: LINE BREAKS & FONT UNIFICATION */ |
|||
/* ======================================================= */ |
|||
/* 1. Force container to handle spacing correctly */ |
|||
.ext-aiassistant-message-assistant { |
|||
font-family: sans-serif !important; |
|||
word-wrap: break-word !important; |
|||
overflow-wrap: break-word !important; |
|||
/* Collapses invisible newlines between blocks to prevent gaps */ |
|||
white-space: normal !important; |
|||
max-width: 100% !important; |
|||
} |
|||
/* 2. Fix 'Code Blocks' (Indented lists starting with *) */ |
|||
/* These were refusing to wrap because browsers treat them as <pre> code */ |
|||
.ext-aiassistant-message-assistant pre, |
.ext-aiassistant-message-assistant pre, |
||
.ext-aiassistant-message-assistant code { |
.ext-aiassistant-message-assistant code { |
||
white-space: pre-wrap !important; |
|||
/* FORCE WRAPPING: This fixes the text going off-screen */ |
|||
white-space: pre-wrap !important; |
|||
word-wrap: break-word !important; |
word-wrap: break-word !important; |
||
font-family: inherit !important; |
|||
/* Make it look like normal text */ |
|||
font-family: inherit !important; |
|||
background: transparent !important; |
background: transparent !important; |
||
border: none !important; |
border: none !important; |
||
padding: 0 !important; |
padding: 0 !important; |
||
margin: 0 !important; |
|||
/* Remove gaps */ |
|||
margin-top: 0 !important; |
|||
margin-bottom: 0 !important; |
|||
} |
} |
||
/* |
/* --- Action buttons (copy, source) --- */ |
||
.ext-aiassistant-message-assistant |
.ext-aiassistant-message-assistant .ext-aiassistant-actions { |
||
display: flex !important; |
|||
.ext-aiassistant-message-assistant ol { |
|||
flex-direction: row-reverse !important; |
|||
padding-top: 0 !important; |
|||
word-wrap: break-word !important; |
|||
} |
} |
||
.ext-aiassistant-message-user .ext-aiassistant-actions { |
|||
/* 4. Fix List Items */ |
|||
display: flex !important; |
|||
.ext-aiassistant-message-assistant li { |
|||
justify-content: flex-end !important; |
|||
word-wrap: break-word !important; |
|||
} |
} |
||
/* --- Citations --- */ |
|||
/* ======================================================= */ |
|||
.ext-aiassistant-cite { |
|||
/* 7. AI ASSISTANT COLORS (Footer & Active Button) */ |
|||
line-height: 1 !important; |
|||
/* ======================================================= */ |
|||
font-size: 80% !important; |
|||
vertical-align: super !important; |
|||
} |
|||
/* --- Sources --- */ |
|||
/* 2. Change Active Send Button to Dark (#202122) */ |
|||
.ext-aiassistant-sources { |
|||
/* We use :not(:disabled) to target the button only when it is active, |
|||
background: transparent !important; |
|||
ensuring we don't overwrite the light grey disabled state. */ |
|||
border: none !important; |
|||
.ext-aiassistant-send:not(:disabled) { |
|||
box-shadow: none !important; |
|||
padding: 0 !important; |
|||
margin-bottom: 12px !important; |
|||
} |
} |
||
/* --- "New Chat" label --- */ |
|||
/* ======================================================= */ |
|||
/* 8. RENAME "NEW CHAT" BUTTON TO "NEW" */ |
|||
/* ======================================================= */ |
|||
/* 1. Hide the original text "New chat" */ |
|||
/* We scope this to the AI panel and exclude icon-only buttons (like Close/X) */ |
|||
.ext-aiassistant-panel .cdx-button--weight-quiet:not(.cdx-button--icon-only) { |
.ext-aiassistant-panel .cdx-button--weight-quiet:not(.cdx-button--icon-only) { |
||
font-size: 0 !important; |
font-size: 0 !important; |
||
} |
} |
||
/* 2. Inject the new text "New" */ |
|||
.ext-aiassistant-panel .cdx-button--weight-quiet:not(.cdx-button--icon-only)::before { |
.ext-aiassistant-panel .cdx-button--weight-quiet:not(.cdx-button--icon-only)::before { |
||
content: "New" !important; |
content: "New" !important; |
||
font-size: 0.875rem !important; |
|||
/* Restore the font size (0.875rem is standard 14px) */ |
|||
font-size: 0.875rem !important; |
|||
font-weight: bold !important; |
font-weight: bold !important; |
||
color: #202122 !important; |
|||
/* Ensure color is inherited or set explicitly */ |
|||
color: #202122 !important; |
|||
visibility: visible !important; |
visibility: visible !important; |
||
} |
} |
||
/* --- Footer + Composer --- */ |
|||
/* ======================================================= */ |
|||
.ext-aiassistant-footer { |
|||
/* FIX: PREVENT IPHONE ZOOM ON AI ASSISTANT INPUT */ |
|||
border-top: 1px solid #202122 !important; |
|||
/* ======================================================= */ |
|||
display: flex !important; |
|||
align-items: center !important; |
|||
@media screen and (max-width: 768px) { |
|||
justify-content: center !important; |
|||
/* 1. Force font-size to 16px to stop iOS zooming in */ |
|||
.ext-aiassistant-panel input, |
|||
.ext-aiassistant-panel textarea, |
|||
.ext-aiassistant-panel .cdx-text-input__input { |
|||
font-size: 16px !important; |
|||
} |
|||
/* 2. Prevent horizontal scrolling on the main body */ |
|||
/* This ensures that even if a small shift happens, the white bar is hidden */ |
|||
html, body { |
|||
overflow-x: hidden !important; |
|||
width: 100% !important; |
|||
position: relative; /* Stabilizes the container */ |
|||
} |
|||
} |
|||
/* ======================================================= */ |
|||
/* PRINT OPTIMIZATION: HIDE UI & FIX FONTS */ |
|||
/* ======================================================= */ |
|||
@media print { |
|||
/* 1. Hide the 4 floating bottom buttons (Search, Home, ToC, Email) */ |
|||
#searchIcon, |
|||
.branding-box, |
|||
#cps-open-toc, |
|||
#custom-email-btn { |
|||
display: none !important; |
|||
} |
|||
/* 2. Hide the ToC panel and Overlay if they happen to be open */ |
|||
#cps-toc-panel, |
|||
#cps-toc-overlay { |
|||
display: none !important; |
|||
} |
|||
/* 3. Hide the search input bar if it was left open */ |
|||
.minerva-header .search-box { |
|||
display: none !important; |
|||
} |
|||
/* 4. Hide the AI Assistant (Icon & Chat Panel) */ |
|||
.ext-aiassistant, |
|||
.ext-aiassistant-panel, |
|||
.ext-aiassistant-trigger { |
|||
display: none !important; |
|||
} |
|||
/* 5. Fix Font Consistency for Lists */ |
|||
/* Forces bullet points to use the same Serif font as the body text */ |
|||
.mw-parser-output ul, |
|||
.mw-parser-output ol, |
|||
.mw-parser-output li { |
|||
font-family: inherit !important; |
|||
} |
|||
} |
|||
/* Hide AI Assistant shortcut hint on mobile */ |
|||
@media screen and (max-width: 768px) { |
|||
.ext-aiassistant-shortcut-hint { |
|||
display: none !important; |
|||
} |
|||
} |
|||
/* ======================================================= */ |
|||
/* LOGO: FIT TO BODYCONTENT WIDTH */ |
|||
/* ======================================================= */ |
|||
.fullscreen-logo { |
|||
width: 100% !important; |
|||
padding: 0 !important; |
padding: 0 !important; |
||
box-sizing: border-box !important; |
|||
background-color: #f8f9fa !important; |
|||
/* Match your #content max-width so it never exceeds the text column */ |
|||
max-width: 900px !important; |
|||
} |
} |
||
.ext-aiassistant-prompt-composer { |
|||
.fullscreen-logo figure, |
|||
.fullscreen-logo .mw-default-size, |
|||
.fullscreen-logo .mw-halign-center { |
|||
max-width: 100% !important; |
|||
width: 100% !important; |
|||
margin: 0 !important; |
margin: 0 !important; |
||
padding: 0 !important; |
|||
} |
|||
.fullscreen-logo figure > span { |
|||
display: block !important; |
|||
width: 100% !important; |
width: 100% !important; |
||
background-color: #fff !important; |
|||
padding: 10px 20px !important; |
|||
border: none !important; |
|||
border-radius: 0 !important; |
|||
} |
} |
||
.ext-aiassistant-prompt-composer__toolbar { |
|||
.fullscreen-logo img.mw-file-element { |
|||
display: |
display: flex !important; |
||
align-items: center !important; |
|||
max-width: 100% !important; |
|||
height: auto !important; |
|||
min-width: 0 !important; |
|||
} |
} |
||
/* --- Composer focus --- */ |
|||
/* Desktop: constrain to the actual text content width */ |
|||
.ext-aiassistant-prompt-composer:focus-within .ext-aiassistant-prompt-composer__input, |
|||
@media screen and (min-width: 1000px) { |
|||
.ext-aiassistant-prompt-composer__input:focus { |
|||
.fullscreen-logo { |
|||
border-color: #202122 !important; |
|||
/* Use the parser output width as reference instead of the full body */ |
|||
outline: none !important; |
|||
box-shadow: none !important; |
|||
} |
|||
.fullscreen-logo img.mw-file-element { |
|||
/* Cap the image so it doesn't grow past the content column */ |
|||
max-width: min(100%, 900px) !important; |
|||
margin: 0 auto !important; |
|||
} |
|||
} |
} |
||
/* --- Send button --- */ |
|||
.ext-aiassistant-prompt-composer__send { |
.ext-aiassistant-prompt-composer__send { |
||
border-radius: 50% !important; |
border-radius: 50% !important; |
||
width: |
width: 32px !important; |
||
height: |
height: 32px !important; |
||
min-width: 0 !important; |
|||
padding: 0 !important; |
padding: 0 !important; |
||
display: flex; |
display: flex !important; |
||
align-items: center; |
align-items: center !important; |
||
justify-content: center; |
justify-content: center !important; |
||
margin-left: 4px !important; |
|||
} |
} |
||
.ext-aiassistant-prompt-composer__send:not(:disabled) { |
|||
/* ========================================================= */ |
|||
background-color: #202122 !important; |
|||
/* GLOBAL WIKITABLE STYLES */ |
|||
border-color: #202122 !important; |
|||
/* ========================================================= */ |
|||
color: #ffffff !important; |
|||
/* 1. Set default font size and white background for all wikitables */ |
|||
table.wikitable { |
|||
font-size: 0.85em; |
|||
background-color: #fff; |
|||
} |
} |
||
.ext-aiassistant-prompt-composer__send:disabled { |
|||
/* Ensure individual data cells are white (keeps 'th' headers default gray) */ |
|||
background-color: #EAECF0 !important; |
|||
table.wikitable td { |
|||
border-color: #EAECF0 !important; |
|||
} |
} |
||
.ext-aiassistant-prompt-composer__send:disabled .cdx-icon svg { |
|||
/* 2. Align caption left, apply standard borders, and match background */ |
|||
fill: #72777d !important; |
|||
table.wikitable caption { |
|||
text-align: left; |
|||
font-weight: bold; |
|||
background-color: #fff; |
|||
} |
} |
||
/* Prevent wikitable borders from wrapping around the caption on small screens */ |
|||
/* ================================================================= |
|||
9. RESPONSIVE OVERRIDES |
|||
================================================================= */ |
|||
/* --- Small screens (max-width: 719px) --- */ |
|||
@media screen and (max-width: 719px) { |
@media screen and (max-width: 719px) { |
||
table.wikitable { |
table.wikitable { border: none !important; } |
||
table.wikitable > tr > th, |
|||
border: none !important; |
|||
} |
|||
/* Ensure the actual cells keep their borders to maintain the grid look */ |
|||
table.wikitable > tr > th, |
|||
table.wikitable > tr > td, |
table.wikitable > tr > td, |
||
table.wikitable > tbody > tr > th, |
table.wikitable > tbody > tr > th, |
||
table.wikitable > tbody > tr > td { |
table.wikitable > tbody > tr > td { |
||
border: 1px solid var(--border-color-base, #a2a9b1); |
border: 1px solid var(--border-color-base, #a2a9b1); |
||
| Line 1,611: | Line 1,067: | ||
} |
} |
||
/* --- Mobile (max-width: 768px) --- */ |
|||
/* Minerva-specific: Fix insufficient bullet indentation */ |
|||
@media screen and (max-width: 768px) { |
|||
body.skin-minerva .mw-parser-output ul, |
|||
/* AI assistant: fullscreen mode */ |
|||
body.skin-minerva .collapsible-block ul { |
|||
.ext-aiassistant-panel { |
|||
padding-left: 1em; |
|||
position: fixed !important; |
|||
margin-left: 0; |
|||
box-sizing: border-box !important; |
|||
width: 100% !important; |
|||
height: 100% !important; |
|||
max-width: none !important; |
|||
max-height: none !important; |
|||
top: 0 !important; |
|||
left: 0 !important; |
|||
right: 0 !important; |
|||
bottom: 0 !important; |
|||
border-radius: 0 !important; |
|||
margin: 0 !important; |
|||
} |
|||
.ext-aiassistant-body { |
|||
height: auto !important; |
|||
flex-grow: 1 !important; |
|||
} |
|||
/* Push input above sticky buttons */ |
|||
.ext-aiassistant-footer { |
|||
padding-bottom: calc(70px + env(safe-area-inset-bottom)) !important; |
|||
} |
|||
/* Add a line to separate with the sticky buttons */ |
|||
.ext-aiassistant-prompt-composer { |
|||
border-bottom: 1px solid #202122 !important; |
|||
border-radius: 0 !important; |
|||
padding-bottom: 10px !important; |
|||
} |
|||
/* Prevent iOS zoom on AI input */ |
|||
.ext-aiassistant-panel input, |
|||
.ext-aiassistant-panel textarea, |
|||
.ext-aiassistant-panel .cdx-text-input__input { |
|||
font-size: 16px !important; |
|||
} |
|||
/* Prevent horizontal scroll */ |
|||
html, body { |
|||
overflow-x: hidden !important; |
|||
width: 100% !important; |
|||
position: relative; |
|||
} |
|||
/* Hide AI shortcut hint */ |
|||
.ext-aiassistant-shortcut-hint { display: none !important; } |
|||
} |
} |
||
/* --- Tablet (min-width: 768px) --- */ |
|||
body.skin-minerva .mw-parser-output ul ul, |
|||
@media screen and (min-width: 768px) { |
|||
body.skin-minerva .collapsible-block ul ul { |
|||
/* Lock home button shape */ |
|||
padding-left: 1em; |
|||
.branding-box { |
|||
width: 44px !important; |
|||
min-width: 44px !important; |
|||
max-width: 44px !important; |
|||
flex: 0 0 44px !important; |
|||
margin-left: -86px !important; |
|||
} |
|||
/* Keep ToC centered */ |
|||
#cps-open-toc { |
|||
display: flex !important; |
|||
visibility: visible !important; |
|||
opacity: 1 !important; |
|||
z-index: 9999 !important; |
|||
margin-left: -22px !important; |
|||
background-color: rgba(0, 0, 0, 0.2) !important; |
|||
width: 44px !important; |
|||
height: 44px !important; |
|||
border-radius: 50% !important; |
|||
} |
|||
} |
} |
||
/* --- Desktop (min-width: 1000px) --- */ |
|||
/* ======================================================= */ |
|||
/* WIDER DESKTOP LAYOUT (Overrides the 900px default cap) */ |
|||
/* ======================================================= */ |
|||
@media screen and (min-width: 1000px) { |
@media screen and (min-width: 1000px) { |
||
/* |
/* Wider content column */ |
||
#content { |
#content { max-width: 1200px !important; } |
||
max-width: 1200px !important; /* Increase this number to go even wider */ |
|||
/* Note: To make it fill the entire screen edge-to-edge, use: max-width: 100% !important; */ |
|||
} |
|||
/* |
/* Match logo to wider content */ |
||
.fullscreen-logo { max-width: 100% !important; } |
|||
.fullscreen-logo img.mw-file-element { |
.fullscreen-logo img.mw-file-element { |
||
max-width: min(100%, 1200px) !important; |
max-width: min(100%, 1200px) !important; |
||
margin: 0 auto !important; |
|||
} |
} |
||
} |
|||
/* Hide ToC button on desktop Vector 2022 (full sidebar available) */ |
|||
/* Target only the content box inside the user's message wrapper */ |
|||
body.skin-vector-2022 #cps-open-toc { display: none !important; } |
|||
.ext-aiassistant-message-user .ext-aiassistant-message__content { |
|||
background-color: #202122; |
|||
color: white; |
|||
border-radius: 24px; /* Adjust the pixel value for more or less roundness */ |
|||
padding: 12px; /* Adds space so the text doesn't touch the edges */ |
|||
} |
} |
||
/* Ensure paragraph tags inside the user's message also inherit the white text color */ |
|||
.ext-aiassistant-message-user .ext-aiassistant-message__content p { |
|||
color: white; |
|||
margin: 0; |
|||
} |
|||
/* ================================================================= |
|||
/* Create a uniform gap between all consecutive chat messages */ |
|||
10. PRINT STYLES |
|||
.ext-aiassistant-message + .ext-aiassistant-message { |
|||
================================================================= */ |
|||
margin-top: 2.5em !important; /* Change this value to increase or decrease the gap */ |
|||
@media print { |
|||
/* Hide floating buttons */ |
|||
#searchIcon, |
|||
.branding-box, |
|||
#cps-open-toc, |
|||
#custom-email-btn { display: none !important; } |
|||
/* Hide ToC overlay */ |
|||
#cps-toc-panel, |
|||
#cps-toc-overlay { display: none !important; } |
|||
/* Hide search bar */ |
|||
.minerva-header .search-box { display: none !important; } |
|||
/* Hide AI assistant */ |
|||
.ext-aiassistant, |
|||
.ext-aiassistant-panel, |
|||
.ext-aiassistant-trigger { display: none !important; } |
|||
/* Font consistency for lists */ |
|||
.mw-parser-output ul, |
|||
.mw-parser-output ol, |
|||
.mw-parser-output li { font-family: inherit !important; } |
|||
} |
} |
||
Revision as of 01:34, 15 March 2026
/* =================================================================
Common.css — Global styles for all skins
Applies read-only mode, branding, navigation, and AI assistant.
Logged-in overrides live in MediaWiki:Group-user.css
================================================================= */
/* =================================================================
1. BASE MEDIAWIKI OVERRIDES (Fonts, Quotes, Math, References)
================================================================= */
cite, dfn { font-style: inherit; }
q { quotes: '"' '"' "'" "'"; }
blockquote {
overflow: hidden;
margin: 1em 0;
padding: 0 40px;
}
small { font-size: 85%; }
.mw-body-content sub, .mw-body-content sup { font-size: 80%; }
.ns-talk .mw-body-content dd { margin-top: 0.4em; margin-bottom: 0.4em; }
/* --- Collapsible elements --- */
.client-js .collapsible:not(.mw-made-collapsible).collapsed > tbody > tr:not(:first-child),
.client-js .outercollapse .innercollapse.mw-collapsible:not(.mw-made-collapsible) > p,
.client-js .outercollapse .innercollapse.mw-collapsible:not(.mw-made-collapsible) > table,
.client-js .outercollapse .innercollapse.mw-collapsible:not(.mw-made-collapsible) > thead + tbody,
.client-js .outercollapse .innercollapse.mw-collapsible:not(.mw-made-collapsible) tr:not(:first-child),
.client-js .outercollapse .innercollapse.mw-collapsible:not(.mw-made-collapsible) .mw-collapsible-content,
#editpage-specialchars {
display: none;
}
.references { margin-bottom: 0.5em; }
/* --- Cite link styling --- */
span[rel="mw:referencedBy"] { counter-reset: mw-ref-linkback 0; }
span[rel="mw:referencedBy"] > a::before {
content: counter(mw-ref-linkback, lower-alpha);
font-size: 80%; font-weight: bold; font-style: italic;
}
a[rel="mw:referencedBy"]::before { font-weight: bold; content: "^"; }
span[rel="mw:referencedBy"]::before { content: "^ "; }
.mw-parser-output .mw-collapsible-toggle:not(.mw-ui-button) {
font-weight: normal; padding-right: 0.2em; padding-left: 0.2em;
}
.mw-collapsible-leftside-toggle .mw-collapsible-toggle { float: left; }
.wikitable td ul, .wikitable td ol, .wikitable td dl { text-align: left; }
/* --- PDF icons --- */
.mw-parser-output a[href$=".pdf"].external,
.mw-parser-output a[href*=".pdf?"].external,
.mw-parser-output a[href*=".pdf#"].external,
.mw-parser-output a[href$=".PDF"].external,
.mw-parser-output a[href*=".PDF?"].external,
.mw-parser-output a[href*=".PDF#"].external {
background: url("//upload.wikimedia.org/wikipedia/commons/4/4d/Icon_pdf_file.png") no-repeat right;
padding: 8px 18px 8px 0;
}
/* --- Warnings and notices --- */
.mw-warning-with-logexcerpt.mw-warning-with-logexcerpt.mw-warning-with-logexcerpt,
div.mw-lag-warn-high, div.mw-cascadeprotectedwarning, div#mw-protect-cascadeon {
clear: both; margin: 0.2em 0; border: 1px solid #bb7070;
background-color: var(--background-color-error-subtle, #ffdbdb);
padding: 0.25em 0.9em; box-sizing: border-box;
}
.mw-contributions-blocked-notice-partial .mw-warning-with-logexcerpt.mw-warning-with-logexcerpt {
border-color: #fc3; background-color: var(--background-color-warning-subtle, #fef6e7);
}
@media (min-width: 640px) {
figure[typeof~="mw:File/Thumb"], figure[typeof~="mw:File/Frame"], .thumbinner { min-width: 100px; }
}
#mw-subcategories, #mw-pages, #mw-category-media, #filehistory, #wikiPreview, #wikiDiff { clear: both; }
/* --- Permission groups (hidden by default) --- */
.checkuser-show, .sysop-show, .abusefilter-show, .abusefilter-helper-show,
.patroller-show, .templateeditor-show, .extendedmover-show, .extendedconfirmed-show,
.autoconfirmed-show, .user-show { display: none; }
.ve-ui-mwNoticesPopupTool-item .editnotice-redlink,
.ve-ui-mwNoticesPopupTool-item .mbox-image,
.ve-ui-mwNoticesPopupTool-item .mbox-imageright { display: none !important; }
ul.permissions-errors { margin: 0; }
ul.permissions-errors > li { list-style: none; }
/* --- Math rendering --- */
span.mwe-math-mathml-inline { font-size: 118%; }
.mwe-math-fallback-image-display, .mwe-math-mathml-display {
margin-left: 1.6em !important; margin-top: 0.6em; margin-bottom: 0.6em;
}
.mwe-math-mathml-display math { display: inline; }
@media screen {
body:not(.ns-0):not(.ns-2):not(.ns-100) .gallerybox .thumb img {
background: #fff url(//upload.wikimedia.org/wikipedia/commons/5/5d/Checker-16x16.png) repeat;
}
#siteSub { display: block; }
.references { font-size: 90%; }
}
.flaggedrevs_draft_synced, .flaggedrevs_stable_synced, #t-upload,
.mw-special-Book #coll-downloadbox { display: none; }
/* --- Infoboxes --- */
.infobox {
border: 1px solid #a2a9b1; color: black; padding: 0.2em;
font-size: 88%; line-height: 1.5em; border-spacing: 3px;
}
@media screen { .infobox { background-color: #f8f9fa; } }
@media (max-width: 640px) { .infobox { width: 100%; } .infobox .nowrap { white-space: normal; } }
@media (min-width: 640px) {
.infobox { margin: 0.5em 0 0.5em 1em; float: right; clear: right; width: 22em; }
}
.infobox-header, .infobox-label, .infobox-above, .infobox-full-data, .infobox-data,
.infobox-below, .infobox-subheader, .infobox-image, .infobox-navbar,
.infobox th, .infobox td { vertical-align: top; }
.infobox-label, .infobox-data, .infobox th, .infobox td { text-align: left; }
.infobox .infobox-above, .infobox .infobox-title, .infobox caption {
font-size: 125%; font-weight: bold; text-align: center; padding: 0.2em;
}
.infobox .infobox-header, .infobox .infobox-subheader, .infobox .infobox-image,
.infobox .infobox-full-data, .infobox .infobox-below { text-align: center; }
.infobox .infobox-navbar { text-align: right; }
/* --- Text utilities --- */
.wikitable.plainrowheaders th[scope=row], .wikitable.plainrowheaders th[scope=rowgroup] {
font-weight: normal; text-align: left;
}
.nounderlines a, .IPA a:link, .IPA a:visited { text-decoration: none !important; }
.nowrap, .nowraplinks a { white-space: nowrap; }
.wrap, .wraplinks a { white-space: normal; }
span.texhtml {
font-family: "Nimbus Roman No9 L", "Times New Roman", Times, serif;
font-size: 118%; line-height: 1;
font-variant-numeric: lining-nums tabular-nums; font-kerning: none;
}
span.texhtml span.texhtml { font-size: 100%; }
@media (min-width: 640px) { span.texhtml { white-space: nowrap; } }
@media (max-width: 640px) {
.flagicon a > img, .flagicon noscript > img { max-width: none !important; }
}
@media screen { .nochecker .gallerybox .thumb img { background-image: none; } }
/* --- YouTube embeds --- */
.mw-parser-output iframe[src*="youtube.com"],
.mw-parser-output iframe[src*="youtube-nocookie.com"] {
width: 100% !important; max-width: 320px; height: auto !important;
aspect-ratio: 16 / 9; display: block; margin: 0 auto;
}
/* =================================================================
2. LAYOUT & SPACING
================================================================= */
/* --- Content width & readability --- */
#content {
max-width: 900px;
margin: 0 auto;
line-height: 1.6;
}
/* --- Header reset (invisible container for floating buttons) --- */
.header-container.header-chrome {
position: fixed !important;
top: 0 !important; left: 0 !important; right: 0 !important;
height: 60px !important;
z-index: 1000 !important;
pointer-events: none !important;
}
/* Transparent header (Minerva) */
.header-container.header-chrome,
.minerva-header {
background: transparent !important;
background-color: transparent !important;
border: none !important;
box-shadow: none !important;
}
.header-container .navigation-drawer { display: none !important; }
/* --- Top margin resets (remove white gap) --- */
body.skin-minerva { padding-top: 0 !important; }
#content,
#content.mw-body,
.mw-body {
margin-top: 0 !important;
padding-top: 0 !important;
}
.banner-container,
#siteNotice {
padding: 0 !important;
margin: 0 !important;
}
.pre-content,
.page-heading,
.firstHeading {
margin-top: 0 !important;
padding-top: 0 !important;
}
/* Push title down so it clears the invisible header */
.pre-content.heading-holder {
padding-top: 70px !important; /* 60px header + 10px visual space */
display: block !important;
}
@media (prefers-reduced-motion: reduce) {
html { scroll-behavior: auto; }
}
/* =================================================================
3. BRANDING (Logo, Tagline — Desktop Header & Mobile Footer)
================================================================= */
/* --- Desktop: hide logo wordmark, inject tagline --- */
.mw-logo-container { display: none !important; }
.mw-logo-wordmark {
display: none !important;
visibility: hidden !important;
width: 0 !important;
}
.mw-logo:hover,
.mw-logo:active,
.mw-logo:focus { text-decoration: none !important; }
.mw-logo::after {
content: "Unleashing \A intelligence";
font-size: 0.875em;
font-weight: 700;
line-height: 1.4;
color: #202122 !important;
text-decoration: none !important;
cursor: pointer;
display: block;
white-space: pre;
margin-left: 3px;
text-align: left;
position: relative;
top: 3px;
}
@media screen and (max-width: 900px) {
.mw-logo::after { display: none !important; }
}
/* --- Mobile footer: logo image + tagline --- */
.minerva-footer-logo {
font-size: 0 !important;
color: transparent !important;
display: block !important;
text-align: left !important;
margin-bottom: 20px !important;
}
.minerva-footer-logo::before {
content: "" !important;
display: block !important;
background-image: url("https://pro-wiki.s3.eu-central-1.amazonaws.com/2776118/Logo.png");
width: 160px;
height: 50px;
background-repeat: no-repeat !important;
background-size: contain !important;
background-position: left center !important;
margin-bottom: 6px !important;
}
.minerva-footer-logo::after {
content: "Unleashing intelligence" !important;
font-size: 0.875rem !important;
font-weight: 700 !important;
line-height: 1.4 !important;
color: #202122 !important;
display: block !important;
white-space: pre-wrap !important;
}
/* Force hidden Minerva footer links to appear */
body.skin-minerva #footer-places-about,
body.skin-minerva #footer-places-disclaimers {
display: inline-block !important;
}
/* --- Fullscreen logo (fits content width) --- */
.fullscreen-logo {
width: 100% !important;
padding: 0 !important;
margin: 0 auto !important;
max-width: 900px !important;
}
.fullscreen-logo figure,
.fullscreen-logo .mw-default-size,
.fullscreen-logo .mw-halign-center {
max-width: 100% !important;
width: 100% !important;
margin: 0 !important;
padding: 0 !important;
}
.fullscreen-logo figure > span {
display: block !important;
width: 100% !important;
}
.fullscreen-logo img.mw-file-element {
display: block !important;
width: 100% !important;
max-width: 100% !important;
height: auto !important;
min-width: 0 !important;
}
/* =================================================================
4. CAPSACH MOBILE TOC OVERLAY
================================================================= */
/* --- Base state (JS toggles visibility) --- */
#cps-open-toc {
position: fixed;
display: none;
}
/* --- Full-screen scrim --- */
#cps-toc-overlay {
position: fixed; inset: 0;
background: rgba(0,0,0,0.4);
display: none;
z-index: 1004;
}
#cps-toc-overlay.is-open { display: block; }
/* --- Dropdown panel --- */
#cps-toc-panel {
position: fixed;
top: 0 !important;
left: 0 !important;
right: 0 !important;
margin: 0 auto !important;
bottom: auto !important;
width: 100% !important;
max-width: 900px !important;
max-height: calc(100vh - 60px) !important;
border-radius: 0 !important;
background: #ffffff !important;
color: #202122 !important;
box-shadow: 0 10px 30px rgba(0,0,0,0.15) !important;
padding: 15px !important;
box-sizing: border-box !important;
overflow-y: auto !important;
-webkit-overflow-scrolling: touch;
z-index: 1005 !important;
display: none;
}
.is-open #cps-toc-panel,
#cps-toc-overlay.is-open + #cps-toc-panel,
#cps-toc-panel[style*="display: block"] {
display: block !important;
}
/* --- Panel header reset --- */
#cps-toc-header {
background: transparent !important;
padding: 0 !important;
margin: 0 !important;
border: none !important;
min-height: 0 !important;
}
/* --- Title bar (grey block) --- */
#cps-toc-panel > h2,
#cps-toc-title {
background-color: #F8F9FA !important;
margin: -15px -15px 15px !important;
padding: 20px 0 !important;
border-bottom: 1px solid #eaecf0 !important;
display: block !important;
width: auto !important;
text-align: center !important;
color: #202122 !important;
font-size: 18px !important;
font-family: sans-serif !important;
font-weight: bold !important;
}
/* Hide close button and duplicate headings */
#cps-toc-close,
#cps-toc-panel .toctitle,
#cps-toc-panel #mw-toc-heading,
#cps-toc-panel h2 {
display: none !important;
}
/* --- TOC list --- */
#cps-toc-list { list-style: none; margin: 0; padding: 0; }
#cps-toc-list li { margin: 0; }
#cps-toc-list a {
display: block; padding: 12px 10px;
border-bottom: 1px solid #f8f8f8;
text-decoration: none;
color: #202122;
font-size: 15px;
line-height: 1.4;
}
#cps-toc-list a:active {
background: #f0f0f0;
color: #3366cc;
}
/* Indentation levels */
#cps-toc-list li[data-level="3"] { padding-left: 15px; }
#cps-toc-list li[data-level="4"] { padding-left: 30px; }
#cps-toc-list li[data-level="5"] { padding-left: 45px; }
/* "Contents" header link — bold, orange, dark border */
#cps-toc-list a[href="#mw-toc-heading"] {
font-weight: bold !important;
color: #f07662 !important;
border-bottom: 1px solid #202122 !important;
}
/* Arrow prefix (▸) for level 2 and 3 items */
#cps-toc-list li[data-level="2"] a::before,
#cps-toc-list li[data-level="3"] a::before {
content: "▸" !important;
color: #202122 !important;
margin-right: 8px;
display: inline-block;
}
/* Remove arrow from "Contents" header (technically level 2) */
#cps-toc-list li[data-level="2"] a[href="#mw-toc-heading"]::before {
display: none !important;
content: "" !important;
}
/* Hide default in-article TOC */
.toc,
#toc,
.mw-parser-output #toc,
.client-js .mw-content-ltr .toc {
display: none !important;
}
/* =================================================================
5. FLOATING BOTTOM BUTTONS (Search, Home, ToC, Email)
================================================================= */
/* --- Shared styles (all 4 buttons + search input) --- */
.branding-box,
#searchIcon,
#cps-open-toc,
#custom-email-btn,
body.mw-mf-search-mode .minerva-header .search-box input {
background-color: rgba(0, 0, 0, 0.2) !important;
opacity: 1 !important;
border-radius: 50% !important;
border: none !important;
box-shadow: none !important;
backdrop-filter: none !important;
pointer-events: auto !important;
box-sizing: border-box !important;
width: 44px !important;
height: 44px !important;
min-width: 44px !important;
max-width: 44px !important;
padding: 0 !important;
margin: 0 !important;
position: fixed !important;
top: auto !important;
bottom: calc(15px + env(safe-area-inset-bottom)) !important;
transform: translateZ(0);
will-change: transform;
left: 50% !important;
right: auto !important;
display: flex !important;
align-items: center;
justify-content: center;
z-index: 1002 !important;
}
/* --- Individual positions --- */
/* Search (far left, offset -150px) */
#searchIcon {
margin-left: -150px !important;
z-index: 1003 !important;
}
#searchIcon .minerva-icon {
font-size: 24px !important;
color: #fff !important;
fill: #fff !important;
filter: brightness(0) invert(1);
}
/* Home (left of center, offset -86px) */
.branding-box {
margin-left: -86px !important;
flex: 0 0 44px !important;
}
.branding-box::after {
content: "⌂";
font-size: 30px !important;
color: #fff !important;
-webkit-text-stroke: 0.5px #fff !important;
margin-top: -6px !important;
line-height: 1 !important;
}
.branding-box a { opacity: 0 !important; position: absolute; inset: 0; }
/* ToC (center, offset -22px) */
#cps-open-toc { margin-left: -22px !important; }
#cps-open-toc .icon {
font-size: 30px !important;
line-height: 1 !important;
margin-bottom: 3px !important;
color: #fff !important;
}
#cps-open-toc .label { display: none !important; }
/* Email (right of center, offset +42px) */
#custom-email-btn { margin-left: 42px !important; }
#custom-email-btn::after {
content: "\2709\FE0E"; /* Text-mode envelope glyph */
font-size: 26px !important;
line-height: 1 !important;
margin-top: -2px !important;
color: transparent !important;
text-shadow: 0 0 0 #fff !important;
}
/* --- Search input (expanded state) --- */
body:not(.mw-mf-search-mode) .minerva-header .search-box {
display: none !important;
}
body.mw-mf-search-mode .minerva-header .search-box {
display: block !important;
position: fixed !important;
top: 8px !important;
height: 44px !important;
z-index: 1001 !important;
left: 10px !important;
right: 10px !important;
width: auto !important;
padding: 0 !important; margin: 0 !important;
background: transparent !important;
border-radius: 0 !important;
}
body.mw-mf-search-mode .minerva-header .search-box input {
width: 100% !important;
font-size: 16px !important;
color: #fff !important;
-webkit-text-fill-color: #fff !important;
padding-left: 55px !important;
padding-right: 55px !important;
position: static !important;
margin: 0 !important;
}
.minerva-header .search-box .search-box-icon-overlay { display: none !important; }
body.mw-mf-search-mode .minerva-header .search-box input::placeholder {
color: rgba(255, 255, 255, 0.7) !important;
-webkit-text-fill-color: rgba(255, 255, 255, 0.7) !important;
}
.search-box .search-box-cancel {
display: block !important;
position: absolute !important;
top: 0 !important; right: 0 !important;
width: 44px !important; height: 44px !important;
line-height: 44px !important;
text-align: center !important;
color: #fff !important;
z-index: 1004 !important;
}
/* =================================================================
6. GLOBAL HIDE (Read-Only Mode)
Hidden for everyone; un-hidden in MediaWiki:Group-user.css
================================================================= */
/* --- User links (includes Vector 2022 sticky header IDs) --- */
#vector-user-links,
#p-personal,
#pt-login,
#pt-login-2,
#pt-createaccount,
#pt-createaccount-2,
#pt-userpage,
#pt-mytalk,
#pt-preferences,
#pt-watchlist,
#pt-mycontris,
#pt-logout {
display: none !important;
}
/* --- Tools (sidebar, dropdowns, tabs) --- */
#p-tb,
#vector-page-tools,
#vector-page-tools-dropdown,
.vector-p-tb,
#ca-viewsource,
#ca-history,
#ca-talk {
display: none !important;
}
/* --- Categories --- */
#catlinks,
.catlinks,
.mw-normal-catlinks {
display: none !important;
}
/* --- Page actions (Language, Watch, Edit, etc.) --- */
#p-views,
.page-actions-menu__list,
.page-actions-menu {
display: none !important;
}
/* --- Vector 2022 page toolbar & pre-content --- */
.vector-page-toolbar { display: none !important; }
.vector-body-before-content { display: none !important; }
/* --- Language selector & main menu --- */
#p-vector-user-menu-preferences { display: none !important; }
.vector-main-menu-landmark { display: none !important; }
/* --- Color theme (anonymous only) --- */
body:not(.group-user) #skin-client-prefs-skin-theme { display: none !important; }
/* --- Mobile: history bar --- */
.last-modified-bar,
a.last-modified-bar {
display: none !important;
visibility: hidden !important;
}
.last-modified-bar__text,
.modified-enhancement,
.minerva-icon--modified-history {
display: none !important;
}
/* --- Mobile: user/login menu --- */
.minerva-user-menu { display: none !important; }
.toggle-list__toggle#minerva-user-menu-toggle { display: none !important; }
.minerva-icon--userAvatarOutline { display: none !important; }
/* --- Mobile: sidebar items --- */
#mw-mf-page-left a[href*="Special:RecentChanges"],
#mw-mf-page-left a[data-event-name="recentchanges"],
#mw-mf-page-left a[href*="Special:SpecialPages"],
#mw-mf-page-left a[href*="Community_portal"] {
display: none !important;
}
/* =================================================================
7. TYPOGRAPHY & LINKS
================================================================= */
/* --- Heading colors --- */
.mw-heading1, h1,
.mw-heading2, h2,
h3, h4, h5, h6,
.firstHeading,
.mw-page-title-main,
.page-heading,
.section-heading,
.vector-sticky-header-context-bar-primary,
.mw-headline,
.vector-pinnable-header-label {
color: #202122 !important;
}
/* --- Heading borders --- */
.mw-heading1, h1,
.mw-heading2, h2,
.section-heading {
border-bottom: 1px solid #202122 !important;
margin-bottom: 0.6em;
}
.mw-first-heading {
border-bottom: 2px solid #202122 !important;
margin-bottom: 0.5em;
}
/* Remove Vector 2022 default title underline */
.vector-page-titlebar::after {
background-color: transparent !important;
display: none !important;
height: 0 !important;
}
/* Contents sidebar heading (no border) */
h2.vector-pinnable-header-label { border-bottom: none !important; }
/* --- Link colors (legacy blue #1d70b8) --- */
a,
a:visited,
.mw-parser-output a,
.mw-parser-output a:visited,
.mw-body-content a.external,
.mw-body-content a.external:visited,
.mw-collapsible-toggle-default .mw-collapsible-text {
color: #1d70b8 !important;
}
/* Red links (missing pages) */
a.new,
a.new:visited { color: #d73333 !important; }
/* UI buttons stay white */
a.mw-ui-button,
a.mw-ui-button:visited { color: #fff !important; }
/* --- Edit section links --- */
.mw-editsection, .mw-editsection a {
color: #202122 !important;
opacity: 0.7;
}
/* --- Footer borders --- */
#footer,
.mw-footer,
.minerva-footer,
.printfooter {
border-top: 1px solid #202122 !important;
}
#footer-icons { display: none !important; }
.minerva-footer .footer-content,
.minerva-footer .branding-box,
.minerva-footer-logo,
#footer-info,
#footer-places {
border: none !important;
}
/* Mobile section expand icon */
.skin-minerva .section-heading .mw-ui-icon-wikimedia-expand-small {
filter: grayscale(1) brightness(0.2);
}
/* --- Wikitable styles --- */
table.wikitable {
font-size: 0.85em;
background-color: #fff;
}
table.wikitable td { background-color: #fff; }
table.wikitable caption {
text-align: left;
font-weight: bold;
background-color: #fff;
}
/* --- Navigation menu paragraphs --- */
.navigation-menu .infobox-data p {
font-size: 1em !important;
margin: 0 !important;
padding: 0 !important;
}
/* --- Main page menu --- */
.main-page-menu {
line-height: 1.8;
margin-bottom: 0;
font-size: 1em;
}
/* --- Read pill (inline badge) --- */
.read-pill {
display: inline;
white-space: nowrap;
padding: 1px 0.4em;
position: relative;
top: -1px;
border-radius: 4px;
margin: 0 0.2em 0 0;
font-size: 0.85em;
font-weight: 500;
color: #202122 !important;
-webkit-box-decoration-break: clone;
box-decoration-break: clone;
}
.read-pill a,
.read-pill a:visited {
color: #202122 !important;
text-decoration: none !important;
}
.read-pill a.new {
color: red !important;
padding: 0 4px;
border-radius: 3px;
}
/* --- Minerva bullet indentation fix --- */
body.skin-minerva .mw-parser-output ul,
body.skin-minerva .collapsible-block ul {
padding-left: 1em;
margin-left: 0;
}
body.skin-minerva .mw-parser-output ul ul,
body.skin-minerva .collapsible-block ul ul {
padding-left: 1em;
}
/* =================================================================
8. AI ASSISTANT PANEL
================================================================= */
/* --- Z-index: sits behind floating buttons (z-index 1002) --- */
.ext-aiassistant,
.ext-aiassistant-panel {
z-index: 1001 !important;
}
/* --- Panel shell --- */
.ext-aiassistant-panel {
border: 1px solid #202122 !important;
box-shadow: none !important;
}
/* --- Header --- */
.ext-aiassistant-header {
border-bottom: 1px solid #202122 !important;
margin-left: 0 !important;
margin-right: 0 !important;
padding-left: 12px !important;
padding-right: 12px !important;
}
/* --- Message area --- */
.ext-aiassistant-body {
padding-left: 20px !important;
padding-right: 20px !important;
box-sizing: border-box !important;
}
.ext-aiassistant-message {
margin-left: 0 !important;
margin-right: 0 !important;
}
.ext-aiassistant-message + .ext-aiassistant-message {
margin-top: 0 !important;
}
/* --- User bubble --- */
.ext-aiassistant-message-user {
margin-left: 100px !important;
margin-top: 0 !important;
margin-bottom: 0 !important;
}
.ext-aiassistant-message-user .ext-aiassistant-message__content {
background-color: #202122 !important;
color: white !important;
border-radius: 18px !important;
border: none !important;
padding: 6px 12px !important;
}
.ext-aiassistant-message-user .ext-aiassistant-message__content p {
color: white !important;
margin: 0 !important;
}
/* --- Assistant typography (matches article style) --- */
.ext-aiassistant-message-assistant {
font-family: sans-serif !important;
font-size: 1em !important;
color: #202122 !important;
overflow-wrap: break-word !important;
white-space: normal !important;
max-width: 100% !important;
}
.ext-aiassistant-message-assistant p {
margin: 0 0 0.6em !important;
}
.ext-aiassistant-message-assistant p,
.ext-aiassistant-message-assistant li,
.ext-aiassistant-message-assistant ul,
.ext-aiassistant-message-assistant ol {
line-height: 1.6 !important;
}
.ext-aiassistant-message-assistant ul,
.ext-aiassistant-message-assistant ol {
margin: 0.3em 0 0.6em !important;
margin-left: 0 !important;
padding-top: 0 !important;
}
.ext-aiassistant-message-assistant ul {
list-style-type: disc !important;
padding-left: 1.2em !important;
}
.ext-aiassistant-message-assistant ul ul {
list-style-type: disc !important;
padding-left: 1.5em !important;
}
.ext-aiassistant-message-assistant li {
margin-bottom: 0.2em !important;
white-space: normal !important;
}
.ext-aiassistant-message-assistant pre,
.ext-aiassistant-message-assistant code {
white-space: pre-wrap !important;
word-wrap: break-word !important;
font-family: inherit !important;
background: transparent !important;
border: none !important;
padding: 0 !important;
margin: 0 !important;
}
/* --- Action buttons (copy, source) --- */
.ext-aiassistant-message-assistant .ext-aiassistant-actions {
display: flex !important;
flex-direction: row-reverse !important;
}
.ext-aiassistant-message-user .ext-aiassistant-actions {
display: flex !important;
justify-content: flex-end !important;
}
/* --- Citations --- */
.ext-aiassistant-cite {
line-height: 1 !important;
font-size: 80% !important;
vertical-align: super !important;
}
/* --- Sources --- */
.ext-aiassistant-sources {
background: transparent !important;
border: none !important;
box-shadow: none !important;
padding: 0 !important;
margin-bottom: 12px !important;
}
/* --- "New Chat" label --- */
.ext-aiassistant-panel .cdx-button--weight-quiet:not(.cdx-button--icon-only) {
font-size: 0 !important;
}
.ext-aiassistant-panel .cdx-button--weight-quiet:not(.cdx-button--icon-only)::before {
content: "New" !important;
font-size: 0.875rem !important;
font-weight: bold !important;
color: #202122 !important;
visibility: visible !important;
}
/* --- Footer + Composer --- */
.ext-aiassistant-footer {
border-top: 1px solid #202122 !important;
display: flex !important;
align-items: center !important;
justify-content: center !important;
padding: 0 !important;
box-sizing: border-box !important;
background-color: #f8f9fa !important;
}
.ext-aiassistant-prompt-composer {
margin: 0 !important;
width: 100% !important;
background-color: #fff !important;
padding: 10px 20px !important;
border: none !important;
border-radius: 0 !important;
}
.ext-aiassistant-prompt-composer__toolbar {
display: flex !important;
align-items: center !important;
}
/* --- Composer focus --- */
.ext-aiassistant-prompt-composer:focus-within .ext-aiassistant-prompt-composer__input,
.ext-aiassistant-prompt-composer__input:focus {
border-color: #202122 !important;
outline: none !important;
box-shadow: none !important;
}
/* --- Send button --- */
.ext-aiassistant-prompt-composer__send {
border-radius: 50% !important;
width: 32px !important;
height: 32px !important;
min-width: 0 !important;
padding: 0 !important;
display: flex !important;
align-items: center !important;
justify-content: center !important;
margin-left: 4px !important;
}
.ext-aiassistant-prompt-composer__send:not(:disabled) {
background-color: #202122 !important;
border-color: #202122 !important;
color: #ffffff !important;
}
.ext-aiassistant-prompt-composer__send:disabled {
background-color: #EAECF0 !important;
border-color: #EAECF0 !important;
}
.ext-aiassistant-prompt-composer__send:disabled .cdx-icon svg {
fill: #72777d !important;
}
/* =================================================================
9. RESPONSIVE OVERRIDES
================================================================= */
/* --- Small screens (max-width: 719px) --- */
@media screen and (max-width: 719px) {
table.wikitable { border: none !important; }
table.wikitable > tr > th,
table.wikitable > tr > td,
table.wikitable > tbody > tr > th,
table.wikitable > tbody > tr > td {
border: 1px solid var(--border-color-base, #a2a9b1);
}
}
/* --- Mobile (max-width: 768px) --- */
@media screen and (max-width: 768px) {
/* AI assistant: fullscreen mode */
.ext-aiassistant-panel {
position: fixed !important;
box-sizing: border-box !important;
width: 100% !important;
height: 100% !important;
max-width: none !important;
max-height: none !important;
top: 0 !important;
left: 0 !important;
right: 0 !important;
bottom: 0 !important;
border-radius: 0 !important;
margin: 0 !important;
}
.ext-aiassistant-body {
height: auto !important;
flex-grow: 1 !important;
}
/* Push input above sticky buttons */
.ext-aiassistant-footer {
padding-bottom: calc(70px + env(safe-area-inset-bottom)) !important;
}
/* Add a line to separate with the sticky buttons */
.ext-aiassistant-prompt-composer {
border-bottom: 1px solid #202122 !important;
border-radius: 0 !important;
padding-bottom: 10px !important;
}
/* Prevent iOS zoom on AI input */
.ext-aiassistant-panel input,
.ext-aiassistant-panel textarea,
.ext-aiassistant-panel .cdx-text-input__input {
font-size: 16px !important;
}
/* Prevent horizontal scroll */
html, body {
overflow-x: hidden !important;
width: 100% !important;
position: relative;
}
/* Hide AI shortcut hint */
.ext-aiassistant-shortcut-hint { display: none !important; }
}
/* --- Tablet (min-width: 768px) --- */
@media screen and (min-width: 768px) {
/* Lock home button shape */
.branding-box {
width: 44px !important;
min-width: 44px !important;
max-width: 44px !important;
flex: 0 0 44px !important;
margin-left: -86px !important;
}
/* Keep ToC centered */
#cps-open-toc {
display: flex !important;
visibility: visible !important;
opacity: 1 !important;
z-index: 9999 !important;
margin-left: -22px !important;
background-color: rgba(0, 0, 0, 0.2) !important;
width: 44px !important;
height: 44px !important;
border-radius: 50% !important;
}
}
/* --- Desktop (min-width: 1000px) --- */
@media screen and (min-width: 1000px) {
/* Wider content column */
#content { max-width: 1200px !important; }
/* Match logo to wider content */
.fullscreen-logo { max-width: 100% !important; }
.fullscreen-logo img.mw-file-element {
max-width: min(100%, 1200px) !important;
margin: 0 auto !important;
}
/* Hide ToC button on desktop Vector 2022 (full sidebar available) */
body.skin-vector-2022 #cps-open-toc { display: none !important; }
}
/* =================================================================
10. PRINT STYLES
================================================================= */
@media print {
/* Hide floating buttons */
#searchIcon,
.branding-box,
#cps-open-toc,
#custom-email-btn { display: none !important; }
/* Hide ToC overlay */
#cps-toc-panel,
#cps-toc-overlay { display: none !important; }
/* Hide search bar */
.minerva-header .search-box { display: none !important; }
/* Hide AI assistant */
.ext-aiassistant,
.ext-aiassistant-panel,
.ext-aiassistant-trigger { display: none !important; }
/* Font consistency for lists */
.mw-parser-output ul,
.mw-parser-output ol,
.mw-parser-output li { font-family: inherit !important; }
}