Theme tokens initial commit

This commit is contained in:
diondiondion 2025-09-01 13:56:18 +02:00
parent 2c5d3f934c
commit ebe7fa7459
29 changed files with 1305 additions and 1039 deletions

View File

@ -553,7 +553,6 @@ class Status extends ImmutablePureComponent {
}
const {statusContentProps, hashtagBar} = getHashtagBarForStatus(status);
return (
<Hotkeys handlers={handlers} focusable={!unfocusable}>
<div className={classNames('status__wrapper', `status__wrapper-${status.get('visibility')}`, { 'status__wrapper-reply': !!status.get('in_reply_to_id'), unread, focusable: !this.props.muted })} tabIndex={this.props.muted || unfocusable ? null : 0} data-featured={featured ? 'true' : null} aria-label={textForScreenReader({intl, status, rebloggedByText, isQuote: isQuotedPost})} ref={this.handleRef} data-nosnippet={status.getIn(['account', 'noindex'], true) || undefined}>

View File

@ -63,6 +63,7 @@ const StandaloneBoostButton: FC<ReblogButtonProps> = ({ status, counters }) => {
title={intl.formatMessage(meta ?? title)}
icon='retweet'
iconComponent={iconComponent}
className='status__action-bar__button'
onClick={!disabled ? handleClick : undefined}
counter={
counters
@ -192,6 +193,7 @@ const BoostOrQuoteMenu: FC<ReblogButtonProps> = ({ status, counters }) => {
isMenuDisabled ? messages.all_disabled : messages.reblog_or_quote,
)}
icon='retweet'
className='status__action-bar__button'
iconComponent={boostIcon}
counter={
counters

View File

@ -405,15 +405,19 @@ class StatusActionBar extends ImmutablePureComponent {
scrollKey={scrollKey}
status={status}
items={menu}
icon='ellipsis-h'
iconComponent={MoreHorizIcon}
direction='right'
title={intl.formatMessage(messages.more)}
onOpen={() => {
dismissQuoteHint();
return true;
}}
/>
>
<IconButton
className='status__action-bar__button'
icon='ellipsis-h'
iconComponent={MoreHorizIcon}
title={intl.formatMessage(messages.more)}
/>
</Dropdown>
)}
</RemoveQuoteHint>
</div>

View File

@ -1,27 +1,2 @@
@use 'mastodon/functions';
@use 'mastodon/mixins';
@use 'mastodon/variables';
@use 'mastodon/css_variables';
@use 'fonts/roboto';
@use 'fonts/roboto-mono';
@use 'mastodon/reset';
@use 'mastodon/basics';
@use 'mastodon/branding';
@use 'mastodon/containers';
@use 'mastodon/lists';
@use 'mastodon/widgets';
@use 'mastodon/forms';
@use 'mastodon/accounts';
@use 'mastodon/components';
@use 'mastodon/polls';
@use 'mastodon/modal';
@use 'mastodon/emoji_picker';
@use 'mastodon/annual_reports';
@use 'mastodon/about';
@use 'mastodon/tables';
@use 'mastodon/admin';
@use 'mastodon/dashboard';
@use 'mastodon/rtl';
@use 'mastodon/accessibility';
@use 'mastodon/rich_text';
@use 'common';

View File

@ -0,0 +1,26 @@
@use 'mastodon/functions';
@use 'mastodon/mixins';
@use 'mastodon/variables';
@use 'fonts/roboto';
@use 'fonts/roboto-mono';
@use 'mastodon/reset';
@use 'mastodon/basics';
@use 'mastodon/branding';
@use 'mastodon/containers';
@use 'mastodon/lists';
@use 'mastodon/widgets';
@use 'mastodon/forms';
@use 'mastodon/accounts';
@use 'mastodon/components';
@use 'mastodon/polls';
@use 'mastodon/modal';
@use 'mastodon/emoji_picker';
@use 'mastodon/annual_reports';
@use 'mastodon/about';
@use 'mastodon/tables';
@use 'mastodon/admin';
@use 'mastodon/dashboard';
@use 'mastodon/rtl';
@use 'mastodon/accessibility';
@use 'mastodon/rich_text';

View File

@ -1,4 +1,5 @@
@use '../mastodon/variables' as *;
@use '../mastodon/theme_utils' as *;
.status__content a,
.reply-indicator__content a,
@ -34,7 +35,7 @@
.status__content a,
.reply-indicator__content a,
.edit-indicator__content a {
color: $highlight-text-color;
color: var(--text-accent-color);
}
.report-dialog-modal__textarea::placeholder {

View File

@ -14,9 +14,7 @@ $ui-secondary-color: $classic-secondary-color !default;
$ui-highlight-color: $classic-highlight-color !default;
@use '../mastodon/variables' with (
$darker-text-color: lighten($ui-primary-color, 20%),
$dark-text-color: lighten($ui-primary-color, 12%),
$secondary-text-color: lighten($ui-secondary-color, 6%),
$highlight-text-color: lighten($ui-highlight-color, 10%),
$action-button-color: lighten($ui-base-color, 50%),
$inverted-text-color: $black,

View File

@ -1,4 +1,3 @@
@use 'mastodon-light/variables';
@use 'mastodon-light/css_variables';
@use 'application';
@use 'mastodon-light/diff';
@use 'common';

View File

@ -1,23 +1,155 @@
@use 'sass:color';
@use '../mastodon/variables' as *;
@use 'variables' as *;
@use '../mastodon/functions' as *;
@use '../mastodon/theme_utils' as *;
body {
--dropdown-border-color: hsl(240deg, 25%, 88%);
--dropdown-background-color: #fff;
--modal-border-color: hsl(240deg, 25%, 88%);
--modal-background-color: var(--background-color);
--background-border-color: hsl(240deg, 25%, 88%);
--background-color: #fff;
--background-color-tint: rgba(255, 255, 255, 80%);
--background-filter: blur(10px);
--surface-variant-background-color: #f1ebfb;
--surface-border-color: #cac4d0;
--on-surface-color: #{color.adjust($ui-base-color, $alpha: -0.65)};
--rich-text-container-color: rgba(255, 216, 231, 100%);
--rich-text-text-color: rgba(114, 47, 83, 100%);
--rich-text-decorations-color: rgba(255, 175, 212, 100%);
--input-placeholder-color: #{color.adjust($dark-text-color, $alpha: -0.5)};
--input-background-color: #{darken($ui-base-color, 10%)};
:root {
--clr-black: #000;
--clr-grey-950: #181821;
--clr-grey-700: #444664;
--clr-grey-600: #545778;
--clr-grey-500: #696d91;
--clr-grey-400: #8b8dac;
--clr-grey-300: #b4b6cb;
--clr-grey-200: #d8d9e3;
--clr-grey-100: #f0f0f5;
--clr-grey-50: #f0f1ff;
--clr-white: #fff;
--clr-indigo-600: #6147e6;
--clr-indigo-200: #c8cdfe;
--clr-indigo-100: #e0e3ff;
--clr-indigo-50: #f0f1ff;
--clr-light-pink: #ededff;
--clr-red: #df405a;
--clr-red-100: #ffe4e6;
--clr-red-600: #ec003f;
--clr-yellow-50: #fffbeb;
--clr-yellow-600: #e17100;
--clr-green: #79bd9a;
--clr-green-100: #dcfce7;
--clr-green-600: #00a63e;
/* TEXT TOKENS */
--clr-text-primary: var(--clr-grey-950);
--clr-text-secondary: var(--clr-grey-600);
--clr-text-on-inverted: var(--clr-white);
--clr-text-accent: var(--clr-indigo-600);
--clr-text-accent-subtle: color-mix(
in oklab,
var(--clr-text-primary),
var(--clr-text-accent)
);
--clr-text-on-accent-strong: var(--clr-white);
--clr-text-error: var(--clr-red-600);
--clr-text-on-error-strong: var(--clr-white);
--clr-text-warning: var(--clr-yellow-600);
--clr-text-on-warning-strong: var(--clr-white);
--clr-text-success: var(--clr-green-600);
--clr-text-on-success-strong: var(--clr-white);
--clr-text-disabled: var(--clr-grey-300);
--clr-text-on-disabled: var(--clr-grey-200);
/* BACKGROUND TOKENS */
--clr-bg-primary: var(--clr-white);
--clr-bg-secondary-base: var(--clr-grey-600);
--clr-bg-secondary-strength: 5%;
--clr-bg-secondary: #{color-mix(
in oklab,
var(--clr-bg-primary),
var(--clr-bg-secondary-base) var(--clr-bg-secondary-strength)
)};
--clr-bg-secondary-solid: #{color-mix(
in srgb,
var(--clr-bg-primary),
var(--clr-bg-secondary-base) var(--clr-bg-secondary-strength)
)};
--clr-bg-tertiary: #{color-mix(
in oklab,
var(--clr-bg-primary),
var(--clr-bg-secondary-base) calc(2 * var(--clr-bg-secondary-strength))
)};
--clr-bg-elevated: var(--clr-bg-primary);
--clr-bg-inverted: var(--clr-grey-950);
--clr-bg-disabled: var(--clr-grey-400);
--clr-bg-accent-subtle-base: var(--clr-indigo-600);
--clr-bg-accent-subtle-strength: 12%;
--clr-bg-accent-subtle: #{css-alpha(
var(--clr-bg-accent-subtle-base),
var(--clr-bg-accent-subtle-strength)
)};
--clr-bg-accent-subtle-highlighted: #{css-alpha(
var(--clr-bg-accent-subtle-base),
calc(var(--clr-bg-accent-subtle-strength) * 1.5)
)};
--clr-bg-accent-strong: var(--clr-indigo-600);
--clr-bg-accent-strong-highlighted: color-mix(
in oklab,
var(--clr-bg-accent-strong),
black var(--clr-bg-accent-subtle-strength)
);
--clr-bg-error-subtle-base: #f41b3b;
--clr-bg-error-subtle-strength: 12%;
--clr-bg-error-subtle: #{css-alpha(
var(--clr-bg-error-subtle-base),
var(--clr-bg-error-subtle-strength)
)};
--clr-bg-error-strong: var(--clr-red-600);
--clr-bg-error-strong-highlighted: color-mix(
in oklab,
var(--clr-bg-error-strong),
black var(--clr-bg-error-subtle-strength)
);
--clr-bg-warning-subtle-base: #ffca1b;
--clr-bg-warning-subtle-strength: 10%;
--clr-bg-warning-subtle: #{css-alpha(
var(--clr-bg-warning-subtle-base),
var(--clr-bg-warning-subtle-strength)
)};
--clr-bg-warning-strong: var(--clr-yellow-600);
--clr-bg-warning-strong-highlighted: color-mix(
in oklab,
var(--clr-bg-warning-strong),
black var(--clr-bg-warning-subtle-strength)
);
--clr-bg-success-subtle-base: #17e865;
--clr-bg-success-subtle-strength: 15%;
--clr-bg-success-subtle: #{css-alpha(
var(--clr-bg-success-subtle-base),
var(--clr-bg-success-subtle-strength)
)};
--clr-bg-success-strong: var(--clr-green-600);
--clr-bg-success-strong-highlighted: color-mix(
in oklab,
var(--clr-bg-success-strong),
black var(--clr-bg-success-subtle-strength)
);
/* BORDER TOKENS */
--clr-border-primary-base: #000856;
--clr-border-primary-strength: 15%;
--clr-border-primary: color-mix(
in oklab,
var(--clr-bg-primary),
var(--clr-border-primary-base) var(--clr-border-primary-strength)
);
--clr-border-strong: var(--clr-grey-950);
--clr-border-media: rgb(252 248 255 / 15%);
--clr-border-on-bg-secondary: var(--clr-grey-200);
--clr-border-on-bg-accent-subtle: var(--clr-indigo-200);
--clr-border-on-bg-error-subtle: #{css-alpha(var(--clr-text-error), 50%)};
--clr-border-on-bg-warning-subtle: #{css-alpha(var(--clr-text-warning), 50%)};
--clr-border-on-bg-success-subtle: #{css-alpha(var(--clr-text-success), 50%)};
/* LEGACY TOKENS */
--rich-text-container-color: rgb(255 216 231 / 100%);
--rich-text-text-color: rgb(114 47 83 / 100%);
--rich-text-decorations-color: rgb(255 175 212 / 100%);
/* MISCELLANEOUS */
--avatar-border-radius: 8px;
--dropdown-shadow:
0 20px 25px -5px rgb(0 0 0 / 25%), 0 8px 10px -6px rgb(0 0 0 / 25%);
--overlay-icon-shadow: drop-shadow(0 0 8px rgb(0 0 0 / 35%));
}

