/* ==UserStyle== @name Arch Wiki Catppuccin @namespace github.com/Sebagabones/userstyles/styles/arch-wiki @homepageURL https://github.com/Sebagabones/userstyles/tree/main/styles/arch-wiki @version 2025.09.06 @updateURL https://github.com/Sebagabones/userstyles/raw/main/styles/arch-wiki/catppuccin.user.less @supportURL https://github.com/Sebagabones/userstyles/issues?q=is%3Aopen+is%3Aissue+label%3Aarch-wiki @description Soothing pastel theme for Arch Wiki @author Catppuccin @license MIT @preprocessor less @var select lightFlavor "Light Flavor" ["latte:Latte*", "frappe:Frappé", "macchiato:Macchiato", "mocha:Mocha"] @var select darkFlavor "Dark Flavor" ["latte:Latte", "frappe:Frappé", "macchiato:Macchiato", "mocha:Mocha*"] @var select accentColor "Accent" ["rosewater:Rosewater", "flamingo:Flamingo", "pink:Pink", "mauve:Mauve*", "red:Red", "maroon:Maroon", "peach:Peach", "yellow:Yellow", "green:Green", "teal:Teal", "blue:Blue", "sapphire:Sapphire", "sky:Sky", "lavender:Lavender", "subtext0:Gray"] ==/UserStyle== */ @import "https://raw.githubusercontent.com/Sebagabones/userstyles/refs/heads/main/lib/lib.less"; @-moz-document domain("wiki.archlinux.org") { :root.skin-theme-clientpref-os, .vector-feature-night-mode-enabled, .skin-invert, .notheme { @media (prefers-color-scheme: light) { #catppuccin(@lightFlavor); } @media (prefers-color-scheme: dark) { #catppuccin(@darkFlavor); } } :root.skin-theme-clientpref-night { #catppuccin(@darkFlavor); } :root.skin-theme-clientpref-day { #catppuccin(@lightFlavor); } #catppuccin(@flavor) { #lib.palette(); #lib.defaults(); #content table, #content h1, #content h2, #content h3, #content h4, #content h5, #content pre, #content code, #content tt { color: @text !important; } body.skin-vector-2022 .vector-sticky-header { color: @text !important; background-color: @mantle !important; border-bottom-color: @blue !important; } #vector-main-menu-pinned-container, #vector-page-tools-pinned-container { background-color: @base !important; } #ooui-php-191, #preferences .mw-htmlform-submit-buttons { background-color: @mantle !important; } .mw-echo-ui-notificationItemWidget-content-message-header, .oo-ui-labelElement-label { color: @text !important; } .oo-ui-optionWidget-selected { background-color: @surface2 !important; } .oo-ui-buttonElement-framed.oo-ui-widget-disabled > .oo-ui-buttonElement-button { background-color: @surface0 !important; color: @text !important; border-color: @surface2 !important; filter: brightness(0.4); cursor: not-allowed; } .mw-htmlform-ooui .mw-htmlform-matrix tbody tr:nth-child(even) td { background-color: @surface1 !important; } .mw-htmlform-ooui .mw-htmlform-matrix tbody tr:hover td { background-color: @surface2 !important; } .mw-htmlform-ooui .mw-htmlform-matrix tbody tr:nth-child(odd) td, .mw-rcfilters-ui-filterTagMultiselectWidget.oo-ui-widget-enabled .oo-ui-tagMultiselectWidget-handle, .oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined .oo-ui-tagItemWidget.oo-ui-widget-enabled, .mw-rcfilters-ui-cell.mw-rcfilters-ui-filterTagMultiselectWidget-views-select, .mw-rcfilters-ui-changesListWrapperWidget .mw-changeslist-legend, .oo-ui-popupWidget-popup, .mw-echo-ui-notificationItemWidget, .mw-echo-ui-placeholderItemWidget { background-color: @surface0 !important; } .mw-echo-ui-notificationsInboxWidget-toolbarWrapper { background-color: @base !important; } #archnavbar { background-color: @mantle !important; border-bottom-color: @blue !important; } .mw-parser-output { background-color: @base !important; } .mw-page-container { background-color: @base !important; } .vector-header-container { background-color: @base !important; } #content, header.mw-header li:not(.new), #mw-panel-toc, #mw-navigation li:not(.new), #mw-panel li:not(.new), #column-one li:not(.new), #footer { a:not([role="button"], .new) { color: @blue !important; } } @media screen { html.client-darkmode { background-color: @base; } } .vector-feature-zebra-design-disabled, body { background-color: @base; } #archnavbarlogo { @svg: escape( '' ); background: url("data:image/svg+xml,@{svg}") !important; background-size: 190px 40px !important; } .cdx-text-input__input:enabled:focus { border-color: @blue; box-shadow: @blue !important; } .archwiki-template-box-tip { background-color: hsla(90, 90%, 65%, 0.2) !important; border-color: hsla(90, 90%, 75%, 0.2); color: @subtext1; } .archwiki-template-box-note { background-color: hsla(208, 100%, 61%, 0.25) !important; border-color: hsla(208, 100%, 81%, 0.25) !important; color: @subtext1; } .archwiki-template-box-warning { background-color: hsla(7, 99%, 60%, 0.25) !important; border-color: hsla(7, 99%, 80%, 0.25) !important; color: @subtext1; } .firstHeading { color: @accent !important; } #content { border-color: @overlay0; } #content pre:not([class*="CodeMirror"]), #content code, #content tt { background-color: @surface0; color: @text; border-color: @overlay0; } .vector-pinned-container { border-color: @overlay0 !important; } .vector-pinnable-header-label { color: @text; } .vector-pinnable-header-toggle-button, .vector-pinnable-header-unpin-button { color: @mantle; background-color: @accent; border-color: @base; } .wikitable { background-color: @base; } .wikitable > tr > th, .wikitable > tr > td, .wikitable > * > tr > th, .wikitable > * > tr > td { color: @text; border-color: @crust; } .wikitable > tr > th, .wikitable > * > tr > th { background-color: @mantle; color: @text; } .pre { color: @mantle; } .mw-headline { color: @text; } .plainlinks, .archwiki-template-man, .external text { color: multiply(@blue, #555); } .cdx-button:enabled.cdx-button--weight-quiet, .cdx-button.cdx-button--fake-button--enabled, .cdx-button.cdx-button--fake-button--enabled.cdx-button--weight-quiet, .diff-context, .oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle, .oo-ui-checkboxInputWidget [type="checkbox"] + span { background-color: @surface0; color: @text; border-color: @surface2; } .vector-feature-zebra-design-disabled, #contentSub:not(:empty) { color: @surface0 !important; } .mw-editfont-monospace { background-color: @surface0; color: @text; border-color: @surface1; } .diff-deletedline, .mw-message-box-warning { background-color: @yellow; color: @mantle; } .diff-addedline { background-color: @sky; color: @mantle; } .mw-message-box-error { background-color: @flamingo; border-color: @red; color: @base; } .mw-number-text { color: @text; } .cdx-checkbox__icon { background-color: @surface0; } .oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type="checkbox"]:checked + span, .cdx-checkbox__input:enabled:checked + .cdx-checkbox__icon, .cdx-button:enabled.cdx-button--weight-primary.cdx-button--action-progressive { background-color: @blue; border-color: @sapphire; color: @mantle !important; } .vector-feature-zebra-design-disabled, #vector-toc-pinned-container, .vector-toc::after { background: linear-gradient(rgba(255, 255, 255, 0), @base) !important; } #archnavbar ul li.anb-selected a { color: @accent !important; } .archwiki-template-message { background-color: @base; } .catlinks { background-color: @mantle; } .mw-parser-output p { color: @text !important; } .archwiki-template-meta-related-articles { background-color: @surface0; } .archwiki-template-meta-related-articles p { color: @text; border-bottom-color: @blue; } .archwiki-template-meta-related-articles ul li a { color: @blue important; } .mw-plusminus-neg, a.new { color: @red !important; } .mw-plusminus-pos { color: @green; } .mw-plusminus-null { color: @subtext0; } .oo-ui-textInputWidget .oo-ui-inputWidget-input, .mw-widget-dateInputWidget-handle, .oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button, #pagehistory li.selected { background-color: @surface0 !important; color: @text !important; border-color: @surface2 !important; } .oo-ui-menuSelectWidget { background-color: @surface0; border-color: @surface2; } .oo-ui-OptionWidget-highlighted { background-color: @overlay0 !important; } .oo-ui-menuOptionWidget.oo-ui-widget-enabled.oo-ui-optionWidget, .minoredit, .comment { color: @text; } .mw-footer-container { color: @text !important; } #archnavbarlist li a { color: @blue !important; } .anb-selected { color: @subtext1 !important; } .mw-footer li { color: @text; } .vector-main-menu, .vector-pinnable-element { background-color: @base !important; } #p-navigation ul li a { color: @blue !important; } .archwiki-template-box-note a { color: @blue !important; } .archwiki-template-box-note a:visited { color: @mauve !important; } .mw-page-title-main { color: @text; } .vector-tab-noicon mw-list-item a { color: @blue; } .mw-header { background-color: @base !important; color: @text; } .mw-footer li a { color: @blue; } .cdx-text-input__input:enabled { background-color: @surface0 !important; color: @text !important; border-color: @surface1; } .cdx-button:enabled, .cdx-button.cdxbutton--fake-button--enabled { color: @mantle; background-color: @accent; border-color: @base; } .cdx-menu { background-color: @surface0; } .cdx-menu:hover { background-color: @base !important; } .anb-home { color: @text !important; } .vector-dropdown-content { background-color: @base !important; } .mw-headline::before { color: @accent !important; } .cdx-button { background-color: @base !important; color: @text !important; border-color: @base !important; } .mw-body { background-color: @base !important; color: @text !important; border-color: @base !important; } .mw-search-profile-tabs { background-color: @base !important; color: @text !important; border-color: @base !important; } .mw-content-ltr { background-color: @base !important; } .vector-sticky-pinned-container::after { background: @base !important; } .cdx-search-input { border-color: @mantle !important; } .oo-ui-widget:hover { background-color: @surface0 !important; } } }