Skip to content

Mastodon - Custom Colors by snake

Screenshot of Mastodon - Custom Colors

Details

Authorsnake

LicenseCC Zero

CategoryMastodon

Created

Updated

Size10 kB

Statistics

Learn how we calculate statistics in the FAQ.

Failed to fetch stats.

Description

allows the setting of custom color schemes on mastodon with :root.

Notes

defaults to mastodon.social. replace with your preferred instance(s) if necessary.

works with mastodon bird UI

might make a proper fancy stylus color picker thing eventually. maybe. idk.

Source code

Source code has over 10K characters, so we truncated it. You can inspect the full source code on install link.
/* ==UserStyle==
@name         [SNK] MASTODON COLORS
@version      1.1
@namespace    playmoar.neocities.org
@description  custom color scheme for mastodon instances
@author       snake
@homepageURL  https://codeberg.org/snake/rice/src/branch/main/mastodon/
@preprocessor stylus
@license      CC0
==/UserStyle== */

@-moz-document domain("mastodon.social") {
:root {
--bg:#06090b;
--fg:#0f181b;
--fg2:#1a262b;
--text:#d8e0d4;
--fade:#96a28f;
--text2:var(--fg);
--accent:#2acf7e;
--accent2:#d8e0d4; }

body { color:var(--text)!important; background:var(--bg)!important; }
.account__display-name strong, .status__display-name strong, .reply-indicator__content, .status__content { color:var(--text)!important; }

/* wrappers */
.column > .scrollable { background:var(--fg)!important; }
.column-header { background:var(--fg)!important;  }

/* announcements */
.announcements,
/* column settings button + popup / back button */ 
.column-header__button, .column-header__button.active, .column-header__button.active:hover, .column-header__collapsible-inner { background:var(--fg2)!important; }
/* back button */
.column-header__back-button { color:var(--accent)!important; background:var(--fg)!important; }

/* inputs */ .simple_form input[type="datetime-local"], .simple_form input[type="email"], .simple_form input[type="number"], .simple_form input[type="password"], .simple_form input[type="text"], .simple_form input[type="url"], .simple_form textarea { color:var(--text)!important; background:var(--fg2)!important; }
/* buttons */ .button, .button.logo-button, .simple_form .block-button, .simple_form .button, .simple_form button { color:var(--text2)!important; background:var(--accent)!important; }
/* dropdowns */ .simple_form select { color:var(--text)!important; background:var(--fg2)!important;  }
/* icon buttons */ .icon-button, .text-icon-button { color:var(--fade)!important; }
/* change icon color when active */ .icon-button.active, .icon-button.star-icon.active, .notification__favourite-icon-wrapper .star-icon { color:var(--accent)!important; }

/* dropdown menus*/
.dropdown-menu, .dropdown-menu__arrow::before { background:var(--fg2)!important; }
.dropdown-menu__item, .dropdown-menu__item a, .dropdown-menu__item button { color:var(--text)!important; background:var(--fg2)!important; }
.dropdown-menu__item a:hover, .dropdown-menu__item a:focus { color:var(--fade)!important; background:var(--fg)!important;  }
.dropdown-menu__separator { border-color:var(--fade); }

.flash-message { color:var(--fade)!important; background:var(--fg2)!important; }

/* up arrows */
.account__section-headline a.active::after, .account__section-headline a.active::before, .account__section-headline button.active::after, .account__section-headline button.active::before, .notification__filter-bar a.active::after, .notification__filter-bar a.active::before, .notification__filter-bar button.active::after, .notification__filter-bar button.active::before { border-color:transparent transparent var(--fg); }

/* LEFT COLUMN ### */

/* search bar */
.search__input { background:var(--fg)!important; }

/* compose */
.compose-panel .compose-form__autosuggest-wrapper, .compose-form .autosuggest-textarea__textarea, .compose-form .spoiler-input__input,
.compose-form .compose-form__modifiers
{ color:var(--text)!important; background:var(--fg)!important; }

.compose-form .compose-form__buttons-wrapper { color:var(--text)!important; background:var(--fg2)!important; }

/* reply box */
.reply-indicator { color:var(--text)!important; background:var(--fg)!important; border:0; }
.reply-indicator__display-name, .reply-indicator__content, .attachment-list.compact .fa { color:var(--fade)!important; }
.attachment-list__list a { color:var(--text)!important; }

/* MIDDLE COLUMN ### */

/* gap above middle column top bar */
.tabs-bar__wrapper { background:var(--bg)!important; }
/* middle column top bar back button */
.column-back-button { color:var(--accent)!important; background:var(--fg)!important; }
/* notifications filter bar */
.account__section-headline button, .notification__filter-bar button { background:var(--fg2)!important }
/* some inner wrapper on list and dm pages idk */
.empty-column-indicator, .follow_requests-unlocked_explanation { color:var(--fade)!important; background:var(--fg2)!important; }
/* list wrapper */
.column-inline-form { color:var(--fade)!important; background:var(--fg2)!important; }
/* input */
.setting-text { color:var(--fade)!important; background:var(--fg)!important; border:0; }

/* TOOTS ### */

/* toot */
.status { color:var(--text)!important; background:var(--fg)!important; border-color:var(--bg)!important; }
.detailed-status, .detailed-status__action-bar { color:var(--text)!important; background:var(--fg2)!important; border:0!important; }
/* toot header ("user reblogged") */
.status__prepend { color:var(--fade)!important; }
.status__prepend .status__display-name strong { color:var(--text)!important; }
/* toot author */
.status__display-name, .status__relative-time { color:var(--fade)!important; }
/* content warning */
.reply-indicator__content .status__content__spoiler-link, .status__content .status__content__spoiler-link { color:var(--fade)!important; background:var(--fg2)!important; }
/* toot links */
.reply-indicator__content a, .status__content a { color:var(--accent)!important; }
.reply-indicator__content a:hover, .status__content a:hover { color:var(--accent2)!important; }

/* PROFILES ### */

/* account profile wrapper */
.account__header { color:var(--text)!important; background:var(--fg)!important; }
.account__header__bar { border-color:var(--bg)!important; }
/* profile fields */
.account__header__bio .account__header__fields { color:var(--text)!important; background:var(--fg2)!important; }
.account__header__fields dl { border:0; }
.account__header__bio .account__header__fields .verified { color:var(--text)!important; background:var(--fg2)!important; border:0; } /* verified links */
.account__header__bio .account__header__fields dt { color:var(--text)!important; } /* profile field name */
.account__header__bio .account__header__fields dd { color:var(--fade)!important; } /* profile field content */
/* posts/following/followers */
.account__header__extra__links a { color:var(--fade)!important; }
.account__header__extra__links a strong { color:var(--text)!important; } /* numbers */
/* posts/posts+replies/media tab filter */
.account__section-headline, .notification__filter-bar { color:var(--text)!important; background:var(--fg2 )!important; border-color:var(--bg)!important; }
.account__section-headline a.active, .account__section-headline button.active, .notification__filter-bar a.active, .notification__filter-bar button.active { color:var(--text)!important; }
.account__section-headline a, .account__section-headline button, .notification__filter-bar a, .notification__filter-bar button { color:var(--fade)!important; }
/* featured tags */
.trends__item__name a { color:var(--text)!important; }
.trends__item__name, .getting-started__trends .trends__item__current { color:var(--fade)!important; }

/* RIGHT COLUMN ### */

/* navigation links */
.column-link--transparent { color:var(--fade)!important; }
.column-link--transparent.active { color:var(--accent)!important; }

/* PREFERENCE PAGE ### */

.admin-wrapper .content h2, .admin-wrapper .content h3, .simple_form .input.with_label .label_input > label, .permissions-list__item, .admin-wrapper .content > p strong { color:var(--text)!important; }

/* links */
.simple_form .hint a, .admin-wrapper .content .muted-hint a, body .muted-hint a { color:var(--accent)!important; }
/* hint text */
.simple_form .hint, .admin-wrapper .content .muted-hint, body .muted-hint { color:var(--fade)!important; }
/* little inline thing */
.account-role, .simple_form .not_recommended, .simple_form .recommended { color:var(--fade)!important; background:var(--fg2)!important; border:0!important; } 

/* left column */
.admin-wrapper .sidebar-wrapper__inner { background:var(--bg)!important; }
.admin-wrapper .sidebar ul ul { background:transparent!important; }
.admin-wrapper .sidebar ul a { color:var(--fade)!important; background:transparent!important; }
.admin-wrapper .sidebar ul a.selected { color:var(--text)!important; background:var(--fg)!important; }

/* profile options */
.card__bar { color:var(--text)!important; background:var(--fg)!important; }
.card__bar .display-name span { color:var(--fade)!important; }

/* featured tags */
.directory__tag > a, .directory__tag > div { color:var(--text)!important; background:var(--fg)!important; }

/* filters */
.announcements-list__item, .filters-list__item { color:var(--text)!important; background:var(--fg)!important; border:0!important; }
.permissions-list__item__text__type, .announcements-list__item__meta, .filters-list__item__meta { color:var(--fade)!important; }

/* tables */
.filters .filter-subset a.selected { color:var(--accent)!important; border-color:var(--accent)!important; }
.filters .filter-subset a { color:var(--fade)!important; }
.batch-table__toolbar { color:var(--text)!important; background:var(--fg)!important; }
.account .account__display-name, .accounts-table__count small, a.table-action-link, button.table-action-link { color:var(--fade)!important; }
.batch-table__row { color:var(--text)!important; background:var(--fg2)!important; }
.batch-table__row:nth-child(2n) { color:var(--fade)!important; background:var(--fg)!important; }
.accounts-table .fa.active { color:var(--accent)!important; }
.table > thead > tr > th { color:var(--text)!important; background:var(--fg)!important; }
.table td, .table th { color:var(--text); background:var(--fg2); border:0; }
.table > tbody > tr:nth-child(2n+1) > td, .table > tbody > tr:nth-child(2n+1) > th { background:var(--fg2); }

/* app list */
.applications-list__item, ...

Reviews

No reviews yet.