A dark theme for Mozilla Add-ons (AMO).
Mozilla Add-ons Dark by maxigaz
Imported and mirrored from https://codeberg.org/maxigaz/amo-dark/raw/master/mozilla-addons-dark.user.css
Details
Authormaxigaz
LicenseGPL 3.0
Categoryaddons.mozilla.org
Created
Updated
Size9.4 kB
Statistics
Learn how we calculate statistics in the FAQ.
Failed to fetch stats.
Description
Notes
Prerequisites
First of all, you need a style manager. The style has been tested with Stylus, although it is also compatible with xStyle. Other style managers might also work but are not supported.
Then, you need Firefox (other web browsers based on Firefox might work, but are not tested) and tweak the settings of Firefox. The following can also be read in Stylus when you navigate to AMO and bring up the panel of Stylus; I'm including a paraphrased version here for reference:
Open about:config
and do the following:
- Add a new boolean (with the right click context menu) with the name
privacy.resistFingerprinting.block_mozAddonManager
and set its value totrue
.- This will disable all “special” AMO privileges such as determining which add-ons are already installed or uninstalling add-ons from the website.
- Remove the substring
addons.mozilla.org,
fromextensions.webextensions.restrictedDomains
.- This will allow all currently installed WebExtensions to manipulate the contents of AMO websites and APIs.
Install
Install the stylesheet by clicking on one of the mirror links below and a new window of Stylus should open, asking you to confirm to install the style.
Mirrors:
- Codeberg: Install directly with Stylus
- GitLab: Install directly with Stylus
- UserStyles.world Install directly with Stylus
Report Issues
If you have any issues with the stylesheet, please, report them to any of the following issue trackers:
Source code
/* ==UserStyle==
@name Mozilla Add-ons Dark
@description A dark theme for Mozilla Add-ons (AMO).
@namespace codeberg.org/maxigaz/amo-dark
@author maxigaz
@homepageURL https://codeberg.org/maxigaz/amo-dark
@version 1.2.1
==/UserStyle== */
@-moz-document domain("addons.mozilla.org") {
/* ===== General ===== */
html, body {
color: rgb(250, 250, 250);
}
body {
background-color: #1f2536;
}
a:link {
color: #0a84ff;
}
.LandingPage-header, .Card-header, .Card-contents, .AddonsCard--horizontal .Card-contents {
background: #1f2536;
}
.Page-content {
background: #283146;
}
/* Mouse hover on More… nav link */
.DropdownMenu-items {
background-color: #1f2536;
border: 1px solid #181c2a;
}
.DropdownMenuItem-link a, .DropdownMenuItem-link a:link {
color: #fff;
}
.DropdownMenuItem-link a:hover, .DropdownMenuItem-link a:active, .DropdownMenuItem-link a:focus {
color: #0a84ff;
}
.DropdownMenuItem-section {
color: #c7c7c7;
}
/* ===== Extensions main page ===== */
.SecondaryHero-module {
background: #1f2536;
}
.SecondaryHero {
color: #eee;
}
.SecondaryHero-module-icon {
filter: invert(90%);
}
.SecondaryHero-message-link, .SecondaryHero-message-link:active, .SecondaryHero-message-link:hover, .SecondaryHero-message-link:link, .SecondaryHero-message-link:visited, .SecondaryHero-module-link, .SecondaryHero-module-link:active, .SecondaryHero-module-link:hover, .SecondaryHero-module-link:link, .SecondaryHero-module-link:visited {
color: #0a84ff;
}
.CardList ul > li {
background: #1f2536;
}
.AddonsCard--horizontal ul.AddonsCard-list .SearchResult-wrapper:focus, .AddonsCard--horizontal ul.AddonsCard-list .SearchResult-wrapper:hover {
background: #283046;
}
.SearchResult-link, .SearchResult-link:active, .SearchResult-link:link, .SearchResult-link:visited {
color: #fff;
}
.SearchResult--meta-section {
color: #d3e1ff;
}
/* ===== Explore page ===== */
.HomeHeroGuides-header {
color: #eee;
}
.HomeHeroGuides-section .Card-contents {
background-color: #1f2536;
color: #eee;
}
.HomeHeroGuides-sections .HeroSection-link-wrapper:hover .HomeHeroGuides-section-title {
color: #0a84ff;
}
.HomeHeroGuides-sections .Hero-name-HomeHeroGuides {
border-color: #1e2535;
}
.Home-SubjectShelf-link:link, .Home-SubjectShelf-link:visited {
color: #eee;
}
.SearchResult:hover .SearchResult-link {
color: #0a84ff;
}
.Card-footer-link a, .Card-footer-link a:active, .Card-footer-link a:hover, .Card-footer-link a:link, .Card-footer-link a:visited, .Card-footer-text a, .Card-footer-text a:active, .Card-footer-text a:hover, .Card-footer-text a:link, .Card-footer-text a:visited {
color: #0a84ff;
}
/* ===== Page of an extension ===== */
.AddonTitle {
color: #fff;
}
.AddonTitle-author {
color: rgb(250, 250, 250);
}
.Badge {
color: #e9e9e9;
}
.MetadataCard {
background-color: #21273a;
}
.MetadataCard-list dt {
color: #d2d2d2;
}
.Button--neutral, .Button--neutral:link {
color: #f5f5f5;
}
.Card-footer-link, .Card-footer-text {
background: #1f2536;
}
.ShowMoreCard-contents::after {
background: -webkit-gradient(linear, left top, left bottom, from(rgba(255, 255, 255, 0)), to(#1F2536));
background: linear-gradient(rgba(255, 255, 255, 0), #1F2536);
}
.AddonsByAuthorsCard.AddonsCard--horizontal .Card-contents .AddonsCard-list {
background: #1f2536;
}
.Definition-dt {
color: #c7c7c7;
}
/* Links to reviews */
.AddonMeta .MetadataCard-content a.AddonMeta-reviews-content-link, .AddonMeta .MetadataCard-content a.AddonMeta-reviews-content-link:link, .AddonMeta .MetadataCard-content a.AddonMeta-reviews-content-link:visited, .AddonMeta .MetadataCard-title a.AddonMeta-reviews-content-link, .AddonMeta .MetadataCard-title a.AddonMeta-reviews-content-link:link, .AddonMeta .MetadataCard-title a.AddonMeta-reviews-content-link:visited {
color: #ececec;
}
.AddonMeta .MetadataCard-content a.AddonMeta-reviews-content-link:active, .AddonMeta .MetadataCard-content a.AddonMeta-reviews-content-link:hover, .AddonMeta .MetadataCard-content a:active, .AddonMeta .MetadataCard-content a:hover, .AddonMeta .MetadataCard-title a.AddonMeta-reviews-content-link:active, .AddonMeta .MetadataCard-title a.AddonMeta-reviews-content-link:hover, .AddonMeta .MetadataCard-title a:active, .AddonMeta .MetadataCard-title a:hover {
color: #0d93fa;
}
.AddonMeta .MetadataCard-content a, .AddonMeta .MetadataCard-content a:link, .AddonMeta .MetadataCard-content a:visited, .AddonMeta .MetadataCard-title a, .AddonMeta .MetadataCard-title a:link, .AddonMeta .MetadataCard-title a:visited {
color: #c4c4c4;
}
.AddonMeta .MetadataCard-content a.AddonMeta-reviews-content-link:active, .AddonMeta .MetadataCard-content a.AddonMeta-reviews-content-link:hover, .AddonMeta .MetadataCard-content a:active, .AddonMeta .MetadataCard-content a:hover, .AddonMeta .MetadataCard-title a.AddonMeta-reviews-content-link:active, .AddonMeta .MetadataCard-title a.AddonMeta-reviews-content-link:hover, .AddonMeta .MetadataCard-title a:active, .AddonMeta .MetadataCard-title a:hover {
color: #0d93fa;
}
/* Permissions */
.PermissionsCard-subhead {
color: #c7c7c7;
}
[dir="ltr"] .PermissionsCard-list li .Icon {
filter: invert(90%);
}
/* Add to collection list button */
.Select {
background-color: #1d2232;
color: #d8d9db;
}
.Select.AddAddonToCollection-select {
color: #d8d9db !important;
}
/* Search input field */
.AutoSearchInput-query {
background-color: #191f2d;
border-color: #191f2d;
color: #c1d0ff;
}
.AutoSearchInput-query:hover {
border-color: #00c8d7;
}
.AutoSearchInput-icon-magnifying-glass {
filter: invert(90%);
}
.AutoSearchInput-suggestions-list {
background-color: #191f2d;
color: #acb9e5;
}
/* Recommended addons */
.AddonRecommendations.AddonsCard--horizontal ul.AddonsCard-list .SearchResult:hover {
background-color: #283046;
}
.AddonRecommendations.AddonsCard--horizontal ul.AddonsCard-list .SearchResult:hover .SearchResult-name {
color: #0d96ff;
}
.PromotedBadge-label--recommended {
color: #df671d;
}
/* ===== Extension reviews ===== */
.AddonSummaryCard-header-text .AddonTitle .AddonTitle-author a, .AddonSummaryCard-header-text .AddonTitle .AddonTitle-author a:link {
color: #aeaeae;
}
.Button--light:not(.Button--disabled), .Button--light.Button--micro:not(.Button--disabled) {
background-color: #1d2232;
color: #e8e8e8;
}
.Button--light:not(.Button--disabled):hover, .Button--light.Button--micro:not(.Button--disabled):hover {
background: #21273a;
}
.UserReview-byLine {
color: #888888;
}
.UserReview-byLine a, .UserReview-byLine a:link, .UserReview-byLine a:visited {
color: #888888;
}
.UserReview-byLine a:active, .UserReview-byLine a:hover {
color: #0d96ff;
}
.UserReview-reply-header {
color: #aeaeae;
}
.AddonSummaryCard-addonAverage {
color: #888888;
}
.RatingsByStar-graph {
color: #888888;
}
/* Gradient at the bottom of long reviews */
.AddonReviewCard-reply .ShowMoreCard-contents::after {
background: linear-gradient(hsla(0,0%,100%,0),#1d2a40);
}
/* Star colour enhancement */
.IconStar-svg g {
fill: #ffe900;
}
/* ===== Search results ===== */
h1, h2 {
color: #fff;
}
.ExpandableCard-ToggleLink:link {
color: #fafafa;
}
.SearchFilters-label {
color: #c7c7c7;
}
.Select.SearchFilters-select {
color: #fafafa !important;
}
.SearchResult-summary {
color: #eee;
}
.Card-footer {
background-color: #283146;
}
.Paginate {
background-color: #283146;
}
.Paginate-page-number {
color: #c7c7c7;
}
.Paginate .Button.Paginate-item--current-page {
color: #eee;
}
.Paginate .Button.Paginate-item:hover, .Paginate .Button.Paginate-item:active {
background-color: #1d2232;
}
.Paginate .Button.Paginate-item:first-child, .Paginate .Button.Paginate-item:last-child, .Paginate .Button.Paginate-item:link:first-child, .Paginate .Button.Paginate-item:link:last-child, .Paginate .Button.Paginate-item:visited:first-child, .Paginate .Button.Paginate-item:visited:last-child {
color: #eee;
}
/* ===== Dictionaries and language packs ===== */
.LanguageTools-header-row {
background-color: #2a334a;
}
.LanguageTools-table.responsiveTable tbody tr:nth-child(2n) {
background-color: #262e44;
}
/* ===== Blog posts ===== */
/* Hyperlinks */
.blogpost-breadcrumb ol li a {
color: #eee;
}
.blogpost-breadcrumb ol li:not(:last-child)::after {
color: #ccc;
}
.blogpost-breadcrumb ol a:hover, .blogpost-breadcrumb ol a:focus, .blogpost-breadcrumb ol a:active {
color: #0a84ff;
}
.blogpost-content-wrapper a:link:not(.Button), .blogpost-content-wrapper a:visited:not(.Button), .blogpost-content-wrapper a:hover:not(.Button), .blogpost-content-wrapper a:focus:not(.Button), .blogpost-content-wrapper a:active:not(.Button) {
color: #0a84ff;
}
/* Addon cards */
.StaticAddonCard {
background-color: #1d2a40;
box-shadow: 0 2px 6px #18181a;
}
/* Navigation above footer */
.blogpost-nav {
background: #060f1e;
}
.blogpost-nav span, .blogpost-nav time, .blogpost-nav p {
color: #eee;
}
/* Arrows */
.cls-1 {
stroke: #eee;
}
/* Separator between next and previous links */
.blogpost-nav li:last-of-type {
box-shadow: -1px 0 0 0 #999;
}
}