mirror of
https://github.com/mastodon/mastodon.git
synced 2024-12-17 15:35:10 +00:00
Light theme overhaul
This commit is contained in:
parent
36f50be305
commit
6e771bf680
|
@ -1,218 +1,3 @@
|
||||||
// Set variables
|
@import 'mastodon-light/variables';
|
||||||
$ui-base-color: #d9e1e8;
|
|
||||||
$ui-base-lighter-color: darken($ui-base-color, 57%);
|
|
||||||
$ui-highlight-color: #2b90d9;
|
|
||||||
$ui-primary-color: darken($ui-highlight-color, 28%);
|
|
||||||
$ui-secondary-color: #282c37;
|
|
||||||
|
|
||||||
$primary-text-color: black;
|
|
||||||
$base-overlay-background: $ui-base-color;
|
|
||||||
|
|
||||||
$login-button-color: white;
|
|
||||||
$account-background-color: white;
|
|
||||||
|
|
||||||
// Import defaults
|
|
||||||
@import 'index';
|
@import 'index';
|
||||||
|
@import 'mastodon-light/diff';
|
||||||
// Change the color of the log in button
|
|
||||||
.button {
|
|
||||||
&.button-alternative-2 {
|
|
||||||
color: $login-button-color;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
// Change columns' default background colors
|
|
||||||
.column {
|
|
||||||
> .scrollable {
|
|
||||||
background: lighten($ui-base-color, 13%);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
.status.collapsed .status__content:after {
|
|
||||||
background: linear-gradient(rgba(lighten($ui-base-color, 13%), 0), rgba(lighten($ui-base-color, 13%), 1));
|
|
||||||
}
|
|
||||||
|
|
||||||
.drawer__inner {
|
|
||||||
background: $ui-base-color;
|
|
||||||
}
|
|
||||||
|
|
||||||
.drawer > .contents {
|
|
||||||
background: $ui-base-color url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 234.80078 31.757813" width="234.80078" height="31.757812"><path d="M19.599609 0c-1.05 0-2.10039.375-2.90039 1.125L0 16.925781v14.832031h234.80078V17.025391l-16.5-15.900391c-1.6-1.5-4.20078-1.5-5.80078 0l-13.80078 13.099609c-1.6 1.5-4.19883 1.5-5.79883 0L179.09961 1.125c-1.6-1.5-4.19883-1.5-5.79883 0L159.5 14.224609c-1.6 1.5-4.20078 1.5-5.80078 0L139.90039 1.125c-1.6-1.5-4.20078-1.5-5.80078 0l-13.79883 13.099609c-1.6 1.5-4.20078 1.5-5.80078 0L100.69922 1.125c-1.600001-1.5-4.198829-1.5-5.798829 0l-13.59961 13.099609c-1.6 1.5-4.200781 1.5-5.800781 0L61.699219 1.125c-1.6-1.5-4.198828-1.5-5.798828 0L42.099609 14.224609c-1.6 1.5-4.198828 1.5-5.798828 0L22.5 1.125C21.7.375 20.649609 0 19.599609 0z" fill="#{hex-color(lighten($ui-base-color, 13%))}"/></svg>') no-repeat bottom / 100% auto !important;
|
|
||||||
|
|
||||||
.mastodon {
|
|
||||||
filter: contrast(75%) brightness(75%) !important;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
// Change the default appearance of the content warning button
|
|
||||||
.status__content {
|
|
||||||
|
|
||||||
.status__content__spoiler-link {
|
|
||||||
|
|
||||||
background: darken($ui-base-color, 30%);
|
|
||||||
|
|
||||||
&:hover {
|
|
||||||
background: darken($ui-base-color, 35%);
|
|
||||||
text-decoration: none;
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
// Change the default appearance of the action buttons
|
|
||||||
.icon-button {
|
|
||||||
|
|
||||||
&:hover,
|
|
||||||
&:active,
|
|
||||||
&:focus {
|
|
||||||
color: darken($ui-base-color, 40%);
|
|
||||||
transition: color 200ms ease-out;
|
|
||||||
}
|
|
||||||
|
|
||||||
&.disabled {
|
|
||||||
color: darken($ui-base-color, 30%);
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
.status {
|
|
||||||
&.status-direct {
|
|
||||||
.icon-button.disabled {
|
|
||||||
color: darken($ui-base-color, 30%);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
// Change the colors used in the dropdown menu
|
|
||||||
.dropdown-menu {
|
|
||||||
background: $ui-base-color;
|
|
||||||
}
|
|
||||||
|
|
||||||
.dropdown-menu__arrow {
|
|
||||||
|
|
||||||
&.left {
|
|
||||||
border-left-color: $ui-base-color;
|
|
||||||
}
|
|
||||||
|
|
||||||
&.top {
|
|
||||||
border-top-color: $ui-base-color;
|
|
||||||
}
|
|
||||||
|
|
||||||
&.bottom {
|
|
||||||
border-bottom-color: $ui-base-color;
|
|
||||||
}
|
|
||||||
|
|
||||||
&.right {
|
|
||||||
border-right-color: $ui-base-color;
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
.dropdown-menu__item {
|
|
||||||
a {
|
|
||||||
background: $ui-base-color;
|
|
||||||
color: $ui-secondary-color;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
// Change the default color of several parts of the compose form
|
|
||||||
.composer {
|
|
||||||
|
|
||||||
.composer--spoiler input, .composer--textarea textarea {
|
|
||||||
color: darken($ui-base-color, 80%);
|
|
||||||
|
|
||||||
&:disabled { background: darken($simple-background-color, 10%) }
|
|
||||||
|
|
||||||
&::placeholder {
|
|
||||||
color: darken($ui-base-color, 70%);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
strong {
|
|
||||||
color: lighten($ui-secondary-color, 65%);
|
|
||||||
}
|
|
||||||
|
|
||||||
.composer--options {
|
|
||||||
background: darken($ui-base-color, 10%);
|
|
||||||
box-shadow: unset;
|
|
||||||
}
|
|
||||||
|
|
||||||
.composer--options--dropdown--content--item {
|
|
||||||
color: $ui-primary-color;
|
|
||||||
|
|
||||||
strong {
|
|
||||||
color: $ui-primary-color;
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
// Change the default color used for the text in an empty column or on the error column
|
|
||||||
.empty-column-indicator,
|
|
||||||
.error-column {
|
|
||||||
color: darken($ui-base-color, 60%);
|
|
||||||
}
|
|
||||||
|
|
||||||
// Change the default colors used on some parts of the profile pages
|
|
||||||
.activity-stream-tabs {
|
|
||||||
|
|
||||||
background: $account-background-color;
|
|
||||||
|
|
||||||
a {
|
|
||||||
&.active {
|
|
||||||
color: $ui-primary-color;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
.activity-stream {
|
|
||||||
|
|
||||||
.entry {
|
|
||||||
background: $account-background-color;
|
|
||||||
}
|
|
||||||
|
|
||||||
.status.light {
|
|
||||||
|
|
||||||
.status__content {
|
|
||||||
color: $primary-text-color;
|
|
||||||
}
|
|
||||||
|
|
||||||
.display-name {
|
|
||||||
strong {
|
|
||||||
color: $primary-text-color;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
.accounts-grid {
|
|
||||||
.account-grid-card {
|
|
||||||
|
|
||||||
.controls {
|
|
||||||
.icon-button {
|
|
||||||
color: $ui-secondary-color;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
.name {
|
|
||||||
a {
|
|
||||||
color: $primary-text-color;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
.username {
|
|
||||||
color: $ui-secondary-color;
|
|
||||||
}
|
|
||||||
|
|
||||||
.account__header__content {
|
|
||||||
color: $primary-text-color;
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
294
app/javascript/flavours/glitch/styles/mastodon-light/diff.scss
Normal file
294
app/javascript/flavours/glitch/styles/mastodon-light/diff.scss
Normal file
|
@ -0,0 +1,294 @@
|
||||||
|
// Notes!
|
||||||
|
// Sass color functions, "darken" and "lighten" are automatically replaced.
|
||||||
|
|
||||||
|
.glitch.local-settings {
|
||||||
|
background: $ui-base-color;
|
||||||
|
|
||||||
|
&__navigation {
|
||||||
|
background: darken($ui-base-color, 8%);
|
||||||
|
}
|
||||||
|
|
||||||
|
&__navigation__item {
|
||||||
|
background: darken($ui-base-color, 8%);
|
||||||
|
|
||||||
|
&:hover {
|
||||||
|
background: $ui-base-color;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.notification__dismiss-overlay {
|
||||||
|
.wrappy {
|
||||||
|
box-shadow: unset;
|
||||||
|
}
|
||||||
|
|
||||||
|
.ckbox {
|
||||||
|
text-shadow: unset;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.status.status-direct {
|
||||||
|
background: darken($ui-base-color, 8%);
|
||||||
|
|
||||||
|
&.collapsed> .status__content:after {
|
||||||
|
background: linear-gradient(rgba(darken($ui-base-color, 8%), 0), rgba(darken($ui-base-color, 8%), 1));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.focusable:focus.status.status-direct {
|
||||||
|
background: darken($ui-base-color, 4%);
|
||||||
|
|
||||||
|
&.collapsed> .status__content:after {
|
||||||
|
background: linear-gradient(rgba(darken($ui-base-color, 4%), 0), rgba(darken($ui-base-color, 4%), 1));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// Change columns' default background colors
|
||||||
|
.column {
|
||||||
|
> .scrollable {
|
||||||
|
background: darken($ui-base-color, 13%);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.status.collapsed .status__content:after {
|
||||||
|
background: linear-gradient(rgba(darken($ui-base-color, 13%), 0), rgba(darken($ui-base-color, 13%), 1));
|
||||||
|
}
|
||||||
|
|
||||||
|
.drawer__inner {
|
||||||
|
background: $ui-base-color;
|
||||||
|
}
|
||||||
|
|
||||||
|
.drawer > .contents {
|
||||||
|
background: $ui-base-color url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 234.80078 31.757813" width="234.80078" height="31.757812"><path d="M19.599609 0c-1.05 0-2.10039.375-2.90039 1.125L0 16.925781v14.832031h234.80078V17.025391l-16.5-15.900391c-1.6-1.5-4.20078-1.5-5.80078 0l-13.80078 13.099609c-1.6 1.5-4.19883 1.5-5.79883 0L179.09961 1.125c-1.6-1.5-4.19883-1.5-5.79883 0L159.5 14.224609c-1.6 1.5-4.20078 1.5-5.80078 0L139.90039 1.125c-1.6-1.5-4.20078-1.5-5.80078 0l-13.79883 13.099609c-1.6 1.5-4.20078 1.5-5.80078 0L100.69922 1.125c-1.600001-1.5-4.198829-1.5-5.798829 0l-13.59961 13.099609c-1.6 1.5-4.200781 1.5-5.800781 0L61.699219 1.125c-1.6-1.5-4.198828-1.5-5.798828 0L42.099609 14.224609c-1.6 1.5-4.198828 1.5-5.798828 0L22.5 1.125C21.7.375 20.649609 0 19.599609 0z" fill="#{hex-color(darken($ui-base-color, 13%))}"/></svg>') no-repeat bottom / 100% auto !important;
|
||||||
|
|
||||||
|
.mastodon {
|
||||||
|
filter: contrast(75%) brightness(75%) !important;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// Change the default appearance of the content warning button
|
||||||
|
.status__content {
|
||||||
|
|
||||||
|
.status__content__spoiler-link {
|
||||||
|
|
||||||
|
background: lighten($ui-base-color, 30%);
|
||||||
|
|
||||||
|
&:hover {
|
||||||
|
background: lighten($ui-base-color, 35%);
|
||||||
|
text-decoration: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
// Change the colors used in the dropdown menu
|
||||||
|
.dropdown-menu {
|
||||||
|
background: $ui-base-color;
|
||||||
|
}
|
||||||
|
|
||||||
|
.dropdown-menu__arrow {
|
||||||
|
|
||||||
|
&.left {
|
||||||
|
border-left-color: $ui-base-color;
|
||||||
|
}
|
||||||
|
|
||||||
|
&.top {
|
||||||
|
border-top-color: $ui-base-color;
|
||||||
|
}
|
||||||
|
|
||||||
|
&.bottom {
|
||||||
|
border-bottom-color: $ui-base-color;
|
||||||
|
}
|
||||||
|
|
||||||
|
&.right {
|
||||||
|
border-right-color: $ui-base-color;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
.dropdown-menu__item {
|
||||||
|
a {
|
||||||
|
background: $ui-base-color;
|
||||||
|
color: $ui-secondary-color;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// Change the default color of several parts of the compose form
|
||||||
|
.composer {
|
||||||
|
|
||||||
|
.composer--spoiler input, .composer--textarea textarea {
|
||||||
|
color: lighten($ui-base-color, 80%);
|
||||||
|
|
||||||
|
&:disabled { background: lighten($simple-background-color, 10%) }
|
||||||
|
|
||||||
|
&::placeholder {
|
||||||
|
color: lighten($ui-base-color, 70%);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.composer--options {
|
||||||
|
background: lighten($ui-base-color, 10%);
|
||||||
|
box-shadow: unset;
|
||||||
|
|
||||||
|
& > hr {
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.composer--options--dropdown--content--item {
|
||||||
|
color: $ui-primary-color;
|
||||||
|
|
||||||
|
strong {
|
||||||
|
color: $ui-primary-color;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
.dropdown-menu__separator {
|
||||||
|
border-bottom-color: lighten($ui-base-color, 12%);
|
||||||
|
}
|
||||||
|
|
||||||
|
.status__content,
|
||||||
|
.reply-indicator__content {
|
||||||
|
a {
|
||||||
|
color: $highlight-text-color;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.emoji-mart-bar {
|
||||||
|
border-color: darken($ui-base-color, 4%);
|
||||||
|
|
||||||
|
&:first-child {
|
||||||
|
background: lighten($ui-base-color, 10%);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.emoji-mart-search input {
|
||||||
|
background: rgba($ui-base-color, 0.3);
|
||||||
|
border-color: $ui-base-color;
|
||||||
|
}
|
||||||
|
|
||||||
|
.composer--textarea--suggestions {
|
||||||
|
background: lighten($ui-base-color, 10%)
|
||||||
|
}
|
||||||
|
|
||||||
|
.composer--textarea--suggestions--item {
|
||||||
|
&:hover,
|
||||||
|
&:focus,
|
||||||
|
&:active,
|
||||||
|
&.selected {
|
||||||
|
background: darken($ui-base-color, 4%);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.react-toggle-track {
|
||||||
|
background: $ui-secondary-color;
|
||||||
|
}
|
||||||
|
|
||||||
|
.react-toggle:hover:not(.react-toggle--disabled) .react-toggle-track {
|
||||||
|
background: lighten($ui-secondary-color, 10%);
|
||||||
|
}
|
||||||
|
|
||||||
|
.react-toggle.react-toggle--checked:hover:not(.react-toggle--disabled) .react-toggle-track {
|
||||||
|
background: darken($ui-highlight-color, 10%);
|
||||||
|
}
|
||||||
|
|
||||||
|
// Change the background colors of modals
|
||||||
|
.actions-modal,
|
||||||
|
.boost-modal,
|
||||||
|
.confirmation-modal,
|
||||||
|
.mute-modal,
|
||||||
|
.report-modal,
|
||||||
|
.embed-modal,
|
||||||
|
.error-modal,
|
||||||
|
.onboarding-modal {
|
||||||
|
background: $ui-base-color;
|
||||||
|
}
|
||||||
|
|
||||||
|
.boost-modal__action-bar,
|
||||||
|
.confirmation-modal__action-bar,
|
||||||
|
.mute-modal__action-bar,
|
||||||
|
.onboarding-modal__paginator,
|
||||||
|
.error-modal__footer {
|
||||||
|
background: darken($ui-base-color, 6%);
|
||||||
|
|
||||||
|
.onboarding-modal__nav,
|
||||||
|
.error-modal__nav {
|
||||||
|
&:hover,
|
||||||
|
&:focus,
|
||||||
|
&:active {
|
||||||
|
background-color: darken($ui-base-color, 12%);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// Change the default color used for the text in an empty column or on the error column
|
||||||
|
.empty-column-indicator,
|
||||||
|
.error-column {
|
||||||
|
color: lighten($ui-base-color, 60%);
|
||||||
|
}
|
||||||
|
|
||||||
|
// Change the default colors used on some parts of the profile pages
|
||||||
|
.activity-stream-tabs {
|
||||||
|
|
||||||
|
background: $account-background-color;
|
||||||
|
|
||||||
|
a {
|
||||||
|
&.active {
|
||||||
|
color: $ui-primary-color;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
.activity-stream {
|
||||||
|
|
||||||
|
.entry {
|
||||||
|
background: $account-background-color;
|
||||||
|
}
|
||||||
|
|
||||||
|
.status.light {
|
||||||
|
|
||||||
|
.status__content {
|
||||||
|
color: $primary-text-color;
|
||||||
|
}
|
||||||
|
|
||||||
|
.display-name {
|
||||||
|
strong {
|
||||||
|
color: $primary-text-color;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
.accounts-grid {
|
||||||
|
.account-grid-card {
|
||||||
|
|
||||||
|
.controls {
|
||||||
|
.icon-button {
|
||||||
|
color: $ui-secondary-color;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.name {
|
||||||
|
a {
|
||||||
|
color: $primary-text-color;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.username {
|
||||||
|
color: $ui-secondary-color;
|
||||||
|
}
|
||||||
|
|
||||||
|
.account__header__content {
|
||||||
|
color: $primary-text-color;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
|
@ -0,0 +1,36 @@
|
||||||
|
// Dependent colors
|
||||||
|
$black: #000000;
|
||||||
|
$white: #ffffff;
|
||||||
|
|
||||||
|
$classic-base-color: #282c37;
|
||||||
|
$classic-primary-color: #9baec8;
|
||||||
|
$classic-secondary-color: #d9e1e8;
|
||||||
|
$classic-highlight-color: #2b90d9;
|
||||||
|
|
||||||
|
$ui-base-color: $classic-secondary-color !default;
|
||||||
|
$ui-base-lighter-color: darken($ui-base-color, 57%);
|
||||||
|
$ui-highlight-color: $classic-highlight-color !default;
|
||||||
|
$ui-primary-color: $classic-primary-color !default;
|
||||||
|
$ui-secondary-color: $classic-base-color !default;
|
||||||
|
|
||||||
|
$primary-text-color: $black !default;
|
||||||
|
$darker-text-color: $classic-base-color !default;
|
||||||
|
$dark-text-color: #444b5d;
|
||||||
|
$action-button-color: #606984;
|
||||||
|
|
||||||
|
$base-overlay-background: $white !default;
|
||||||
|
|
||||||
|
$inverted-text-color: $black !default;
|
||||||
|
$lighter-text-color: $classic-base-color !default;
|
||||||
|
$light-text-color: #444b5d;
|
||||||
|
|
||||||
|
$account-background-color: $white !default;
|
||||||
|
|
||||||
|
//Invert darkened and lightened colors
|
||||||
|
@function darken($color, $amount) {
|
||||||
|
@return hsl(hue($color), saturation($color), lightness($color) + $amount);
|
||||||
|
}
|
||||||
|
|
||||||
|
@function lighten($color, $amount) {
|
||||||
|
@return hsl(hue($color), saturation($color), lightness($color) - $amount);
|
||||||
|
}
|
Loading…
Reference in a new issue