feat:移除了弹窗,服务器添加sls

This commit is contained in:
2026-09-08 22:39:45 +08:00
commit 6a295f9a7a
4082 changed files with 1322534 additions and 0 deletions

View File

@ -0,0 +1,6 @@
button:focus-visible:not(.custom-focus-indicator),
a:focus-visible:not(.custom-focus-indicator),
[tabindex='0']:focus-visible:not(.custom-focus-indicator),
[type='button']:focus-visible:not(.custom-focus-indicator) {
outline: 0.25rem solid var(--color-focus-ring);
}

View File

@ -0,0 +1,211 @@
.ace-modrinth .ace_gutter {
background: var(--surface-2);
color: var(--color-text-tertiary);
}
.ace-modrinth .ace_print-margin {
width: 1px;
background: var(--surface-5);
}
.ace-modrinth {
background-color: var(--surface-3);
color: var(--color-text-default);
}
.ace-modrinth .ace_cursor {
color: var(--color-brand);
}
.ace-modrinth .ace_marker-layer .ace_selection {
background: var(--color-brand-highlight);
}
.ace-modrinth.ace_multiselect .ace_selection.ace_start {
box-shadow: 0 0 3px 0 var(--surface-3);
}
.ace-modrinth .ace_marker-layer .ace_step {
background: var(--color-orange-highlight);
}
.ace-modrinth .ace_marker-layer .ace_bracket {
margin: -1px 0 0 -1px;
border: 1px solid var(--color-brand);
}
.ace-modrinth .ace_marker-layer .ace_active-line {
background: var(--surface-4);
}
.ace-modrinth .ace_gutter-active-line {
background-color: var(--surface-1);
}
.ace-modrinth .ace_marker-layer .ace_selected-word {
border: 1px solid var(--color-brand-highlight);
}
.ace-modrinth .ace_invisible {
color: var(--color-text-tertiary);
opacity: 0.5;
}
.ace-modrinth .ace_fold {
background-color: var(--color-blue);
border-color: var(--color-text-default);
}
/* Comments */
.ace-modrinth .ace_comment {
color: var(--color-gray);
font-style: italic;
}
/* Strings */
.ace-modrinth .ace_string {
color: var(--color-green);
}
.ace-modrinth .ace_string.ace_regexp {
color: var(--color-orange);
}
/* Constants */
.ace-modrinth .ace_constant.ace_numeric {
color: var(--color-purple);
}
.ace-modrinth .ace_constant.ace_language {
color: var(--color-orange);
}
.ace-modrinth .ace_constant.ace_character {
color: var(--color-orange);
}
.ace-modrinth .ace_constant.ace_other {
color: var(--color-purple);
}
/* Keywords */
.ace-modrinth .ace_keyword {
color: var(--color-red);
}
.ace-modrinth .ace_keyword.ace_operator {
color: var(--color-text-default);
}
/* Storage */
.ace-modrinth .ace_storage {
color: var(--color-red);
}
.ace-modrinth .ace_storage.ace_type {
color: var(--color-blue);
}
/* Entity names */
.ace-modrinth .ace_entity.ace_name.ace_function {
color: var(--color-blue);
}
.ace-modrinth .ace_entity.ace_name.ace_class {
color: var(--color-purple);
}
.ace-modrinth .ace_entity.ace_name.ace_tag {
color: var(--color-red);
}
.ace-modrinth .ace_entity.ace_other.ace_attribute-name {
color: var(--color-orange);
}
/* Variables */
.ace-modrinth .ace_variable {
color: var(--color-text-default);
}
.ace-modrinth .ace_variable.ace_parameter {
color: var(--color-text-default);
font-style: italic;
}
.ace-modrinth .ace_variable.ace_language {
color: var(--color-orange);
}
/* Support */
.ace-modrinth .ace_support.ace_function {
color: var(--color-blue);
}
.ace-modrinth .ace_support.ace_class {
color: var(--color-purple);
}
.ace-modrinth .ace_support.ace_type {
color: var(--color-blue);
}
.ace-modrinth .ace_support.ace_constant {
color: var(--color-purple);
}
/* Invalid */
.ace-modrinth .ace_invalid {
color: var(--color-text-primary);
background-color: var(--color-red-bg);
}
.ace-modrinth .ace_invalid.ace_deprecated {
color: var(--color-text-primary);
background-color: var(--color-orange-bg);
}
/* Punctuation */
.ace-modrinth .ace_punctuation {
color: var(--color-text-tertiary);
}
/* Meta */
.ace-modrinth .ace_meta.ace_tag {
color: var(--color-text-default);
}
/* Markup */
.ace-modrinth .ace_markup.ace_heading {
color: var(--color-red);
font-weight: bold;
}
.ace-modrinth .ace_markup.ace_list {
color: var(--color-orange);
}
.ace-modrinth .ace_markup.ace_bold {
font-weight: bold;
}
.ace-modrinth .ace_markup.ace_italic {
font-style: italic;
}
.ace-modrinth .ace_markup.ace_underline {
text-decoration: underline;
}
/* Indent guide */
.ace-modrinth .ace_indent-guide {
background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAACCAYAAACZgbYnAAAAEklEQVQImWNgYGBgYHB3d/8PAAOIAdULw8qMAAAAAElFTkSuQmCC)
right repeat-y;
opacity: 0.2;
}
.ace-modrinth .ace_indent-guide-active {
background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAACCAYAAACZgbYnAAAAEklEQVQImWNgYGBgYHB3d/8PAAOIAdULw8qMAAAAAElFTkSuQmCC)
right repeat-y;
opacity: 0.4;
}

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,131 @@
@import 'reset';
// Use border box on everything to preserve everyone's sanity
* {
box-sizing: border-box;
}
body {
// Defaults
background-color: var(--color-bg);
color: var(--color-base);
--font-standard:
Inter, -apple-system, BlinkMacSystemFont, Segoe UI, Oxygen, Ubuntu, Roboto, Cantarell,
Fira Sans, Droid Sans, Helvetica Neue, sans-serif;
--mono-font: ui-monospace, SFMono-Regular, SF Mono, Menlo, Consolas, Liberation Mono, monospace;
font-family: var(--font-standard);
font-size: 16px;
font-weight: var(--font-weight-regular);
margin: 0;
padding: 0;
// Font Sizes
--font-size-xxs: 0.625rem; //10px
--font-size-xs: 0.75rem; //12px
--font-size-sm: 0.875rem; //14px
--font-size-nm: 1rem; //16px
--font-size-md: 1.125rem; //18px
--font-size-lg: 1.25rem; //20px
--font-size-xl: 1.5rem; //24px
--font-size-2xl: 2rem; //32px
--font-size-3xl: 3rem; //48px
// Font Weights
--font-weight-regular: 400;
--font-weight-medium: 500;
--font-weight-bold: 700;
--font-weight-extrabold: 800;
--font-weight-text: var(--font-weight-medium);
--font-weight-heading: var(--font-weight-extrabold);
--font-weight-title: var(--font-weight-extrabold);
}
a.uncolored {
color: inherit;
}
.cm-content {
white-space: pre-wrap !important;
}
input[type='number'] {
&::-webkit-inner-spin-button,
&::-webkit-outer-spin-button {
-webkit-appearance: none;
margin: 0;
}
}
svg {
height: 1em;
width: 1em;
}
.chart {
svg {
height: 100%;
width: 100%;
}
}
.button-animation {
transition:
opacity 0.5s ease-in-out,
filter 0.2s ease-in-out,
transform 0.05s ease-in-out,
outline 0.2s ease-in-out;
&:active:not(&:disabled) {
transform: scale(0.95);
}
}
input,
button {
&:disabled {
cursor: not-allowed !important;
}
}
@media (prefers-reduced-motion) {
.button-animation,
button {
transform: none !important;
}
}
h1 {
color: var(--color-contrast);
}
h2 {
margin-top: 0;
margin-bottom: 1rem;
color: var(--color-contrast);
}
h3 {
margin-block: var(--gap-md) var(--gap-md);
color: var(--color-contrast);
}
// Scrollbar styles
::-webkit-scrollbar {
width: 0.75rem;
height: 0.75rem;
}
::-webkit-scrollbar-track {
background: transparent;
}
::-webkit-scrollbar-thumb {
background: var(--color-scrollbar);
}
// Firefox scrollbar
* {
scrollbar-width: thin;
scrollbar-color: var(--color-scrollbar) transparent;
}

