MediaWiki:Common.css
Note: After publishing, you may have to bypass your browser's cache to see the changes.
- Firefox / Safari: Hold Shift while clicking Reload, or press either Ctrl-F5 or Ctrl-R (⌘-R on a Mac)
- Google Chrome: Press Ctrl-Shift-R (⌘-Shift-R on a Mac)
- Edge: Hold Ctrl while clicking Refresh, or press Ctrl-F5.
/* =================================================================
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 (AXA BRAIN)
================================================================= */
/* --- Layer order: sits behind floating buttons (z-index 1002) --- */
.ext-aiassistant,
.ext-aiassistant-panel {
z-index: 1001 !important;
}
/* --- Panel: dark border, no shadow --- */
.ext-aiassistant-panel {
border: 1px solid #202122 !important;
box-shadow: none !important;
}
/* --- Header & footer borders --- */
.ext-aiassistant-header { border-bottom: 1px solid #202122 !important; }
.ext-aiassistant-footer {
border-top: 1px solid #202122 !important;
align-items: center !important;
}
/* --- Send button (circle) --- */
.ext-aiassistant-send,
.ext-aiassistant-prompt-composer__send {
border-radius: 50% !important;
width: 36px !important;
height: 36px !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-send:not(:disabled) {
background-color: #202122 !important;
border-color: #202122 !important;
color: #ffffff !important;
}
.ext-aiassistant-send:disabled {
background-color: #CCCCCC !important;
border-color: #CCCCCC !important;
}
/* --- User message bubble --- */
.ext-aiassistant-message-user {
margin-left: 100px !important;
margin-top: 1.6em !important;
margin-bottom: 1.6em !important;
}
.ext-aiassistant-message-user .ext-aiassistant-message__content {
background-color: #202122;
color: white;
border-radius: 24px;
padding: 12px;
}
.ext-aiassistant-message-user .ext-aiassistant-message__content p {
color: white;
margin: 0;
}
/* Uniform gap between consecutive messages */
.ext-aiassistant-message + .ext-aiassistant-message {
margin-top: 2.5em !important;
}
/* --- Assistant message typography (matches article style) --- */
.ext-aiassistant-message-assistant {
font-family: sans-serif !important;
font-size: 1em !important;
color: #202122 !important;
word-wrap: break-word !important;
overflow-wrap: break-word !important;
white-space: normal !important;
max-width: 100% !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 p {
margin: 0 0 0.6em !important;
}
/* --- Assistant lists (clean editorial style) --- */
.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;
word-wrap: break-word !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;
word-wrap: break-word !important;
}
/* --- Assistant code blocks (force wrapping) --- */
.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;
}
/* --- Citations --- */
.ext-aiassistant-cite {
line-height: 1 !important;
font-size: 80% !important;
vertical-align: super !important;
}
/* --- "New Chat" button rename --- */
.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;
}
/* --- Alignment fixes: gutters, centering, button order --- */
/* 1. Shared horizontal padding — aligns header button edges,
message edges, and composer edges on the same vertical rails.
Tune this value in DevTools until the leftmost header button
and the composer left edge sit on the same line. */
.ext-aiassistant-header,
.ext-aiassistant-body,
.ext-aiassistant-footer {
padding-left: 12px !important;
padding-right: 12px !important;
}
/* 2. Strip any extra inset from header button groups so the
outermost buttons sit flush against the section padding */
.ext-aiassistant-header-actions {
margin: 0 !important;
padding: 0 !important;
}
/* 3. Messages flush to body padding */
.ext-aiassistant-message {
margin-left: 0 !important;
margin-right: 0 !important;
}
/* 4. Composer fills full footer width */
.ext-aiassistant-prompt-composer {
margin: 0 !important;
width: 100% !important;
box-sizing: border-box !important;
}
/* 5. Vertically center composer inside footer —
equal top and bottom padding does the job */
.ext-aiassistant-footer {
display: flex !important;
align-items: center !important;
justify-content: center !important;
padding-top: 10px !important;
padding-bottom: 10px !important;
}
/* 6. Vertically center title + icon row in header */
.ext-aiassistant-header {
display: flex !important;
align-items: center !important;
}
.ext-aiassistant-header-icon {
vertical-align: middle !important;
}
/* 7. Swap assistant action buttons: copy moves to the right,
source moves to the left — aligns copy with user's copy btn */
.ext-aiassistant-message-assistant .ext-aiassistant-actions {
display: flex !important;
flex-direction: row-reverse !important;
}
/* 8. Keep user action buttons right-aligned as they are */
.ext-aiassistant-message-user .ext-aiassistant-actions {
display: flex !important;
justify-content: flex-end !important;
}
/* 9. Toolbar items vertically aligned */
.ext-aiassistant-prompt-composer__toolbar {
display: flex !important;
align-items: center !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(75px + env(safe-area-inset-bottom)) !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; }
}