View File

@ -3,6 +3,7 @@
@use 'sass:color';
@use '../mastodon/functions' as *;
@use '../mastodon/variables' as *;
@use '../mastodon/theme_utils' as *;
.simple_form .button.button-tertiary {
color: $highlight-text-color;
@ -28,7 +29,7 @@
// Change default background colors of columns
.interaction-modal {
background: $white;
border: 1px solid var(--background-border-color);
border: 1px solid var(--clr-border-primary);
}
.rules-list li::before {
@ -39,10 +40,6 @@
background: lighten($ui-base-color, 12%);
}
.account__header {
background: $white;
}
.column-header__button.active {
color: $ui-highlight-color;
@ -71,27 +68,19 @@
&:hover,
&:focus,
&:active {
color: $primary-text-color;
color: var(--text-primary-color);
}
}
.getting-started .navigation-bar {
border-top: 1px solid var(--background-border-color);
border-bottom: 1px solid var(--background-border-color);
border-top: 1px solid var(--clr-border-primary);
border-bottom: 1px solid var(--clr-border-primary);
@media screen and (max-width: $no-gap-breakpoint) {
border-top: 0;
}
}
.search__input,
.search__popout,
.setting-text,
.report-dialog-modal__textarea,
.audio-player {
border: 1px solid var(--background-border-color);
}
.report-dialog-modal .dialog-option .poll__input {
color: $white;
}
@ -133,7 +122,7 @@
.dialog-modal__content__preview {
background: #fff;
border-bottom: 1px solid var(--modal-border-color);
border-bottom: 1px solid var(--clr-border-primary);
}
.reactions-bar__item:hover,
@ -179,10 +168,6 @@
color: $white;
}
.flash-message.warning {
color: lighten($gold-star, 16%);
}
.boost-modal__action-bar,
.confirmation-modal__action-bar,
.mute-modal__action-bar,
@ -207,7 +192,7 @@
.embed-modal .embed-modal__container .embed-modal__html {
background: $white;
border: 1px solid var(--background-border-color);
border: 1px solid var(--clr-border-primary);
&:focus {
border-color: lighten($ui-base-color, 12%);
@ -231,7 +216,7 @@
// Change the default color used for the text in an empty column or on the error column
.empty-column-indicator,
.error-column {
color: $primary-text-color;
color: var(--text-primary-color);
background: $white;
}
@ -246,7 +231,7 @@
.directory__tag > a,
.directory__tag > div {
background: $white;
border: 1px solid var(--background-border-color);
border: 1px solid var(--clr-border-primary);
}
.picture-in-picture-placeholder {
@ -275,22 +260,22 @@
.account-grid-card {
.controls {
.icon-button {
color: $darker-text-color;
color: var(--clr-text-secondary);
}
}
.name {
a {
color: $primary-text-color;
color: var(--text-primary-color);
}
}
.username {
color: $darker-text-color;
color: var(--clr-text-secondary);
}
.account__header__content {
color: $primary-text-color;
color: var(--text-primary-color);
}
}
}
@ -382,25 +367,6 @@
}
}
.compose-form__actions .icon-button.active,
.dropdown-button.active,
.language-dropdown__dropdown__results__item:focus,
.language-dropdown__dropdown__results__item.active,
.language-dropdown__dropdown__results__item:focus
.language-dropdown__dropdown__results__item__common-name,
.language-dropdown__dropdown__results__item.active
.language-dropdown__dropdown__results__item__common-name {
color: $white;
}
.privacy-dropdown__option,
.visibility-dropdown__option {
&:focus,
&.active {
--dropdown-text-color: #{$white};
}
}
.compose-form .spoiler-input__input {
color: lighten($ui-highlight-color, 8%);
}
@ -515,7 +481,7 @@ a.sparkline {
@supports not selector(::-webkit-scrollbar) {
html {
scrollbar-color: color.change($action-button-color, $alpha: 0.25)
var(--background-border-color);
var(--clr-border-primary);
}
}

View File

@ -33,8 +33,6 @@ $classic-highlight-color: $blurple-500;
$ui-button-tertiary-color: $blurple-500,
$ui-button-tertiary-border-color: $blurple-500,
$primary-text-color: $black,
$darker-text-color: $classic-base-color,
$lighter-text-color: $classic-base-color,
$highlight-text-color: $classic-highlight-color,
$dark-text-color: hsl(240deg, 16%, 32%),

View File

@ -1,5 +1,6 @@
@use 'sass:color';
@use 'variables' as *;
@use 'theme_utils' as *;
@mixin search-input {
outline: 0;
@ -7,17 +8,17 @@
width: 100%;
box-shadow: none;
font-family: inherit;
background: var(--input-background-color);
color: $darker-text-color;
background: var(--clr-bg-secondary);
color: var(--clr-text-primary);
border-radius: 4px;
border: 1px solid var(--background-border-color);
border: 1px solid var(--clr-border-on-bg-secondary);
font-size: 17px;
line-height: normal;
margin: 0;
}
@mixin search-popout {
background: $simple-background-color;
background: var(--clr-bg-elevated);
border-radius: 4px;
padding: 10px 14px;
padding-bottom: 14px;

View File

@ -0,0 +1,7 @@
@function css-alpha($base-color, $amount) {
@return #{rgb(from $base-color r g b / $amount)};
}
@function css-mix($base-color, $mix-color, $amount) {
@return #{color-mix(in oklab, $base-color, $mix-color $amount)};
}

View File

@ -31,8 +31,6 @@ $base-shadow-color: $black !default;
$base-overlay-background: $black !default;
$base-border-color: $white !default;
$simple-background-color: $white !default;
$valid-value-color: $success-green !default;
$error-value-color: $error-red !default;
// Tell UI to use selected colors
$ui-base-color: $classic-base-color !default; // Darkest
@ -64,17 +62,8 @@ $ui-button-tertiary-border-color: $blurple-300 !default;
$ui-button-tertiary-focus-background-color: $blurple-600 !default;
$ui-button-tertiary-focus-color: $white !default;
$ui-button-destructive-background-color: $red-500 !default;
$ui-button-destructive-focus-background-color: $red-600 !default;
$ui-button-icon-focus-outline: $ui-button-focus-outline !default;
$ui-button-icon-hover-background-color: rgba(140, 141, 255, 40%) !default;
// Variables for texts
$primary-text-color: $white !default;
$darker-text-color: $ui-primary-color !default;
$dark-text-color: $ui-base-lighter-color !default;
$secondary-text-color: $ui-secondary-color !default;
$highlight-text-color: lighten($ui-highlight-color, 8%) !default;
$action-button-color: $ui-base-lighter-color !default;
$action-button-focus-color: lighten($ui-base-lighter-color, 4%) !default;

View File

@ -28,7 +28,7 @@ $fluid-breakpoint: $maximum-width + 20px;
li {
position: relative;
border-bottom: 1px solid var(--background-border-color);
border-bottom: 1px solid var(--clr-border-primary);
padding: 1em 1.75em;
padding-inline-start: 3em;
font-weight: 500;
@ -85,13 +85,13 @@ $fluid-breakpoint: $maximum-width + 20px;
}
&__text {
color: $primary-text-color;
color: var(--clr-text-primary);
}
&__hint {
font-size: 14px;
font-weight: 400;
color: $darker-text-color;
color: var(--clr-text-secondary);
}
}
@ -104,21 +104,21 @@ $fluid-breakpoint: $maximum-width + 20px;
> label {
font-size: 14px;
font-weight: 600;
color: $primary-text-color;
color: var(--clr-text-primary);
}
> select {
appearance: none;
box-sizing: border-box;
font-size: 14px;
color: $primary-text-color;
color: var(--clr-text-primary);
display: block;
width: 100%;
outline: 0;
font-family: inherit;
resize: vertical;
background: $ui-base-color;
border: 1px solid var(--background-border-color);
border: 1px solid var(--clr-border-primary);
border-radius: 4px;
padding-inline-start: 10px;
padding-inline-end: 30px;

View File

@ -23,7 +23,7 @@
height: 130px;
position: relative;
background: $ui-base-color;
border: 1px solid var(--background-border-color);
border: 1px solid var(--clr-border-primary);
border-bottom: none;
img {
@ -45,8 +45,8 @@
display: flex;
justify-content: flex-start;
align-items: center;
background: var(--background-color);
border: 1px solid var(--background-border-color);
background: var(--clr-bg-primary);
border: 1px solid var(--clr-border-primary);
border-top: none;
.avatar {
@ -76,7 +76,7 @@
strong {
font-size: 15px;
color: $primary-text-color;
color: var(--clr-text-primary);
font-weight: 500;
overflow: hidden;
text-overflow: ellipsis;
@ -85,7 +85,7 @@
span {
display: block;
font-size: 14px;
color: $darker-text-color;
color: var(--clr-text-secondary);
font-weight: 400;
overflow: hidden;
text-overflow: ellipsis;
@ -106,7 +106,7 @@
.page,
.gap {
font-size: 14px;
color: $primary-text-color;
color: var(--clr-text-primary);
font-weight: 500;
display: inline-block;
padding: 6px 10px;
@ -128,7 +128,7 @@
.older,
.newer {
text-transform: uppercase;
color: $secondary-text-color;
color: var(--clr-text-primary);
}
.older {
@ -163,7 +163,7 @@
.nothing-here {
background: $ui-base-color;
box-shadow: 0 0 15px color.change($base-shadow-color, $alpha: 0.2);
color: $darker-text-color;
color: var(--clr-text-secondary);
font-size: 14px;
font-weight: 500;
text-align: center;
@ -196,7 +196,7 @@
font-size: 12px;
line-height: 12px;
font-weight: 500;
color: $ui-secondary-color;
color: var(--clr-text-primary);
text-overflow: ellipsis;
white-space: nowrap;
overflow: hidden;
@ -206,8 +206,16 @@
.simple_form .overridden,
.simple_form .recommended,
.simple_form .not_recommended {
background-color: color.change($ui-secondary-color, $alpha: 0.1);
border: 1px solid color.change($ui-secondary-color, $alpha: 0.5);
background-color: var(--clr-bg-secondary);
border: 1px solid var(--clr-border-primary);
}
.information-badge {
&.superapp {
color: var(--clr-text-success);
background-color: var(--clr-bg-success-subtle);
border-color: var(--clr-border-on-bg-success-subtle);
}
}
.account-role {
@ -238,14 +246,6 @@
}
}
.information-badge {
&.superapp {
color: $success-green;
background-color: color.change($success-green, $alpha: 0.1);
border-color: color.change($success-green, $alpha: 0.5);
}
}
.simple_form .not_recommended {
color: lighten($error-red, 12%);
background-color: rgba(lighten($error-red, 12%), 0.1);
@ -282,13 +282,13 @@
font-weight: 500;
width: 120px;
flex: 0 0 auto;
color: $secondary-text-color;
color: var(--clr-text-primary);
background: rgba(darken($ui-base-color, 8%), 0.5);
}
dd {
flex: 1 1 auto;
color: $darker-text-color;
color: var(--clr-text-secondary);
}
a {
@ -303,16 +303,16 @@
}
.verified {
border: 1px solid color.change($valid-value-color, $alpha: 0.5);
background: color.change($valid-value-color, $alpha: 0.25);
border: 1px solid var(--clr-border-on-bg-success-subtle);
background: var(--clr-bg-success-subtle);
a {
color: $valid-value-color;
color: var(--clr-text-success);
font-weight: 500;
}
&__mark {
color: $valid-value-color;
color: var(--clr-text-success);
}
}
@ -327,7 +327,7 @@
.pending-account {
&__header {
color: $darker-text-color;
color: var(--clr-text-secondary);
a {
color: $ui-secondary-color;
@ -341,7 +341,7 @@
}
strong {
color: $primary-text-color;
color: var(--clr-text-primary);
font-weight: 700;
}

View File

@ -34,7 +34,7 @@ $content-width: 840px;
&__inner {
display: flex;
justify-content: flex-end;
background: var(--background-color);
background: var(--clr-bg-primary);
height: 100%;
}
}
@ -46,7 +46,7 @@ $content-width: 840px;
&__toggle {
display: none;
background: var(--background-color);
background: var(--clr-bg-primary);
border-bottom: 1px solid lighten($ui-base-color, 4%);
align-items: center;
@ -61,7 +61,7 @@ $content-width: 840px;
&__icon {
display: block;
color: $darker-text-color;
color: var(--clr-text-secondary);
text-decoration: none;
flex: 0 0 auto;
font-size: 18px;
@ -124,20 +124,20 @@ $content-width: 840px;
align-items: center;
gap: 6px;
padding: 15px;
color: $darker-text-color;
color: var(--clr-text-secondary);
text-decoration: none;
transition: all 200ms linear;
transition-property: color, background-color;
&:hover {
color: $primary-text-color;
color: var(--clr-text-primary);
transition: all 100ms linear;
transition-property: color, background-color;
}
}
ul {
background: var(--background-color);
background: var(--clr-bg-primary);
margin: 0;
a {
@ -227,7 +227,7 @@ $content-width: 840px;
align-items: center;
padding: 7px 10px;
border-radius: 4px;
color: $darker-text-color;
color: var(--clr-text-secondary);
text-decoration: none;
font-weight: 500;
gap: 5px;
@ -245,7 +245,7 @@ $content-width: 840px;
&.selected {
font-weight: 700;
color: $primary-text-color;
color: var(--clr-text-primary);
background: $ui-highlight-color;
}
}
@ -270,7 +270,7 @@ $content-width: 840px;
font-size: 12px;
display: block;
font-weight: 500;
color: $darker-text-color;
color: var(--clr-text-secondary);
line-height: 18px;
}
@ -281,14 +281,14 @@ $content-width: 840px;
}
h2 {
color: $secondary-text-color;
color: var(--clr-text-primary);
font-size: 24px;
line-height: 36px;
font-weight: 700;
}
h3 {
color: $secondary-text-color;
color: var(--clr-text-primary);
font-size: 20px;
line-height: 28px;
font-weight: 400;
@ -299,21 +299,21 @@ $content-width: 840px;
text-transform: uppercase;
font-size: 13px;
font-weight: 700;
color: $darker-text-color;
color: var(--clr-text-secondary);
padding-top: 24px;
margin-bottom: 8px;
border-top: 1px solid var(--background-border-color);
border-top: 1px solid var(--clr-border-primary);
}
h6 {
font-size: 16px;
color: $secondary-text-color;
color: var(--clr-text-primary);
line-height: 28px;
font-weight: 500;
}
.fields-group h6 {
color: $primary-text-color;
color: var(--clr-text-primary);
font-weight: 500;
}
@ -325,7 +325,7 @@ $content-width: 840px;
.directory__tag h4 {
font-size: 18px;
font-weight: 700;
color: $primary-text-color;
color: var(--clr-text-primary);
text-transform: none;
padding-bottom: 0;
margin-bottom: 0;
@ -339,12 +339,12 @@ $content-width: 840px;
&.private-comment {
display: block;
color: $darker-text-color;
color: var(--clr-text-secondary);
}
&.public-comment {
display: block;
color: $secondary-text-color;
color: var(--clr-text-primary);
}
}
}
@ -352,11 +352,11 @@ $content-width: 840px;
& > p {
font-size: 14px;
line-height: 21px;
color: $secondary-text-color;
color: var(--clr-text-primary);
margin-bottom: 20px;
strong {
color: $primary-text-color;
color: var(--clr-text-primary);
font-weight: 500;
@each $lang in $cjk-langs {
@ -371,7 +371,7 @@ $content-width: 840px;
width: 100%;
height: 0;
border: 0;
border-bottom: 1px solid var(--background-border-color);
border-bottom: 1px solid var(--clr-border-primary);
margin: 20px 0;
&.spacer {
@ -409,7 +409,7 @@ $content-width: 840px;
inset-inline-start: 0;
bottom: 0;
overflow-y: auto;
background: var(--background-color);
background: var(--clr-bg-primary);
}
}
@ -445,10 +445,10 @@ hr.spacer {
body,
.admin-wrapper .content {
.muted-hint {
color: $darker-text-color;
color: var(--clr-text-secondary);
a {
color: $highlight-text-color;
color: var(--clr-text-accent);
}
}
@ -468,22 +468,22 @@ body,
}
.positive-hint {
color: $valid-value-color;
color: var(--clr-text-success);
font-weight: 500;
}
.negative-hint {
color: $error-value-color;
color: var(--clr-text-error);
font-weight: 500;
}
.neutral-hint {
color: $dark-text-color;
color: var(--clr-text-primary);
font-weight: 500;
}
.warning-hint {
color: $gold-star;
color: var(--clr-text-warning);
font-weight: 500;
}
}
@ -543,7 +543,7 @@ kbd {
a {
display: inline-block;
color: $darker-text-color;
color: var(--clr-text-secondary);
text-decoration: none;
text-transform: uppercase;
font-size: 12px;
@ -551,7 +551,7 @@ kbd {
border-bottom: 2px solid $ui-base-color;
&:hover {
color: $primary-text-color;
color: var(--clr-text-primary);
border-bottom: 2px solid lighten($ui-base-color, 5%);
}
@ -581,7 +581,7 @@ kbd {
font-weight: 500;
font-size: 14px;
line-height: 18px;
color: $secondary-text-color;
color: var(--clr-text-primary);
@each $lang in $cjk-langs {
&:lang(#{$lang}) {
@ -670,25 +670,25 @@ kbd {
line-height: 20px;
padding: 15px;
padding-inline-start: 15px * 2 + 40px;
background: var(--background-color);
border-right: 1px solid var(--background-border-color);
border-left: 1px solid var(--background-border-color);
border-bottom: 1px solid var(--background-border-color);
background: var(--clr-bg-primary);
border-right: 1px solid var(--clr-border-primary);
border-left: 1px solid var(--clr-border-primary);
border-bottom: 1px solid var(--clr-border-primary);
position: relative;
text-decoration: none;
color: $darker-text-color;
color: var(--clr-text-secondary);
font-size: 14px;
&:first-child {
border-top-left-radius: 4px;
border-top-right-radius: 4px;
border-top: 1px solid var(--background-border-color);
border-top: 1px solid var(--clr-border-primary);
}
&:last-child {
border-bottom-left-radius: 4px;
border-bottom-right-radius: 4px;
border-bottom: 1px solid var(--background-border-color);
border-bottom: 1px solid var(--clr-border-primary);
}
&__avatar {
@ -714,7 +714,7 @@ kbd {
a,
.username,
.target {
color: $secondary-text-color;
color: var(--clr-text-primary);
text-decoration: none;
font-weight: 500;
}
@ -733,12 +733,12 @@ kbd {
line-height: 20px;
padding: 15px;
padding-inline-start: 15px * 2 + 40px;
background: var(--background-color);
border: 1px solid var(--background-border-color);
background: var(--clr-bg-primary);
border: 1px solid var(--clr-border-primary);
border-radius: 4px;
position: relative;
text-decoration: none;
color: $darker-text-color;
color: var(--clr-text-secondary);
font-size: 14px;
margin-bottom: 15px;
@ -774,7 +774,7 @@ a.name-tag,
a.inline-name-tag,
.inline-name-tag {
text-decoration: none;
color: $secondary-text-color;
color: var(--clr-text-primary);
&:hover {
color: $highlight-text-color;
@ -844,7 +844,7 @@ a.name-tag,
font-weight: 500;
a {
color: $darker-text-color;
color: var(--clr-text-secondary);
}
}
@ -859,8 +859,8 @@ a.name-tag,
}
.report-card {
background: var(--background-color);
border: 1px solid var(--background-border-color);
background: var(--clr-bg-primary);
border: 1px solid var(--clr-border-primary);
border-radius: 4px;
margin-bottom: 20px;
@ -882,7 +882,7 @@ a.name-tag,
&__stats {
flex: 0 0 auto;
font-weight: 500;
color: $darker-text-color;
color: var(--clr-text-secondary);
text-transform: uppercase;
text-align: end;
@ -893,12 +893,12 @@ a.name-tag,
&:focus,
&:hover,
&:active {
color: $highlight-text-color;
color: var(--clr-text-accent);
}
}
.red {
color: $error-value-color;
color: var(--clr-text-error);
}
}
}
@ -907,7 +907,7 @@ a.name-tag,
&__item {
display: flex;
justify-content: flex-start;
border-top: 1px solid var(--background-border-color);
border-top: 1px solid var(--clr-border-primary);
&__reported-by,
&__assigned {
@ -915,7 +915,7 @@ a.name-tag,
flex: 0 0 auto;
box-sizing: border-box;
width: 150px;
color: $darker-text-color;
color: var(--clr-text-secondary);
&,
.username {
@ -941,10 +941,10 @@ a.name-tag,
width: 100%;
padding: 15px;
text-decoration: none;
color: $darker-text-color;
color: var(--clr-text-secondary);
&:hover {
color: $highlight-text-color;
color: var(--clr-text-accent);
}
}
}
@ -981,15 +981,15 @@ a.name-tag,
.account__header__fields,
.account__header__content {
background: var(--background-color);
border: 1px solid var(--background-border-color);
background: var(--clr-bg-primary);
border: 1px solid var(--clr-border-primary);
border-radius: 4px;
height: 100%;
}
.account__header__fields {
margin: 0;
border: 1px solid var(--background-border-color);
border: 1px solid var(--clr-border-primary);
a {
color: $highlight-text-color;
@ -1000,14 +1000,14 @@ a.name-tag,
}
.verified a {
color: $valid-value-color;
color: var(--clr-text-success);
}
}
.account__header__content {
box-sizing: border-box;
padding: 20px;
color: $primary-text-color;
color: var(--clr-text-primary);
}
}
@ -1018,8 +1018,8 @@ a.name-tag,
.applications-list__item,
.filters-list__item {
padding: 15px 0;
background: var(--background-color);
border: 1px solid var(--background-border-color);
background: var(--clr-bg-primary);
border: 1px solid var(--clr-border-primary);
border-radius: 4px;
margin-top: 15px;
}
@ -1036,13 +1036,13 @@ a.name-tag,
.announcements-list,
.filters-list {
border: 1px solid var(--background-border-color);
border: 1px solid var(--clr-border-primary);
border-radius: 4px;
border-bottom: none;
&__item {
padding: 15px 0;
border-bottom: 1px solid var(--background-border-color);
border-bottom: 1px solid var(--clr-border-primary);
&__title {
padding: 0 15px;
@ -1050,7 +1050,7 @@ a.name-tag,
font-weight: 500;
font-size: 18px;
line-height: 1.5;
color: $secondary-text-color;
color: var(--clr-text-primary);
text-decoration: none;
margin-bottom: 10px;
@ -1071,7 +1071,7 @@ a.name-tag,
&:hover,
&:focus,
&:active {
color: $primary-text-color;
color: var(--clr-text-primary);
}
}
@ -1167,7 +1167,7 @@ a.name-tag,
&__table {
&__number {
color: var(--background-color);
color: var(--clr-bg-primary);
padding: 10px;
}
@ -1189,23 +1189,26 @@ a.name-tag,
&__label {
font-weight: 700;
color: $darker-text-color;
color: var(--clr-text-secondary);
}
&__box {
box-sizing: border-box;
background: var(--background-color);
padding: 10px;
font-weight: 500;
color: $primary-text-color;
width: 52px;
margin: 1px;
padding: 10px;
font-weight: 500;
color: var(--clr-text-primary);
background: var(--clr-bg-primary);
@for $i from 0 through 10 {
&--#{10 * $i} {
background-color: rgba(
$ui-highlight-color,
1 * (math.div(max(1, $i), 10))
@if $i > 5 {
color: var(--clr-text-on-accent-strong);
}
background-color: rgb(
from var(--clr-bg-accent-strong) r g b / #{math.div(max(1, $i), 10)}
);
}
}
@ -1216,9 +1219,9 @@ a.name-tag,
.sparkline {
display: block;
text-decoration: none;
background: var(--background-color);
background: var(--clr-bg-primary);
border-radius: 4px;
border: 1px solid var(--background-border-color);
border: 1px solid var(--clr-border-primary);
padding: 0;
position: relative;
padding-bottom: 55px + 20px;
@ -1236,22 +1239,22 @@ a.name-tag,
margin-inline-end: 10px;
font-weight: 500;
font-size: 28px;
color: $primary-text-color;
color: var(--clr-text-primary);
}
&__change {
display: block;
font-weight: 500;
font-size: 18px;
color: $darker-text-color;
color: var(--clr-text-secondary);
margin-bottom: -3px;
&.positive {
color: $valid-value-color;
color: var(--clr-text-success);
}
&.negative {
color: $error-value-color;
color: var(--clr-text-error);
}
}
}
@ -1260,7 +1263,7 @@ a.name-tag,
padding: 0 20px;
padding-bottom: 10px;
text-transform: uppercase;
color: $darker-text-color;
color: var(--clr-text-secondary);
font-weight: 500;
}
@ -1275,12 +1278,12 @@ a.name-tag,
}
path:first-child {
fill: color.change($highlight-text-color, $alpha: 0.25) !important;
fill: var(--clr-bg-accent-subtle) !important;
fill-opacity: 1 !important;
}
path:last-child {
stroke: lighten($highlight-text-color, 6%) !important;
stroke: var(--clr-text-accent) !important;
fill: none !important;
}
}
@ -1290,17 +1293,17 @@ a.sparkline {
&:hover,
&:focus,
&:active {
background: $ui-base-color;
background: var(--clr-bg-accent-subtle);
}
}
.skeleton {
background-color: var(--background-color);
background-color: var(--clr-bg-primary);
background-image: linear-gradient(
90deg,
lighten($ui-base-color, 8%),
lighten($ui-base-color, 12%),
lighten($ui-base-color, 8%)
var(--clr-bg-primary),
var(--clr-bg-secondary),
var(--clr-bg-primary)
);
background-size: 200px 100%;
background-repeat: no-repeat;
@ -1327,7 +1330,7 @@ a.sparkline {
}
&__item {
border-bottom: 1px solid lighten($ui-base-color, 4%);
border-bottom: 1px solid var(--clr-border-primary);
&__key {
font-weight: 500;
@ -1336,7 +1339,7 @@ a.sparkline {
&__value {
text-align: end;
color: $darker-text-color;
color: var(--clr-text-secondary);
padding: 11px 10px;
}
@ -1345,14 +1348,13 @@ a.sparkline {
width: 8px;
height: 8px;
border-radius: 50%;
background: $ui-highlight-color;
background: var(--clr-text-accent);
margin-inline-end: 10px;
@for $i from 0 through 10 {
&--#{10 * $i} {
background-color: rgba(
$ui-highlight-color,
1 * (math.div(max(1, $i), 10))
background-color: rgb(
from var(--clr-text-accent) r g b / #{math.div(max(1, $i), 10)}
);
}
}
@ -1363,11 +1365,11 @@ a.sparkline {
}
&.negative {
color: $error-value-color;
color: var(--clr-text-error);
font-weight: 700;
.dimension__item__value {
color: $error-value-color;
color: var(--clr-text-error);
}
}
}
@ -1375,12 +1377,12 @@ a.sparkline {
.report-reason-selector {
border-radius: 4px;
background: var(--background-color);
background: var(--clr-bg-primary);
margin-bottom: 20px;
&__category {
cursor: pointer;
border-bottom: 1px solid darken($ui-base-color, 8%);
border-bottom: 1px solid var(--clr-border-primary);
&__label {
padding: 15px;
@ -1410,7 +1412,7 @@ a.sparkline {
&__details {
&__item {
border-bottom: 1px solid var(--background-border-color);
border-bottom: 1px solid var(--clr-border-primary);
padding: 15px 0;
&:last-child {
@ -1441,7 +1443,7 @@ a.sparkline {
.account-card {
border-radius: 4px;
border: 1px solid var(--background-border-color);
border: 1px solid var(--clr-border-primary);
position: relative;
&__warning-badge {
@ -1453,7 +1455,7 @@ a.sparkline {
background:
url('@/images/warning-stripes.svg') repeat-y left,
url('@/images/warning-stripes.svg') repeat-y right,
var(--background-color);
var(--clr-bg-primary);
}
&__permalink {
@ -1472,7 +1474,7 @@ a.sparkline {
width: 100%;
height: 100%;
object-fit: cover;
background: darken($ui-base-color, 8%);
background: var(--clr-bg-secondary);
}
}
@ -1490,21 +1492,21 @@ a.sparkline {
margin: 0;
width: 56px;
height: 56px;
background-color: darken($ui-base-color, 8%);
background-color: var(--clr-bg-secondary);
border-radius: 8px;
border: 1px solid $ui-base-color;
border: 1px solid var(--clr-border-media);
}
}
.display-name {
color: $darker-text-color;
color: var(--clr-text-secondary);
padding-bottom: 15px;
font-size: 15px;
line-height: 20px;
bdi {
display: block;
color: $primary-text-color;
color: var(--clr-text-primary);
font-weight: 700;
}
}
@ -1533,7 +1535,7 @@ a.sparkline {
}
a {
color: $secondary-text-color;
color: var(--clr-text-primary);
text-decoration: none;
unicode-bidi: isolate;
@ -1584,14 +1586,14 @@ a.sparkline {
&__item {
padding: 15px 0;
text-align: center;
color: $primary-text-color;
color: var(--clr-text-primary);
font-weight: 600;
font-size: 15px;
line-height: 21px;
small {
display: block;
color: $darker-text-color;
color: var(--clr-text-secondary);
font-weight: 400;
font-size: 13px;
line-height: 18px;
@ -1604,11 +1606,11 @@ a.sparkline {
margin-bottom: 20px;
&__item {
background: var(--background-color);
background: var(--clr-bg-primary);
position: relative;
padding: 15px;
padding-inline-start: 15px * 2 + 40px;
border: 1px solid var(--background-border-color);
border: 1px solid var(--clr-border-primary);
&:first-child {
border-top-left-radius: 4px;
@ -1630,13 +1632,13 @@ a.sparkline {
}
&__header {
color: $darker-text-color;
color: var(--clr-text-secondary);
font-size: 15px;
line-height: 20px;
margin-bottom: 4px;
.username {
color: $primary-text-color;
color: var(--clr-text-primary);
font-weight: 500;
margin-inline-end: 5px;
@ -1653,7 +1655,7 @@ a.sparkline {
}
a.timestamp {
color: $darker-text-color;
color: var(--clr-text-secondary);
text-decoration: none;
&:hover,
@ -1674,7 +1676,7 @@ a.sparkline {
line-height: 20px;
overflow-wrap: break-word;
font-weight: 400;
color: $primary-text-color;
color: var(--clr-text-primary);
p {
margin-bottom: 20px;
@ -1776,10 +1778,10 @@ a.sparkline {
line-height: 20px;
overflow-wrap: break-word;
font-weight: 400;
color: $primary-text-color;
color: var(--clr-text-primary);
box-sizing: border-box;
min-height: 100%;
border: 1px solid var(--background-border-color);
border: 1px solid var(--clr-border-primary);
border-radius: 4px;
a {
@ -1808,34 +1810,34 @@ a.sparkline {
list-style: disc;
padding-inline-start: 15px;
margin-bottom: 20px;
color: $darker-text-color;
color: var(--clr-text-secondary);
&:last-child {
margin-bottom: 0;
}
&__text {
color: $primary-text-color;
color: var(--clr-text-primary);
}
}
&__statuses-list {
border-radius: 4px;
border: 1px solid var(--background-border-color);
border: 1px solid var(--clr-border-primary);
font-size: 13px;
line-height: 18px;
overflow: hidden;
&__item {
padding: 16px;
border-bottom: 1px solid var(--background-border-color);
border-bottom: 1px solid var(--clr-border-primary);
&:last-child {
border-bottom: 0;
}
&__meta {
color: $darker-text-color;
color: var(--clr-text-secondary);
}
a {
@ -1872,16 +1874,16 @@ a.sparkline {
flex: 0 0 auto;
width: 4px;
height: 21px;
background: lighten($ui-base-color, 8%);
background: var(--clr-bg-secondary);
margin: 0 2px;
border-radius: 2px;
&.positive {
background: $valid-value-color;
background: var(--clr-bg-success-strong);
}
&.negative {
background: $error-value-color;
background: var(--clr-bg-error-strong);
}
}
}
@ -1938,7 +1940,7 @@ a.sparkline {
&__entry {
h5 {
font-weight: 500;
color: $primary-text-color;
color: var(--clr-text-primary);
line-height: 25px;
margin-bottom: 16px;
}
@ -1959,7 +1961,7 @@ a.sparkline {
overflow-wrap: break-word;
font-weight: 400;
border: 1px solid lighten($ui-base-color, 4%);
color: $primary-text-color;
color: var(--clr-text-primary);
box-sizing: border-box;
min-height: 100%;
@ -2103,23 +2105,23 @@ a.sparkline {
.admin {
&__terms-of-service {
&__container {
background: var(--surface-background-color);
background: var(--clr-bg-tertiary);
border-radius: 8px;
border: 1px solid var(--background-border-color);
border: 1px solid var(--clr-border-primary);
overflow: hidden;
&__header {
padding: 16px;
font-size: 14px;
line-height: 20px;
color: $secondary-text-color;
color: var(--clr-text-primary);
display: flex;
align-items: center;
gap: 12px;
}
&__body {
background: var(--background-color);
background: var(--clr-bg-primary);
padding: 16px;
overflow-y: scroll;
height: 30vh;
@ -2128,7 +2130,7 @@ a.sparkline {
&__history {
& > li {
border-bottom: 1px solid var(--background-border-color);
border-bottom: 1px solid var(--clr-border-primary);
&:last-child {
border-bottom: 0;
@ -2170,10 +2172,10 @@ a.sparkline {
}
&.success {
color: $valid-value-color;
color: var(--clr-text-success);
.dot-indicator__indicator {
background-color: $valid-value-color;
background-color: var(--clr-bg-success-strong);
}
}
}

View File

@ -1,5 +1,6 @@
@use 'variables' as *;
@use 'functions' as *;
@use 'theme_utils' as *;
html.has-modal {
&,
@ -17,11 +18,11 @@ html.has-modal {
body {
font-family: $font-sans-serif, sans-serif;
background: var(--background-color);
background: var(--clr-bg-ambient);
font-size: 13px;
line-height: 18px;
font-weight: 400;
color: $primary-text-color;
color: var(--clr-text-primary);
text-rendering: optimizelegibility;
// Disable kerning for Japanese text to preserve monospaced alignment for readability
@ -228,7 +229,7 @@ button {
}
a {
color: $highlight-text-color;
color: var(--clr-text-accent);
&:hover,
&:focus,
@ -238,11 +239,11 @@ button {
}
&__footer {
color: $dark-text-color;
color: var(--clr-text-secondary);
font-size: 13px;
a {
color: $dark-text-color;
color: var(--clr-text-secondary);
}
}
@ -250,7 +251,7 @@ button {
display: inline;
border: 0;
background: transparent;
color: $dark-text-color;
color: var(--clr-text-secondary);
font: inherit;
padding: 0;
margin: 0;
@ -267,7 +268,7 @@ button {
}
&.copied {
color: $valid-value-color;
color: var(--mas-status-success-color);
transition: none;
}
}

View File

@ -1,5 +1,5 @@
@use 'variables' as *;
.logo {
color: $primary-text-color;
color: var(--clr-text-primary);
}

File diff suppressed because it is too large Load Diff

View File

@ -1,4 +1,5 @@
@use 'variables' as *;
@use 'theme_utils' as *;
.container-alt {
width: 700px;
@ -27,7 +28,7 @@
display: flex;
justify-content: center;
align-items: center;
color: $primary-text-color;
color: var(--clr-text-primary);
text-decoration: none;
outline: 0;
padding: 12px 16px;
@ -65,7 +66,7 @@
padding: 20px 0;
margin-top: 40px;
margin-bottom: 10px;
border-bottom: 1px solid var(--background-border-color);
border-bottom: 1px solid var(--clr-border-primary);
@media screen and (width <= 440px) {
width: 100%;
@ -89,7 +90,7 @@
.name {
flex: 1 1 auto;
color: $secondary-text-color;
color: var(--clr-text-primary);
.username {
display: block;
@ -97,7 +98,7 @@
line-height: 24px;
text-overflow: ellipsis;
overflow: hidden;
color: $primary-text-color;
color: var(--clr-text-primary);
}
}

View File

@ -1,42 +1,170 @@
@use 'sass:color';
@use 'functions' as *;
@use 'variables' as *;
@use 'theme_utils' as *;
:root {
--dropdown-border-color: #{lighten($ui-base-color, 4%)};
--dropdown-background-color: #{rgba(darken($ui-base-color, 8%), 0.9)};
--dropdown-shadow:
0 20px 25px -5px #{color.change($base-shadow-color, $alpha: 0.25)},
0 8px 10px -6px #{color.change($base-shadow-color, $alpha: 0.25)};
--modal-background-color: #{rgba(darken($ui-base-color, 8%), 0.7)};
--modal-background-variant-color: #{color.change($ui-base-color, $alpha: 0.7)};
--modal-border-color: #{lighten($ui-base-color, 4%)};
--background-border-color: #{lighten($ui-base-color, 4%)};
--background-color: #{darken($ui-base-color, 8%)};
--background-color-tint: #{rgba(darken($ui-base-color, 8%), 0.9)};
--surface-background-color: #{darken($ui-base-color, 4%)};
--surface-variant-background-color: #{$ui-base-color};
--surface-variant-active-background-color: #{lighten($ui-base-color, 4%)};
--surface-border-color: #{lighten($ui-base-color, 8%)};
--on-surface-color: #{color.adjust($ui-base-color, $alpha: -0.5)};
--avatar-border-radius: 8px;
--media-outline-color: #{rgba(#fcf8ff, 0.15)};
--overlay-icon-shadow: drop-shadow(
0 0 8px #{color.change($base-shadow-color, $alpha: 0.35)}
--clr-black: #000;
--clr-grey-950: #181821;
--clr-grey-800: #292938;
--clr-grey-700: #444664;
--clr-grey-600: #545778;
--clr-grey-500: #606085;
--clr-grey-400: #8b8dac;
--clr-grey-300: #b4b6cb;
--clr-grey-200: #d8d9e3;
--clr-grey-100: #f0f0f5;
--clr-grey-50: #f0f1ff;
--clr-white: #fff;
--clr-indigo-600: #6147e6;
--clr-indigo-400: #8886ff;
--clr-indigo-200: #c8cdfe;
--clr-indigo-100: #e0e3ff;
--clr-indigo-50: #f0f1ff;
--clr-light-pink: #ededff;
--clr-red: #df405a;
--clr-red-100: #ffe4e6;
--clr-red-500: #ff637e;
--clr-red-600: #ec003f;
--clr-yellow-50: #fffbeb;
--clr-yellow-400: #ffb900;
--clr-yellow-600: #e17100;
--clr-green: #79bd9a;
--clr-green-100: #dcfce7;
--clr-green-400: #05df72;
--clr-green-600: #00a63e;
/* TEXT TOKENS */
--clr-text-primary: var(--clr-grey-50);
--clr-text-secondary: var(--clr-grey-400);
--clr-text-on-inverted: var(--clr-grey-950);
--clr-text-accent: var(--clr-indigo-400);
--clr-text-accent-subtle: color-mix(
in oklab,
var(--clr-text-primary),
var(--clr-text-accent)
);
--error-background-color: #{darken($error-red, 16%)};
--error-active-background-color: #{darken($error-red, 12%)};
--on-error-color: #fff;
--rich-text-container-color: rgba(87, 24, 60, 100%);
--rich-text-text-color: rgba(255, 175, 212, 100%);
--rich-text-decorations-color: rgba(128, 58, 95, 100%);
--nested-card-background: color(from #{$ui-highlight-color} srgb r g b / 5%);
--nested-card-text: #{$secondary-text-color};
--nested-card-border: 1px solid
color(from #{$ui-highlight-color} srgb r g b / 15%);
--input-placeholder-color: #{$dark-text-color};
--input-background-color: var(--surface-variant-background-color);
--on-input-color: #{$secondary-text-color};
--clr-text-on-accent-strong: var(--clr-white);
--clr-text-error: var(--clr-red-500);
--clr-text-on-error-strong: var(--clr-white);
--clr-text-warning: var(--clr-yellow-400);
--clr-text-on-warning-strong: var(--clr-white);
--clr-text-success: var(--clr-green-400);
--clr-text-on-success-strong: var(--clr-white);
--clr-text-disabled: var(--clr-grey-400);
--clr-text-on-disabled: var(--clr-grey-400);
/* BACKGROUND TOKENS */
--clr-bg-primary: var(--clr-grey-950);
--clr-bg-secondary-base: var(--clr-indigo-200);
--clr-bg-secondary-strength: 12%;
--clr-bg-secondary: #{css-alpha(
var(--clr-bg-secondary-base),
var(--clr-bg-secondary-strength)
)};
--clr-bg-secondary-solid: #{color-mix(
in srgb,
var(--clr-bg-primary),
var(--clr-bg-secondary-base) var(--clr-bg-secondary-strength)
)};
/* Secondary with doubled mix amount */
--clr-bg-tertiary: #{color-mix(
in oklab,
var(--clr-bg-primary),
var(--clr-bg-secondary-base) calc(2 * var(--clr-bg-secondary-strength))
)};
--clr-bg-ambient: var(--clr-bg-primary);
--clr-bg-elevated: var(--clr-grey-800);
--clr-bg-inverted: var(--clr-grey-950);
--clr-bg-disabled: var(--clr-grey-700);
--clr-bg-accent-subtle-base: var(--clr-indigo-400);
--clr-bg-accent-subtle-strength: 10%;
--clr-bg-accent-subtle: #{css-alpha(
var(--clr-bg-accent-subtle-base),
var(--clr-bg-accent-subtle-strength)
)};
--clr-bg-accent-subtle-highlighted: #{css-alpha(
var(--clr-bg-accent-subtle-base),
calc(var(--clr-bg-accent-subtle-strength) * 1.5)
)};
--clr-bg-accent-strong: var(--clr-indigo-600);
--clr-bg-accent-strong-highlighted: color-mix(
in oklab,
var(--clr-bg-accent-strong),
black var(--clr-bg-accent-subtle-strength)
);
--clr-bg-error-subtle-base: #f41b3b;
--clr-bg-error-subtle-strength: 12%;
--clr-bg-error-subtle: #{css-alpha(
var(--clr-bg-error-subtle-base),
var(--clr-bg-error-subtle-strength)
)};
--clr-bg-error-strong: var(--clr-red-600);
--clr-bg-error-strong-highlighted: color-mix(
in oklab,
var(--clr-bg-error-strong),
black var(--clr-bg-error-subtle-strength)
);
--clr-bg-warning-subtle-base: #ffca1b;
--clr-bg-warning-subtle-strength: 10%;
--clr-bg-warning-subtle: #{css-alpha(
var(--clr-bg-warning-subtle-base),
var(--clr-bg-warning-subtle-strength)
)};
--clr-bg-warning-strong: var(--clr-yellow-600);
--clr-bg-warning-strong-highlighted: color-mix(
in oklab,
var(--clr-bg-warning-strong),
black var(--clr-bg-warning-subtle-strength)
);
--clr-bg-success-subtle-base: #17e865;
--clr-bg-success-subtle-strength: 15%;
--clr-bg-success-subtle: #{css-alpha(
var(--clr-bg-success-subtle-base),
var(--clr-bg-success-subtle-strength)
)};
--clr-bg-success-strong: var(--clr-green-600);
--clr-bg-success-strong-highlighted: color-mix(
in oklab,
var(--clr-bg-success-strong),
black var(--clr-bg-success-subtle-strength)
);
/* BORDER TOKENS */
--clr-border-primary-base: var(--clr-indigo-200);
--clr-border-primary-strength: 18%;
--clr-border-primary: #{css-alpha(
var(--clr-border-primary-base),
var(--clr-border-primary-strength)
)};
--clr-border-strong: var(--clr-grey-200);
--clr-border-media: rgb(252 248 255 / 15%);
--clr-border-on-bg-secondary: #{css-alpha(
var(--clr-border-primary-base),
calc(var(--clr-border-primary-strength) / 1.5)
)};
--clr-border-on-bg-accent-subtle: var(--clr-border-primary);
--clr-border-on-bg-error-subtle: #{css-alpha(var(--clr-text-error), 50%)};
--clr-border-on-bg-warning-subtle: #{css-alpha(var(--clr-text-warning), 50%)};
--clr-border-on-bg-success-subtle: #{css-alpha(var(--clr-text-success), 50%)};
/* LEGACY TOKENS */
--rich-text-container-color: rgb(87 24 60 / 100%);
--rich-text-text-color: rgb(255 175 212 / 100%);
--rich-text-decorations-color: rgb(128 58 95 / 100%);
/* MISCELLANEOUS */
--outline-focus-default: 2px solid var(--clr-text-accent);
--avatar-border-radius: 8px;
--dropdown-shadow:
0 20px 25px -5px rgb(0 0 0 / 80%), 0 8px 10px -6px rgb(0 0 0 / 80%);
--overlay-icon-shadow: drop-shadow(0 0 8px rgb(0 0 0 / 80%));
}
body {

View File

@ -16,9 +16,9 @@
& > div,
& > a {
padding: 20px;
background: var(--background-color);
background: var(--clr-bg-primary);
border-radius: 4px;
border: 1px solid var(--background-border-color);
border: 1px solid var(--clr-border-primary);
box-sizing: border-box;
height: 100%;
}
@ -41,7 +41,7 @@
text-align: center;
font-weight: 500;
font-size: 24px;
color: $primary-text-color;
color: var(--clr-text-primary);
margin-bottom: 20px;
line-height: 30px;
}
@ -52,7 +52,7 @@
&__label {
font-size: 14px;
color: $darker-text-color;
color: var(--clr-text-secondary);
text-align: center;
font-weight: 500;
}
@ -85,8 +85,8 @@
display: flex;
align-items: baseline;
border-radius: 4px;
background: $ui-button-background-color;
color: $primary-text-color;
background: var(--clr-bg-accent-strong);
color: var(--clr-text-on-accent-strong);
transition: all 100ms ease-in;
font-size: 14px;
padding: 8px 16px;
@ -96,18 +96,18 @@
&:active,
&:focus,
&:hover {
background-color: $ui-button-focus-background-color;
background-color: var(--clr-bg-accent-strong-highlighted);
transition: all 200ms ease-out;
}
&.positive {
background: lighten($ui-base-color, 4%);
color: $valid-value-color;
background: var(--clr-bg-success-subtle);
color: var(--clr-text-success);
}
&.negative {
background: lighten($ui-base-color, 4%);
color: $error-value-color;
background: var(--clr-bg-error-subtle);
color: var(--clr-text-error);
}
span {

View File

@ -18,7 +18,7 @@
.emoji-mart-bar {
&:first-child {
background: var(--dropdown-border-color);
background: var(--clr-border-primary);
}
}
@ -39,10 +39,14 @@
cursor: pointer;
background: transparent;
border: 0;
color: $darker-text-color;
color: var(--clr-text-secondary);
&:hover {
color: lighten($darker-text-color, 4%);
color: color-mix(
in oklab,
var(--clr-text-primary),
var(--clr-text-secondary)
);
}
}
@ -101,9 +105,9 @@
font-family: inherit;
display: block;
width: 100%;
background: $ui-base-color;
color: $darker-text-color;
border: 1px solid var(--background-border-color);
background: var(--clr-bg-secondary);
color: var(--clr-text-secondary);
border: 1px solid var(--clr-border-primary);
border-radius: 4px;
&::-moz-focus-inner {
@ -133,7 +137,6 @@
transition: all 100ms linear;
transition-property: opacity;
pointer-events: auto;
opacity: 0.7;
&:disabled {
cursor: default;
@ -141,7 +144,7 @@
}
svg {
fill: $darker-text-color;
fill: currentColor;
}
}
@ -165,7 +168,7 @@
inset-inline-start: 0;
width: 100%;
height: 100%;
background-color: var(--dropdown-border-color);
background-color: var(--clr-border-primary);
border-radius: 100%;
}
}

View File

@ -16,7 +16,7 @@ code {
.form-section {
border-radius: 8px;
background: var(--surface-background-color);
background: var(--clr-bg-tertiary);
padding: 24px;
margin-bottom: 24px;
}
@ -31,11 +31,7 @@ code {
&::after {
content: '';
display: block;
background: linear-gradient(
to bottom,
var(--surface-background-color),
transparent
);
background: linear-gradient(to bottom, var(--clr-bg-tertiary), transparent);
position: absolute;
top: 0;
inset-inline-start: 0;
@ -58,7 +54,7 @@ code {
width: 40px;
height: 40px;
border-radius: 50%;
color: $primary-text-color;
color: var(--clr-text-primary);
&.success {
background: $success-green;
@ -126,7 +122,7 @@ code {
font-family: inherit;
font-size: 14px;
padding-top: 5px;
color: $primary-text-color;
color: var(--clr-text-primary);
display: block;
width: auto;
}
@ -189,7 +185,7 @@ code {
.lead {
font-size: 17px;
line-height: 22px;
color: $secondary-text-color;
color: var(--clr-text-primary);
margin-bottom: 30px;
&.invited-by {
@ -208,7 +204,7 @@ code {
}
.hint {
color: $darker-text-color;
color: var(--clr-text-secondary);
a {
color: $highlight-text-color;
@ -242,7 +238,7 @@ code {
p.hint {
margin-bottom: 15px;
color: $darker-text-color;
color: var(--clr-text-secondary);
&.subtle-hint {
text-align: center;
@ -278,7 +274,7 @@ code {
& > label {
font-family: inherit;
font-size: 14px;
color: $primary-text-color;
color: var(--clr-text-primary);
font-weight: 500;
min-width: 150px;
flex: 0 0 auto;
@ -300,7 +296,7 @@ code {
.label_input > label {
font-family: inherit;
font-size: 14px;
color: $primary-text-color;
color: var(--clr-text-primary);
display: block;
margin-bottom: 8px;
overflow-wrap: break-word;
@ -322,7 +318,7 @@ code {
& > label {
font-family: inherit;
font-size: 14px;
color: $primary-text-color;
color: var(--clr-text-primary);
display: block;
font-weight: 600;
line-height: 20px;
@ -381,7 +377,7 @@ code {
.required abbr {
text-decoration: none;
color: lighten($error-value-color, 12%);
color: var(--clr-text-error);
}
.fields-group {
@ -474,7 +470,7 @@ code {
margin-bottom: 5px;
font-family: inherit;
font-size: 14px;
color: $primary-text-color;
color: var(--clr-text-primary);
display: block;
width: auto;
}
@ -484,7 +480,7 @@ code {
label {
font-family: inherit;
font-size: 14px;
color: $primary-text-color;
color: var(--clr-text-primary);
display: inline-block;
width: auto;
position: relative;
@ -505,7 +501,7 @@ code {
.input.static .label_input__wrapper {
font-size: 14px;
padding: 10px;
border: 1px solid $dark-text-color;
border: 1px solid var(--clr-border-primary);
border-radius: 4px;
}
@ -519,14 +515,14 @@ code {
box-sizing: border-box;
font-size: 14px;
line-height: 20px;
color: $primary-text-color;
color: var(--clr-text-primary);
display: block;
width: 100%;
outline: 0;
font-family: inherit;
resize: vertical;
background: $ui-base-color;
border: 1px solid var(--background-border-color);
background: var(--clr-bg-primary);
border: 1px solid var(--clr-border-primary);
border-radius: 4px;
padding: 10px 16px;
@ -535,7 +531,7 @@ code {
}
&:required:valid {
border-color: $valid-value-color;
border-color: var(--clr-text-success);
}
@media screen and (width <= 600px) {
@ -550,13 +546,13 @@ code {
input[type='datetime-local'] {
&:focus:invalid:not(:placeholder-shown),
&:required:invalid:not(:placeholder-shown) {
border-color: lighten($error-red, 12%);
border-color: var(--clr-text-error);
}
}
.input.field_with_errors {
label {
color: lighten($error-red, 12%);
color: var(--clr-text-error);
}
input[type='text'],
@ -566,13 +562,13 @@ code {
input[type='datetime-local'],
textarea,
select {
border-color: lighten($error-red, 12%);
border-color: var(--clr-text-error);
}
.error {
display: block;
font-weight: 500;
color: lighten($error-red, 12%);
color: var(--clr-text-error);
margin-top: 4px;
}
}
@ -605,8 +601,8 @@ code {
width: 100%;
border: 0;
border-radius: 4px;
background: $ui-button-background-color;
color: $ui-button-color;
background: var(--clr-bg-accent-strong);
color: var(--clr-text-on-accent-strong);
font-size: 15px;
line-height: 22px;
height: auto;
@ -625,21 +621,22 @@ code {
&:active,
&:focus,
&:hover {
background-color: $ui-button-focus-background-color;
background: var(--clr-bg-accent-strong-highlighted);
}
&:disabled,
&:disabled:hover {
background-color: $ui-button-disabled-color;
color: var(--clr-text-on-disabled);
background: var(--clr-bg-disabled);
}
&.negative {
background: $ui-button-destructive-background-color;
background: var(--clr-bg-error-strong);
&:hover,
&:active,
&:focus {
background-color: $ui-button-destructive-focus-background-color;
background: var(--clr-bg-error-strong-highlighted);
}
}
}
@ -648,7 +645,7 @@ code {
appearance: none;
box-sizing: border-box;
font-size: 14px;
color: $primary-text-color;
color: var(--clr-text-primary);
display: block;
width: 100%;
outline: 0;
@ -657,7 +654,7 @@ code {
background: $ui-base-color
url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 14.933 18.467' height='19.698' width='15.929'><path d='M3.467 14.967l-3.393-3.5H14.86l-3.392 3.5c-1.866 1.925-3.666 3.5-4 3.5-.335 0-2.135-1.575-4-3.5zm.266-11.234L7.467 0 11.2 3.733l3.733 3.734H0l3.733-3.734z' fill='#{hex-color(lighten($ui-base-color, 12%))}'/></svg>")
no-repeat right 8px center / auto 14px;
border: 1px solid var(--background-border-color);
border: 1px solid var(--clr-border-primary);
border-radius: 4px;
padding-inline-start: 10px;
padding-inline-end: 30px;
@ -729,30 +726,30 @@ code {
}
.flash-message {
background: var(--background-color);
color: $highlight-text-color;
border: 1px solid $highlight-text-color;
color: var(--clr-text-accent);
background: var(--clr-bg-accent-subtle);
border: 1px solid var(--clr-text-accent);
border-radius: 4px;
padding: 15px 10px;
margin-bottom: 30px;
text-align: center;
&.notice {
border: 1px solid color.change($valid-value-color, $alpha: 0.5);
background: color.change($valid-value-color, $alpha: 0.25);
color: $valid-value-color;
border: 1px solid var(--clr-border-on-bg-accent-subtle);
background: var(--clr-bg-success-subtle);
color: var(--clr-text-success);
}
&.warning {
border: 1px solid color.change($gold-star, $alpha: 0.5);
background: color.change($gold-star, $alpha: 0.25);
color: $gold-star;
border: 1px solid var(--clr-border-on-bg-warning-subtle);
background: var(--clr-bg-warning-subtle);
color: var(--clr-text-warning);
}
&.alert {
border: 1px solid color.change($error-value-color, $alpha: 0.5);
background: color.change($error-value-color, $alpha: 0.1);
color: $error-value-color;
border: 1px solid var(--clr-border-on-bg-error-subtle);
background: var(--clr-bg-error-subtle);
color: var(--clr-text-error);
}
&.hidden {
@ -767,11 +764,11 @@ code {
a {
display: inline-block;
color: $darker-text-color;
color: var(--clr-text-secondary);
text-decoration: none;
&:hover {
color: $primary-text-color;
color: var(--clr-text-primary);
text-decoration: underline;
}
}
@ -802,7 +799,7 @@ code {
padding: 10px;
font-family: $font-monospace, monospace;
background: $ui-base-color;
color: $primary-text-color;
color: var(--clr-text-primary);
font-size: 14px;
margin: 0;
@ -873,7 +870,7 @@ code {
text-align: center;
a {
color: $darker-text-color;
color: var(--clr-text-secondary);
text-decoration: none;
&:hover {
@ -909,7 +906,7 @@ code {
.oauth-prompt,
.follow-prompt {
margin-bottom: 30px;
color: $darker-text-color;
color: var(--clr-text-secondary);
h2 {
font-size: 16px;
@ -918,7 +915,7 @@ code {
}
strong {
color: $secondary-text-color;
color: var(--clr-text-primary);
font-weight: 500;
@each $lang in $cjk-langs {
@ -987,7 +984,7 @@ code {
.qr-alternative {
margin-bottom: 20px;
color: $secondary-text-color;
color: var(--clr-text-primary);
flex: 150px;
samp {
@ -999,8 +996,8 @@ code {
.simple_form {
.warning {
box-sizing: border-box;
background: color.change($error-value-color, $alpha: 0.5);
color: $primary-text-color;
background: var(--clr-bg-error-subtle);
color: var(--clr-text-primary);
text-shadow: 1px 1px 0 color.change($base-shadow-color, $alpha: 0.3);
box-shadow: 0 2px 6px color.change($base-shadow-color, $alpha: 0.4);
border-radius: 4px;
@ -1008,7 +1005,7 @@ code {
margin-bottom: 15px;
a {
color: $primary-text-color;
color: var(--clr-text-primary);
text-decoration: underline;
&:hover,
@ -1051,7 +1048,7 @@ code {
.post-follow-actions {
text-align: center;
color: $darker-text-color;
color: var(--clr-text-secondary);
div {
margin-bottom: 4px;
@ -1064,7 +1061,7 @@ code {
h4 {
font-size: 16px;
color: $primary-text-color;
color: var(--clr-text-primary);
text-align: center;
margin-bottom: 20px;
border: 0;
@ -1127,11 +1124,11 @@ code {
}
&.copied {
border-color: $valid-value-color;
border-color: var(--clr-text-success);
transition: none;
button {
background: $valid-value-color;
background: var(--clr-bg-success-strong);
transition: none;
}
}
@ -1166,7 +1163,7 @@ code {
}
&__type {
color: $darker-text-color;
color: var(--clr-text-secondary);
overflow-wrap: anywhere;
}
}
@ -1175,7 +1172,7 @@ code {
flex: 0 0 auto;
font-size: 18px;
width: 30px;
color: $valid-value-color;
color: var(--clr-text-success);
display: flex;
align-items: center;
}
@ -1268,7 +1265,7 @@ code {
position: absolute;
font-size: 14px;
font-weight: 500;
color: $secondary-text-color;
color: var(--clr-text-primary);
padding-top: 10px;
text-align: center;
width: 100px;
@ -1319,10 +1316,14 @@ code {
&__header-input {
display: block;
border-radius: 8px;
background: var(--surface-variant-background-color);
background: var(--clr-bg-secondary);
position: relative;
cursor: pointer;
&:hover {
background-color: var(--clr-bg-accent-subtle);
}
img {
position: absolute;
width: 100%;
@ -1337,12 +1338,12 @@ code {
inset-inline-start: 50%;
top: 50%;
transform: translate(-50%, -50%);
color: $darker-text-color;
color: var(--clr-text-secondary);
z-index: 3;
}
&.selected .icon {
color: $primary-text-color;
color: var(--clr-text-primary);
transform: none;
inset-inline-start: auto;
inset-inline-end: 8px;
@ -1351,7 +1352,7 @@ code {
}
&.invalid img {
outline: 1px solid $error-value-color;
outline: 1px solid var(--clr-text-error);
outline-offset: -1px;
}
@ -1361,14 +1362,10 @@ code {
width: 100%;
height: 100%;
position: absolute;
background: color.change($error-value-color, $alpha: 0.25);
background: var(--clr-bg-error-subtle);
z-index: 2;
border-radius: 8px;
}
&:hover {
background-color: var(--surface-variant-active-background-color);
}
}
&__avatar-input {
@ -1384,7 +1381,7 @@ code {
display: flex;
align-items: center;
gap: 16px;
color: $darker-text-color;
color: var(--clr-text-secondary);
font-size: 14px;
line-height: 20px;
@ -1401,14 +1398,14 @@ code {
flex: 1 1 auto;
strong {
color: $primary-text-color;
color: var(--clr-text-primary);
font-weight: 600;
}
.hint {
display: block;
font-size: 14px;
color: $darker-text-color;
color: var(--clr-text-secondary);
}
.recommended {
@ -1426,7 +1423,7 @@ code {
&__toggle > div {
display: flex;
border-inline-start: 1px solid var(--background-border-color);
border-inline-start: 1px solid var(--clr-border-primary);
padding-inline-start: 16px;
}
}
@ -1437,19 +1434,19 @@ code {
padding: 8px 0;
align-items: center;
text-decoration: none;
color: $primary-text-color;
color: var(--clr-text-primary);
margin-bottom: 16px;
&__text {
flex: 1 1 auto;
font-size: 14px;
line-height: 20px;
color: $darker-text-color;
color: var(--clr-text-secondary);
strong {
font-weight: 600;
display: block;
color: $primary-text-color;
color: var(--clr-text-primary);
}
.icon {

View File

@ -78,11 +78,11 @@
box-sizing: border-box;
width: 100%;
font-size: 14px;
color: $secondary-text-color;
color: var(--clr-text-primary);
outline: 0;
font-family: inherit;
background: $ui-base-color;
border: 1px solid $darker-text-color;
border: 1px solid var(--clr-text-secondary);
border-radius: 4px;
padding: 8px 12px;
@ -111,7 +111,7 @@
&__input {
display: block;
position: relative;
border: 1px solid $ui-primary-color;
border: 1px solid var(--clr-bg-primary);
box-sizing: border-box;
width: 17px;
height: 17px;
@ -125,13 +125,13 @@
&:active,
&:focus,
&:hover {
border-color: lighten($valid-value-color, 15%);
border-color: var(--clr-text-success);
border-width: 4px;
}
&.active {
background-color: $valid-value-color;
border-color: $valid-value-color;
background-color: var(--clr-bg-success-strong);
border-color: var(--clr-text-success);
}
&::-moz-focus-inner {

View File

@ -1,4 +1,5 @@
@use 'variables' as *;
@use 'theme_utils' as *;
/* http://meyerweb.com/eric/tools/css/reset/
v2.0 | 20110126
@ -57,7 +58,7 @@ table {
@supports not selector(::-webkit-scrollbar) {
html {
scrollbar-color: $action-button-color var(--background-border-color);
scrollbar-color: $action-button-color var(--clr-border-primary);
}
}
@ -69,14 +70,14 @@ table {
::-webkit-scrollbar-thumb {
background-color: $action-button-color;
border: 2px var(--background-border-color);
border: 2px var(--clr-border-primary);
border-radius: 12px;
width: 6px;
box-shadow: inset 0 0 0 2px var(--background-border-color);
box-shadow: inset 0 0 0 2px var(--clr-border-primary);
}
::-webkit-scrollbar-track {
background-color: var(--background-border-color);
background-color: var(--clr-border-primary);
border-radius: 0px;
}

View File

@ -12,9 +12,9 @@
padding: 8px;
line-height: 18px;
vertical-align: top;
border-bottom: 1px solid var(--background-border-color);
border-bottom: 1px solid var(--clr-border-primary);
text-align: start;
background: var(--background-color);
background: var(--clr-bg-primary);
&.critical {
font-weight: 700;
@ -33,7 +33,7 @@
& > tbody > tr:nth-child(odd) > td,
& > tbody > tr:nth-child(odd) > th {
background: var(--background-color);
background: var(--clr-bg-primary);
}
& > tbody > tr:last-child > td,
@ -42,7 +42,7 @@
}
a {
color: $darker-text-color;
color: var(--clr-text-secondary);
text-decoration: none;
&:hover {
@ -84,30 +84,30 @@
& > tbody > tr > td {
padding: 11px 10px;
background: transparent;
border: 1px solid var(--background-border-color);
color: $secondary-text-color;
border: 1px solid var(--clr-border-primary);
color: var(--clr-text-primary);
}
& > tbody > tr > th {
color: $darker-text-color;
color: var(--clr-text-secondary);
font-weight: 600;
}
}
&.batch-table {
& > thead > tr > th {
background: var(--background-color);
border-top: 1px solid var(--background-border-color);
border-bottom: 1px solid var(--background-border-color);
background: var(--clr-bg-primary);
border-top: 1px solid var(--clr-border-primary);
border-bottom: 1px solid var(--clr-border-primary);
&:first-child {
border-radius: 4px 0 0;
border-inline-start: 1px solid var(--background-border-color);
border-inline-start: 1px solid var(--clr-border-primary);
}
&:last-child {
border-radius: 0 4px 0 0;
border-inline-end: 1px solid var(--background-border-color);
border-inline-end: 1px solid var(--clr-border-primary);
}
}
}
@ -138,7 +138,7 @@ a.table-action-link {
display: inline-block;
margin-inline-end: 5px;
padding: 0 10px;
color: $darker-text-color;
color: var(--clr-text-secondary);
font-weight: 500;
white-space: nowrap;
@ -196,8 +196,8 @@ a.table-action-link {
position: sticky;
top: 0;
z-index: 200;
border: 1px solid var(--background-border-color);
background: var(--background-color);
border: 1px solid var(--clr-border-primary);
background: var(--clr-bg-primary);
border-radius: 4px 4px 0 0;
height: 47px;
align-items: center;
@ -213,13 +213,13 @@ a.table-action-link {
}
&__select-all {
background: var(--background-color);
background: var(--clr-bg-primary);
height: 47px;
align-items: center;
justify-content: center;
border: 1px solid var(--background-border-color);
border: 1px solid var(--clr-border-primary);
border-top: 0;
color: $secondary-text-color;
color: var(--clr-text-primary);
display: none;
&.active {
@ -263,9 +263,9 @@ a.table-action-link {
&__form {
padding: 16px;
border: 1px solid var(--background-border-color);
border: 1px solid var(--clr-border-primary);
border-top: 0;
background: var(--background-color);
background: var(--clr-bg-primary);
.fields-row {
padding-top: 0;
@ -274,13 +274,13 @@ a.table-action-link {
}
&__row {
border: 1px solid var(--background-border-color);
border: 1px solid var(--clr-border-primary);
border-top: 0;
background: var(--background-color);
background: var(--clr-bg-primary);
@media screen and (max-width: $no-gap-breakpoint) {
.optional &:first-child {
border-top: 1px solid var(--background-border-color);
border-top: 1px solid var(--clr-border-primary);
}
}
@ -331,7 +331,7 @@ a.table-action-link {
&__extra {
flex: 0 0 auto;
text-align: end;
color: $darker-text-color;
color: var(--clr-text-secondary);
font-weight: 500;
}
}
@ -363,17 +363,17 @@ a.table-action-link {
}
.nothing-here {
border: 1px solid var(--background-border-color);
border: 1px solid var(--clr-border-primary);
border-top: 0;
box-shadow: none;
background: var(--background-color);
background: var(--clr-bg-primary);
@media screen and (max-width: $no-gap-breakpoint) {
border-top: 1px solid var(--background-border-color);
border-top: 1px solid var(--clr-border-primary);
}
&--no-toolbar {
border-top: 1px solid var(--background-border-color);
border-top: 1px solid var(--clr-border-primary);
}
}

View File

@ -1,6 +1,7 @@
@use 'sass:color';
@use 'variables' as *;
@use 'functions' as *;
@use 'theme_utils' as *;
.directory {
&__tag {
@ -12,7 +13,7 @@
display: flex;
align-items: center;
justify-content: space-between;
border: 1px solid var(--background-border-color);
border: 1px solid var(--clr-border-primary);
border-radius: 4px;
padding: 15px;
text-decoration: none;
@ -42,13 +43,13 @@
flex: 1 1 auto;
font-size: 18px;
font-weight: 700;
color: $primary-text-color;
color: var(--clr-text-primary);
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
.fa {
color: $darker-text-color;
color: var(--clr-text-secondary);
}
small {
@ -56,7 +57,7 @@
font-weight: 400;
font-size: 15px;
margin-top: 8px;
color: $darker-text-color;
color: var(--clr-text-secondary);
}
}
@ -65,7 +66,7 @@
.fa,
small,
.trends__item__current {
color: $primary-text-color;
color: var(--clr-text-primary);
}
}
@ -100,7 +101,7 @@
thead th {
text-align: center;
text-transform: uppercase;
color: $darker-text-color;
color: var(--clr-text-secondary);
font-weight: 700;
padding: 10px;
@ -124,11 +125,11 @@
text-align: center;
font-size: 15px;
font-weight: 500;
color: $primary-text-color;
color: var(--clr-text-primary);
small {
display: block;
color: $darker-text-color;
color: var(--clr-text-secondary);
font-weight: 400;
font-size: 14px;
}
@ -137,7 +138,7 @@
tbody td.accounts-table__extra {
width: 120px;
text-align: end;
color: $darker-text-color;
color: var(--clr-text-secondary);
padding-inline-end: 16px;
a {