View File

@ -0,0 +1,89 @@
.hljs,
.hljs-subst {
color: #444;
}
.hljs-comment {
color: #888888;
}
.hljs-keyword,
.hljs-attribute,
.hljs-selector-tag,
.hljs-meta-keyword,
.hljs-doctag,
.hljs-name {
color: #f58300;
font-weight: bold;
}
.hljs-type,
.hljs-string,
.hljs-number,
.hljs-selector-id,
.hljs-selector-class,
.hljs-quote,
.hljs-template-tag,
.hljs-deletion {
color: var(--color-brand);
}
.hljs-title,
.hljs-section {
color: #008888;
font-weight: bold;
}
.hljs-regexp,
.hljs-symbol,
.hljs-variable,
.hljs-template-variable,
.hljs-link,
.hljs-selector-attr,
.hljs-selector-pseudo {
color: #bc6060;
}
.hljs-literal {
color: #78a960;
}
.hljs-built_in,
.hljs-bullet,
.hljs-code,
.hljs-addition {
color: #f58300;
}
.hljs-meta {
color: #1f7199;
}
.hljs-meta-string {
color: #4d99bf;
}
.hljs-emphasis {
font-style: italic;
}
.hljs-strong {
font-weight: bold;
}
pre {
background-color: #222222;
padding: 1em 1em 1em 1em;
border-width: 5px;
border-radius: 2em;
border-color: var(--color-divider);
overflow-x: hidden;
code {
line-height: 100%;
padding: 0.2em;
letter-spacing: -0.05em;
word-break: normal;
font-family: monospace;
}
}

