@ -1,218 +1,3 @@ | |||
// Set 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 'mastodon-light/variables'; | |||
@import 'index'; | |||
// 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; | |||
} | |||
} | |||
} | |||
@import 'mastodon-light/diff'; |
@ -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); | |||
} |