View File

@ -0,0 +1,23 @@
body.i18n-debug [data-i18n-key] {
outline: 1px dashed var(--color-brand);
outline-offset: 2px;
}
body.i18n-debug [data-i18n-key]:hover {
outline: 2px solid var(--color-orange);
background: color-mix(in srgb, var(--color-orange) 5%, transparent);
}
.i18n-key-tooltip {
position: fixed;
z-index: 99999;
background: var(--surface-1);
color: var(--color-base);
font: 10px/1.4 monospace;
padding: 2px 6px;
border-radius: var(--radius-xs);
border: 1px solid var(--color-divider);
white-space: nowrap;
pointer-events: none;
box-shadow: var(--shadow-floating);
}

View File

@ -0,0 +1,45 @@
@font-face {
font-family: inter;
font-style: normal;
font-weight: 400;
font-display: swap;
src:
url('https://cdn-raw.modrinth.com/fonts/inter/Inter-Regular.woff2?v=3.19') format('woff2'),
url('https://cdn-raw.modrinth.com/fonts/inter/Inter-Regular.woff?v=3.19') format('woff');
}
@font-face {
font-family: inter;
font-style: normal;
font-weight: 500;
font-display: swap;
src:
url('https://cdn-raw.modrinth.com/fonts/inter/Inter-Medium.woff2?v=3.19') format('woff2'),
url('https://cdn-raw.modrinth.com/fonts/inter/Inter-Medium.woff?v=3.19') format('woff');
}
@font-face {
font-family: inter;
font-style: normal;
font-weight: 600;
font-display: swap;
src:
url('https://cdn-raw.modrinth.com/fonts/inter/Inter-SemiBold.woff2?v=3.19') format('woff2'),
url('https://cdn-raw.modrinth.com/fonts/inter/Inter-SemiBold.woff?v=3.19') format('woff');
}
@font-face {
font-family: inter;
font-style: normal;
font-weight: 700;
font-display: swap;
src:
url('https://cdn-raw.modrinth.com/fonts/inter/Inter-Bold.woff2?v=3.19') format('woff2'),
url('https://cdn-raw.modrinth.com/fonts/inter/Inter-Bold.woff?v=3.19') format('woff');
}
@font-face {
font-family: inter;
font-style: normal;
font-weight: 800;
font-display: swap;
src:
url('https://cdn-raw.modrinth.com/fonts/inter/Inter-ExtraBold.woff2?v=3.19') format('woff2'),
url('https://cdn-raw.modrinth.com/fonts/inter/Inter-ExtraBold.woff?v=3.19') format('woff');
}

358
packages/assets/styles/normalize.scss vendored Normal file
View File

@ -0,0 +1,358 @@
/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */
/* Document
========================================================================== */
/**
* 1. Correct the line height in all browsers.
* 2. Prevent adjustments of font size after orientation changes in iOS.
*/
html {
line-height: 1.15; /* 1 */
-webkit-text-size-adjust: 100%; /* 2 */
}
/* Sections
========================================================================== */
/**
* Remove the margin in all browsers.
*/
body {
margin: 0;
}
/**
* Render the `main` element consistently in IE.
*/
main {
display: block;
}
/**
* Correct the font size and margin on `h1` elements within `section` and
* `article` contexts in Chrome, Firefox, and Safari.
*/
h1 {
font-size: 2em;
margin: 0.67em 0;
}
/* Grouping content
========================================================================== */
/**
* 1. Add the correct box sizing in Firefox.
* 2. Show the overflow in Edge and IE.
*/
hr {
box-sizing: content-box; /* 1 */
height: 0; /* 1 */
overflow: visible; /* 2 */
}
/**
* 1. Correct the inheritance and scaling of font size in all browsers.
* 2. Correct the odd `em` font sizing in all browsers.
*/
pre {
font-family: monospace, monospace; /* 1 */
font-size: 1em; /* 2 */
}
/* Text-level semantics
========================================================================== */
/**
* Remove the gray background on active links in IE 10.
*/
a {
background-color: transparent;
}
/**
* 1. Remove the bottom border in Chrome 57-
* 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
*/
abbr[title] {
border-bottom: none; /* 1 */
text-decoration: underline; /* 2 */
text-decoration: underline dotted; /* 2 */
}
/**
* Add the correct font weight in Chrome, Edge, and Safari.
*/
b,
strong {
font-weight: bolder;
}
/**
* 1. Correct the inheritance and scaling of font size in all browsers.
* 2. Correct the odd `em` font sizing in all browsers.
*/
code,
kbd,
samp {
font-family: monospace, monospace; /* 1 */
font-size: 1em; /* 2 */
}
/**
* Add the correct font size in all browsers.
*/
small {
font-size: 80%;
}
/**
* Prevent `sub` and `sup` elements from affecting the line height in
* all browsers.
*/
sub,
sup {
font-size: 75%;
line-height: 0;
position: relative;
vertical-align: baseline;
}
sub {
bottom: -0.25em;
}
sup {
top: -0.5em;
}
/* Embedded content
========================================================================== */
/**
* Remove the border on images inside links in IE 10.
*/
img {
border-style: none;
}
/* Forms
========================================================================== */
/**
* 1. Change the font styles in all browsers.
* 2. Remove the margin in Firefox and Safari.
*/
button,
input,
optgroup,
select,
textarea {
font-family: inherit; /* 1 */
font-size: 100%; /* 1 */
line-height: 1.15; /* 1 */
margin: 0; /* 2 */
}
button,
input,
select,
textarea {
touch-action: manipulation;
}
/**
* Show the overflow in IE.
* 1. Show the overflow in Edge.
*/
button,
input {
/* 1 */
overflow: visible;
}
/**
* Remove the inheritance of text transform in Edge, Firefox, and IE.
* 1. Remove the inheritance of text transform in Firefox.
*/
button,
select {
/* 1 */
text-transform: none;
}
/**
* Correct the inability to style clickable types in iOS and Safari.
*/
button,
[type='button'],
[type='reset'],
[type='submit'] {
-webkit-appearance: button;
}
/**
* Remove the inner border and padding in Firefox.
*/
button::-moz-focus-inner,
[type='button']::-moz-focus-inner,
[type='reset']::-moz-focus-inner,
[type='submit']::-moz-focus-inner {
border-style: none;
padding: 0;
}
/**
* Restore the focus styles unset by the previous rule.
*/
button:-moz-focusring,
[type='button']:-moz-focusring,
[type='reset']:-moz-focusring,
[type='submit']:-moz-focusring {
outline: 1px dotted ButtonText;
}
/**
* Correct the padding in Firefox.
*/
fieldset {
padding: 0.35em 0.75em 0.625em;
}
/**
* 1. Correct the text wrapping in Edge and IE.
* 2. Correct the color inheritance from `fieldset` elements in IE.
* 3. Remove the padding so developers are not caught out when they zero out
* `fieldset` elements in all browsers.
*/
legend {
box-sizing: border-box; /* 1 */
color: inherit; /* 2 */
display: table; /* 1 */
max-width: 100%; /* 1 */
padding: 0; /* 3 */
white-space: normal; /* 1 */
}
/**
* Add the correct vertical alignment in Chrome, Firefox, and Opera.
*/
progress {
vertical-align: baseline;
}
/**
* Remove the default vertical scrollbar in IE 10+.
*/
textarea {
overflow: auto;
}
/**
* 1. Add the correct box sizing in IE 10.
* 2. Remove the padding in IE 10.
*/
[type='checkbox'],
[type='radio'] {
box-sizing: border-box; /* 1 */
padding: 0; /* 2 */
}
/**
* Correct the cursor style of increment and decrement buttons in Chrome.
*/
[type='number']::-webkit-inner-spin-button,
[type='number']::-webkit-outer-spin-button {
height: auto;
}
/**
* 1. Correct the odd appearance in Chrome and Safari.
* 2. Correct the outline style in Safari.
*/
[type='search'] {
-webkit-appearance: textfield; /* 1 */
outline-offset: -2px; /* 2 */
}
/**
* Remove the inner padding in Chrome and Safari on macOS.
*/
[type='search']::-webkit-search-decoration {
-webkit-appearance: none;
}
/**
* 1. Correct the inability to style clickable types in iOS and Safari.
* 2. Change font properties to `inherit` in Safari.
*/
::-webkit-file-upload-button {
-webkit-appearance: button; /* 1 */
font: inherit; /* 2 */
}
/* Interactive
========================================================================== */
/*
* Add the correct display in Edge, IE 10+, and Firefox.
*/
details {
display: block;
}
/*
* Add the correct display in all browsers.
*/
summary {
display: list-item;
}
/* Misc
========================================================================== */
/**
* Add the correct display in IE 10+.
*/
template {
display: none;
}
/**
* Add the correct display in IE 10.
*/
[hidden] {
display: none;
}

View File

@ -0,0 +1,11 @@
button,
input[type='button'] {
margin: 0;
padding: 0;
border: 0;
background: transparent;
color: inherit;
font: inherit;
cursor: pointer;
outline: 2px solid transparent;
}

View File

@ -0,0 +1,519 @@
.light-properties {
--surface-1: #ebebeb;
--surface-1-5: #ededed;
--surface-2: #f5f5f5;
--surface-2-5: #eef1f5;
--surface-3: #f8f8f8;
--surface-4: #ffffff;
--surface-5: #dddddd;
--color-red-50: #fef2f2;
--color-red-100: #fee5e7;
--color-red-200: #fccfd3;
--color-red-300: #faa7b1;
--color-red-400: #f67687;
--color-red-500: #ed4661;
--color-red-600: #cb2245;
--color-red-700: #b7193d;
--color-red-800: #9a1739;
--color-red-900: #841738;
--color-red-950: #490819;
--color-red: var(--color-red-600);
--color-orange-50: #fdf8ed;
--color-orange-100: #f9eacc;
--color-orange-200: #f2d495;
--color-orange-300: #ecb85d;
--color-orange-400: #e7a038;
--color-orange-500: #e08325;
--color-orange-600: #c66019;
--color-orange-700: #a44419;
--color-orange-800: #86351a;
--color-orange-900: #6e2d19;
--color-orange-950: #3f1509;
--color-orange: var(--color-orange-500);
--color-green-50: #eefff6;
--color-green-100: #d7ffeb;
--color-green-200: #b2ffd9;
--color-green-300: #76ffbc;
--color-green-400: #33f598;
--color-green-500: #09de78;
--color-green-600: #00af5c;
--color-green-700: #04914f;
--color-green-800: #0a7141;
--color-green-900: #0a5d38;
--color-green-950: #00341d;
--color-green: var(--color-green-600);
--color-blue-50: #f2f7fd;
--color-blue-100: #e4ecfa;
--color-blue-200: #c3d9f4;
--color-blue-300: #8ebaeb;
--color-blue-400: #5196df;
--color-blue-500: #2b79cc;
--color-blue-600: #1f68c0;
--color-blue-700: #184b8c;
--color-blue-800: #184174;
--color-blue-900: #193861;
--color-blue-950: #112340;
--color-blue: var(--color-blue-600);
--color-purple-50: #faf5ff;
--color-purple-100: #f2e7ff;
--color-purple-200: #e7d3ff;
--color-purple-300: #d4b1ff;
--color-purple-400: #ba7eff;
--color-purple-500: #9f4dff;
--color-purple-600: #8e32f3;
--color-purple-700: #761ad6;
--color-purple-800: #651bae;
--color-purple-900: #53178c;
--color-purple-950: #370368;
--color-purple: var(--color-purple-600);
--color-pink-50: #fdf2f8;
--color-pink-100: #fce7f3;
--color-pink-200: #fbcfe8;
--color-pink-300: #f9a8d4;
--color-pink-400: #f472b6;
--color-pink-500: #ec4899;
--color-pink-600: #db2777;
--color-pink-700: #be185d;
--color-pink-800: #9d174d;
--color-pink-900: #831843;
--color-pink-950: #500724;
--color-pink: var(--color-pink-600);
--color-gray-50: #f5f5f6;
--color-gray-100: #e5e5e8;
--color-gray-200: #cecfd3;
--color-gray-300: #adb0b3;
--color-gray-400: #83868d;
--color-gray-500: #686a72;
--color-gray-600: #595b61;
--color-gray-700: #4c4e52;
--color-gray-800: #434447;
--color-gray-900: #3b3b3e;
--color-gray-950: #252627;
--color-gray: var(--color-gray-600);
--color-text-primary: #1a202c;
--color-text-default: #2c2e31;
--color-text-tertiary: #484d54;
// ===
--color-bg: var(--surface-1);
--color-raised-bg: var(--surface-3);
--color-super-raised-bg: var(--surface-4);
--color-button-bg: var(--surface-4);
--color-button-border: rgba(161, 161, 161, 0.35);
--color-scrollbar: #96a2b0;
--color-divider: var(--surface-5);
--color-divider-dark: var(--surface-5);
--color-base: var(--color-text-default);
--color-secondary: var(--color-text-tertiary);
--color-contrast: var(--color-text-primary);
--color-accent-contrast: #ffffff;
--color-red-highlight: rgba(203, 34, 69, 0.25);
--color-orange-highlight: rgba(224, 131, 37, 0.25);
--color-green-highlight: rgba(0, 175, 92, 0.25);
--color-blue-highlight: rgba(31, 104, 192, 0.25);
--color-purple-highlight: rgba(142, 50, 243, 0.25);
--color-pink-highlight: rgba(219, 39, 119, 0.22);
--color-gray-highlight: rgba(89, 91, 97, 0.25);
--color-red-bg: rgba(203, 34, 69, 0.1);
--color-orange-bg: rgba(224, 131, 37, 0.1);
--color-green-bg: rgba(0, 175, 92, 0.1);
--color-blue-bg: rgba(31, 104, 192, 0.1);
--color-purple-bg: rgba(142, 50, 243, 0.1);
--color-pink-bg: rgba(219, 39, 119, 0.1);
--color-brand: var(--color-green);
--color-brand-highlight: var(--color-green-highlight);
--color-brand-shadow: rgba(0, 175, 92, 0.7);
--shadow-inset-lg: inset 0px -2px 2px hsla(221, 39%, 91%, 0.1);
--shadow-inset: inset 0px -2px 2px hsla(221, 39%, 91%, 0.05);
--shadow-inset-sm: inset 0px -1px 2px hsla(221, 39%, 91%, 0.15);
--shadow-raised-lg: 0px 2px 4px hsla(221, 39%, 11%, 0.2);
--shadow-raised:
0.3px 0.5px 0.6px hsl(var(--shadow-color) / 0.15),
1px 2px 2.2px -1.7px hsl(var(--shadow-color) / 0.12),
4.4px 8.8px 9.7px -3.4px hsl(var(--shadow-color) / 0.09);
--shadow-floating:
hsla(0, 0%, 0%, 0) 0px 0px 0px 0px, hsla(0, 0%, 0%, 0) 0px 0px 0px 0px,
hsla(0, 0%, 0%, 0.1) 0px 4px 6px -1px, hsla(0, 0%, 0%, 0.1) 0px 2px 4px -1px;
--shadow-card: rgba(50, 50, 100, 0.1) 0px 2px 4px 0px;
--shadow-card-filter: rgba(50, 50, 100, 0.1) 0px 2px 4px;
--brand-gradient-bg: linear-gradient(
0deg,
rgba(68, 182, 138, 0.175) 0%,
rgba(58, 250, 112, 0.125) 100%
);
--brand-gradient-strong-bg: linear-gradient(
270deg,
rgba(68, 182, 138, 0.175) 0%,
rgba(36, 225, 91, 0.12) 100%
);
--brand-gradient-button: rgba(255, 255, 255, 0.5);
--brand-gradient-border: rgba(32, 64, 32, 0.15);
--color-button-bg-selected: var(--color-brand);
--color-button-text-selected: var(--color-accent-contrast);
--color-gradient-button-bg: linear-gradient(180deg, #f8f9fa 0%, #dce0e6 100%);
--loading-bar-gradient: linear-gradient(to right, var(--color-brand) 0%, #00af5c 100%);
--color-platform-fabric: #8a7b71;
--color-platform-quilt: #8b61b4;
--color-platform-forge: #5b6197;
--color-platform-neoforge: #dc895c;
--color-platform-liteloader: #4c90de;
--color-platform-bukkit: #e78362;
--color-platform-bungeecord: #c69e39;
--color-platform-folia: #6aa54f;
--color-platform-paper: #e67e7e;
--color-platform-purpur: #7763a3;
--color-platform-spigot: #cd7a21;
--color-platform-velocity: #4b98b0;
--color-platform-waterfall: #5f83cb;
--color-platform-sponge: #c49528;
--color-platform-ornithe: #6097ca;
--color-platform-bta-babric: #5ba938;
--color-platform-nilloader: #dd5088;
--hover-brightness: 0.9;
}
html {
@extend .light-properties;
--dark-color-base: #b0bac5;
--dark-color-contrast: #ecf9fb;
--gap-xs: 0.25rem;
--gap-sm: 0.5rem;
--gap-md: 0.75rem;
--gap-lg: 1rem;
--gap-xl: 1.5rem;
--radius-xs: 0.25rem;
--radius-sm: 0.5rem;
--radius-md: 0.75rem;
--radius-lg: 1rem;
--radius-xl: 1.25rem;
--radius-max: 999999999px;
--color-tooltip-text: var(--color-contrast);
--color-tooltip-bg: var(--surface-3);
--color-ad: rgba(125, 75, 162, 0.2);
--color-ad-raised: rgba(190, 140, 243, 0.5);
--color-ad-contrast: black;
--color-ad-highlight: var(--color-purple);
--color-link: var(--color-blue) !important;
--color-link-hover: var(--color-blue) !important; // DEPRECATED, use filters in future
--color-link-active: var(--color-blue) !important; // DEPRECATED, use filters in future
--shadow-button: 0 1px 3px 0 rgba(0, 0, 0, 0.05), 0 1px 2px 0 rgba(0, 0, 0, 0.15);
--color-focus-ring: #ea80ff;
}
.light-mode,
.light {
@extend .light-properties;
}
.dark-mode,
.dark,
:root[data-theme='dark'] {
--surface-1: #16181c;
--surface-1-5: #1a1c20;
--surface-2: #1d1f23;
--surface-2-5: #222429;
--surface-3: #27292e;
--surface-4: #34363c;
--surface-5: #42444a;
--color-red-50: #fff0f1;
--color-red-100: #ffe2e6;
--color-red-200: #ffcad3;
--color-red-300: #ff9fae;
--color-red-400: #ff6984;
--color-red-500: #ff496e;
--color-red-600: #ed1148;
--color-red-700: #c8083d;
--color-red-800: #a8093a;
--color-red-900: #8f0c38;
--color-red-950: #50011a;
--color-red: var(--color-red-500);
--color-orange-50: #fff8ed;
--color-orange-100: #ffefd4;
--color-orange-200: #ffdba8;
--color-orange-300: #ffc171;
--color-orange-400: #ffa347;
--color-orange-500: #fe7e11;
--color-orange-600: #ef6307;
--color-orange-700: #c64808;
--color-orange-800: #9d3a0f;
--color-orange-900: #7e3110;
--color-orange-950: #441606;
--color-orange: var(--color-orange-400);
--color-green-50: #effef5;
--color-green-100: #dafee8;
--color-green-200: #b8fad2;
--color-green-300: #81f4af;
--color-green-400: #42e686;
--color-green-500: #1bd96a;
--color-green-600: #0faa4f;
--color-green-700: #0f8642;
--color-green-800: #126937;
--color-green-900: #11562f;
--color-green-950: #033018;
--color-green: var(--color-green-500);
--color-blue-50: #eef6ff;
--color-blue-100: #daeaff;
--color-blue-200: #bddaff;
--color-blue-300: #90c4ff;
--color-blue-400: #4f9cff;
--color-blue-500: #357ffc;
--color-blue-600: #1f5ff1;
--color-blue-700: #1749de;
--color-blue-800: #193cb4;
--color-blue-900: #1a378e;
--color-blue-950: #152356;
--color-blue: var(--color-blue-400);
--color-purple-50: #faf5ff;
--color-purple-100: #f4e7ff;
--color-purple-200: #ead4ff;
--color-purple-300: #dab2ff;
--color-purple-400: #c78aff;
--color-purple-500: #ac51fb;
--color-purple-600: #972eef;
--color-purple-700: #821ed2;
--color-purple-800: #6e1eab;
--color-purple-900: #5a198a;
--color-purple-950: #3d0566;
--color-purple: var(--color-purple-400);
--color-pink-50: #fdf2f8;
--color-pink-100: #fce7f3;
--color-pink-200: #fbcfe8;
--color-pink-300: #f9a8d4;
--color-pink-400: #f472b6;
--color-pink-500: #ec4899;
--color-pink-600: #db2777;
--color-pink-700: #be185d;
--color-pink-800: #9d174d;
--color-pink-900: #831843;
--color-pink-950: #500724;
--color-pink: var(--color-pink-400);
--color-gray-50: #f5f7f8;
--color-gray-100: #edeff2;
--color-gray-200: #dfe2e6;
--color-gray-300: #cad0d7;
--color-gray-400: #b4bac5;
--color-gray-500: #9fa4b3;
--color-gray-600: #8a8da1;
--color-gray-700: #777b8b;
--color-gray-800: #616472;
--color-gray-900: #52555d;
--color-gray-950: #303136;
--color-gray: var(--color-gray-500);
--color-text-primary: #ffffff;
--color-text-default: #b0bac5;
--color-text-tertiary: #96a2b0;
// ===
--color-bg: var(--surface-1);
--color-raised-bg: var(--surface-3);
--color-super-raised-bg: var(--surface-4);
--color-button-bg: var(--surface-4);
--color-button-border: rgba(193, 190, 209, 0.12);
--color-scrollbar: var(--surface-5);
--color-divider: var(--color-button-bg);
--color-divider-dark: #646c75;
--color-base: var(--color-text-default);
--color-secondary: var(--color-text-tertiary);
--color-contrast: var(--color-text-primary);
--color-accent-contrast: #000000;
--color-red-highlight: rgba(255, 73, 110, 0.25);
--color-orange-highlight: rgba(255, 163, 71, 0.25);
--color-green-highlight: rgba(27, 217, 106, 0.25);
--color-blue-highlight: rgba(79, 156, 255, 0.25);
--color-purple-highlight: rgba(199, 138, 255, 0.25);
--color-pink-highlight: rgba(244, 114, 182, 0.25);
--color-gray-highlight: rgba(159, 164, 179, 0.25);
--color-red-bg: rgba(255, 73, 110, 0.2);
--color-orange-bg: rgba(255, 163, 71, 0.2);
--color-green-bg: rgba(27, 217, 106, 0.2);
--color-blue-bg: rgba(79, 156, 255, 0.2);
--color-purple-bg: rgba(199, 138, 255, 0.2);
--color-pink-bg: rgba(244, 114, 182, 0.2);
--color-brand: var(--color-green);
--color-brand-highlight: rgba(27, 217, 106, 0.25);
--color-brand-shadow: rgba(27, 217, 106, 0.7);
--shadow-inset-lg: inset 0px -2px 2px hsla(221, 39%, 11%, 0.1);
--shadow-inset: inset 0px -2px 2px hsla(221, 39%, 11%, 0.05);
--shadow-inset-sm: inset 0px -1px 1px hsla(221, 39%, 11%, 0.25);
--shadow-raised-lg: 0px 2px 4px hsla(221, 39%, 11%, 0.2);
--shadow-raised: 0px -2px 4px hsla(221, 39%, 11%, 0.1);
--shadow-floating:
hsla(0, 0%, 0%, 0) 0px 0px 0px 0px, hsla(0, 0%, 0%, 0) 0px 0px 0px 0px,
hsla(0, 0%, 0%, 0.1) 0px 4px 6px -1px, rgba(0, 0, 0, 0.06) 0px 2px 4px -1px;
--shadow-card: rgba(0, 0, 0, 0.25) 0px 2px 4px 0px;
--shadow-card-filter: rgba(0, 0, 0, 0.25) 0px 2px 4px;
--brand-gradient-bg: linear-gradient(0deg, rgba(14, 35, 19, 0.2) 0%, rgba(55, 137, 73, 0.1) 100%);
--brand-gradient-strong-bg: linear-gradient(270deg, #09110d 10%, #131f17 100%);
--brand-gradient-button: rgba(255, 255, 255, 0.08);
--brand-gradient-border: rgba(155, 255, 160, 0.08);
--color-button-bg-selected: var(--color-brand-highlight);
--color-button-text-selected: var(--color-brand);
--color-gradient-button-bg: linear-gradient(180deg, #3a3d47 0%, #33363d 100%);
--loading-bar-gradient: linear-gradient(to right, var(--color-brand) 0%, #1ffa9a 100%);
--color-platform-fabric: #dbb69b;
--color-platform-quilt: #c796f9;
--color-platform-forge: #959eef;
--color-platform-neoforge: #f99e6b;
--color-platform-liteloader: #7ab0ee;
--color-platform-bukkit: #f6af7b;
--color-platform-bungeecord: #d2c080;
--color-platform-folia: #a5e388;
--color-platform-paper: #eeaaaa;
--color-platform-purpur: #c3abf7;
--color-platform-spigot: #f1cc84;
--color-platform-velocity: #83d5ef;
--color-platform-waterfall: #78a4fb;
--color-platform-sponge: #f9e580;
--color-platform-ornithe: #87c7ff;
--color-platform-bta-babric: #72cc4a;
--color-platform-nilloader: #f45e9a;
--hover-brightness: 1.25;
}
.oled-mode {
@extend .dark-mode;
--surface-1: #000000;
--surface-1-5: #050506;
--surface-2: #09090a;
--surface-2-5: #0c0d11;
--surface-3: #101013;
--surface-4: #1b1b20;
--surface-5: #25262b;
--color-ad: #0d1828;
--brand-gradient-bg: linear-gradient(
0deg,
rgba(22, 66, 51, 0.15) 0%,
rgba(55, 137, 73, 0.1) 100%
);
--brand-gradient-strong-bg: linear-gradient(
270deg,
rgba(9, 18, 14, 0.6) 10%,
rgba(19, 31, 23, 0.5) 100%
);
--color-gradient-button-bg: linear-gradient(180deg, #1b1b20 0%, #25262b 100%);
}
:is(.accent-pink, .accent-orange, .accent-green, .accent-blue, .accent-purple, .accent-custom) {
--color-focus-ring: var(--color-brand);
--brand-gradient-bg: linear-gradient(
0deg,
color-mix(in srgb, var(--color-brand) 14%, transparent) 0%,
color-mix(in srgb, var(--color-brand) 9%, transparent) 100%
);
--brand-gradient-strong-bg: linear-gradient(
270deg,
color-mix(in srgb, var(--color-brand) 18%, var(--surface-1)) 0%,
color-mix(in srgb, var(--color-brand) 11%, var(--surface-1)) 100%
);
--brand-gradient-border: color-mix(in srgb, var(--color-brand) 16%, transparent);
--loading-bar-gradient: linear-gradient(
to right,
var(--color-brand) 0%,
color-mix(in srgb, var(--color-brand) 68%, white) 100%
);
}
.accent-pink {
--color-brand: var(--color-pink);
--color-brand-highlight: var(--color-pink-highlight);
--color-brand-shadow: color-mix(in srgb, var(--color-pink) 68%, transparent);
}
.accent-orange {
--color-brand: var(--color-orange);
--color-brand-highlight: var(--color-orange-highlight);
--color-brand-shadow: color-mix(in srgb, var(--color-orange) 68%, transparent);
}
.accent-green {
--color-brand: var(--color-green);
--color-brand-highlight: var(--color-green-highlight);
--color-brand-shadow: color-mix(in srgb, var(--color-green) 68%, transparent);
}
.accent-blue {
--color-brand: var(--color-blue);
--color-brand-highlight: var(--color-blue-highlight);
--color-brand-shadow: color-mix(in srgb, var(--color-blue) 68%, transparent);
}
.accent-purple {
--color-brand: var(--color-purple);
--color-brand-highlight: var(--color-purple-highlight);
--color-brand-shadow: color-mix(in srgb, var(--color-purple) 68%, transparent);
}
.accent-custom {
--color-brand: var(--custom-accent-light, var(--color-pink));
--color-brand-highlight: color-mix(in srgb, var(--color-brand) 25%, transparent);
--color-brand-shadow: color-mix(in srgb, var(--color-brand) 68%, transparent);
}
.dark-mode.accent-custom,
.dark.accent-custom,
:root[data-theme='dark'].accent-custom {
--color-brand: var(--custom-accent-dark, var(--color-pink));
}
.retro-mode {
--surface-2-5: #3a3c3e;
--brand-gradient-strong-bg: #3a3b38;
}