mirror of
https://codeberg.org/forgejo/forgejo.git
synced 2024-12-23 20:17:03 +01:00
ee21d5453f
This should eliminate all non-variable color usage in the styles, making gitea fully themeable via CSS variables. Also, it adds a linter to enforce variables for colors.
197 lines
6.6 KiB
Text
197 lines
6.6 KiB
Text
@import "../chroma/dark.less";
|
|
@import "../codemirror/dark.less";
|
|
|
|
:root {
|
|
--is-dark-theme: true;
|
|
--color-primary: #87ab63;
|
|
--color-primary-contrast: #ffffff;
|
|
--color-primary-dark-1: #93b373;
|
|
--color-primary-dark-2: #9fbc82;
|
|
--color-primary-dark-3: #abc492;
|
|
--color-primary-dark-4: #b7cda1;
|
|
--color-primary-dark-5: #cfddc1;
|
|
--color-primary-dark-6: #e7eee0;
|
|
--color-primary-dark-7: #f8faf6;
|
|
--color-primary-light-1: #7a9e55;
|
|
--color-primary-light-2: #6c8c4c;
|
|
--color-primary-light-3: #5f7b42;
|
|
--color-primary-light-4: #516939;
|
|
--color-primary-light-5: #364626;
|
|
--color-primary-light-6: #1b2313;
|
|
--color-primary-light-7: #080b06;
|
|
--color-primary-alpha-10: #87ab6319;
|
|
--color-primary-alpha-20: #87ab6333;
|
|
--color-primary-alpha-30: #87ab634b;
|
|
--color-primary-alpha-40: #87ab6366;
|
|
--color-primary-alpha-50: #87ab6380;
|
|
--color-primary-alpha-60: #87ab6399;
|
|
--color-primary-alpha-70: #87ab63b3;
|
|
--color-primary-alpha-80: #87ab63cc;
|
|
--color-primary-alpha-90: #87ab63e1;
|
|
--color-secondary: #454a57;
|
|
--color-secondary-dark-1: #505665;
|
|
--color-secondary-dark-2: #5b6273;
|
|
--color-secondary-dark-3: #71798e;
|
|
--color-secondary-dark-4: #7f8699;
|
|
--color-secondary-dark-5: #8c93a4;
|
|
--color-secondary-dark-6: #9aa0af;
|
|
--color-secondary-dark-7: #a8adba;
|
|
--color-secondary-dark-8: #b6bac5;
|
|
--color-secondary-dark-9: #c4c7d0;
|
|
--color-secondary-dark-10: #d2d4db;
|
|
--color-secondary-dark-11: #dfe1e6;
|
|
--color-secondary-dark-12: #edeef1;
|
|
--color-secondary-dark-13: #fbfbfc;
|
|
--color-secondary-light-1: #373b46;
|
|
--color-secondary-light-2: #292c34;
|
|
--color-secondary-light-3: #1c1e23;
|
|
--color-secondary-light-4: #0e0f11;
|
|
--color-secondary-alpha-10: #454a5719;
|
|
--color-secondary-alpha-20: #454a5733;
|
|
--color-secondary-alpha-30: #454a574b;
|
|
--color-secondary-alpha-40: #454a5766;
|
|
--color-secondary-alpha-50: #454a5780;
|
|
--color-secondary-alpha-60: #454a5799;
|
|
--color-secondary-alpha-70: #454a57b3;
|
|
--color-secondary-alpha-80: #454a57cc;
|
|
--color-secondary-alpha-90: #454a57e1;
|
|
/* colors */
|
|
--color-red: #cc4848;
|
|
--color-orange: #cc580c;
|
|
--color-yellow: #cc9903;
|
|
--color-olive: #91a313;
|
|
--color-green: #87ab63;
|
|
--color-teal: #00918a;
|
|
--color-blue: #3a8ac6;
|
|
--color-violet: #906ae1;
|
|
--color-purple: #b259d0;
|
|
--color-pink: #d22e8b;
|
|
--color-brown: #a47252;
|
|
--color-grey: #9ea2aa;
|
|
--color-black: #1e222e;
|
|
/* light variants - produced via Sass scale-color(color, $lightness: -10%) */
|
|
--color-red-light: #c23636;
|
|
--color-orange-light: #b84f0b;
|
|
--color-yellow-light: #b88a03;
|
|
--color-olive-light: #839311;
|
|
--color-green-light: #7a9e55;
|
|
--color-teal-light: #00837c;
|
|
--color-blue-light: #347cb3;
|
|
--color-violet-light: #7b4edb;
|
|
--color-purple-light: #a742c9;
|
|
--color-pink-light: #be297d;
|
|
--color-brown-light: #94674a;
|
|
--color-grey-light: #8d919b;
|
|
--color-black-light: #1b1f29;
|
|
/* other colors */
|
|
--color-gold: #b1983b;
|
|
--color-white: #ffffff;
|
|
--color-diff-removed-word-bg: #6f3333;
|
|
--color-diff-added-word-bg: #3c653c;
|
|
--color-diff-removed-row-bg: #3c2626;
|
|
--color-diff-moved-row-bg: #818044;
|
|
--color-diff-added-row-bg: #283e2d;
|
|
--color-diff-removed-row-border: #634343;
|
|
--color-diff-moved-row-border: #bcca6f;
|
|
--color-diff-added-row-border: #314a37;
|
|
--color-diff-inactive: #353846;
|
|
--color-error-border: #a04141;
|
|
--color-error-bg: #522;
|
|
--color-error-text: #f9cbcb;
|
|
--color-success-border: #458a57;
|
|
--color-success-bg: #284034;
|
|
--color-success-text: #6cc664;
|
|
--color-warning-border: #bb9d00;
|
|
--color-warning-bg: #3a3a30;
|
|
--color-warning-text: #fbbd08;
|
|
--color-info-border: #306090;
|
|
--color-info-bg: #26354c;
|
|
--color-info-text: #38a8e8;
|
|
--color-red-badge: #db2828;
|
|
--color-red-badge-bg: #db28281a;
|
|
--color-red-badge-hover-bg: #db28284d;
|
|
--color-green-badge: #21ba45;
|
|
--color-green-badge-bg: #21ba451a;
|
|
--color-green-badge-hover-bg: #21ba454d;
|
|
--color-yellow-badge: #fbbd08;
|
|
--color-yellow-badge-bg: #fbbd081a;
|
|
--color-yellow-badge-hover-bg: #fbbd084d;
|
|
--color-orange-badge: #f2711c;
|
|
--color-orange-badge-bg: #f2711c1a;
|
|
--color-orange-badge-hover-bg: #f2711c4d;
|
|
--color-git: #f05133;
|
|
/* target-based colors */
|
|
--color-body: #383c4a;
|
|
--color-box-header: #404652;
|
|
--color-box-body: #2a2e3a;
|
|
--color-box-body-highlight: #353945;
|
|
--color-text-dark: #dbe0ea;
|
|
--color-text: #bbc0ca;
|
|
--color-text-light: #a6aab5;
|
|
--color-text-light-1: #979ba6;
|
|
--color-text-light-2: #8a8e99;
|
|
--color-text-light-3: #707687;
|
|
--color-footer: #2e323e;
|
|
--color-timeline: #4c525e;
|
|
--color-input-text: #d5dbe6;
|
|
--color-input-background: #232933;
|
|
--color-input-toggle-background: #454a57;
|
|
--color-input-border: #454a57;
|
|
--color-input-border-hover: #505667;
|
|
--color-navbar: #2a2e3a;
|
|
--color-navbar-transparent: #2a2e3a00;
|
|
--color-light: #00000028;
|
|
--color-light-mimic-enabled: rgba(0, 0, 0, calc(40 / 255 * 222 / 255 / var(--opacity-disabled)));
|
|
--color-light-border: #ffffff28;
|
|
--color-hover: #ffffff10;
|
|
--color-active: #ffffff16;
|
|
--color-menu: #2e323e;
|
|
--color-card: #2e323e;
|
|
--color-markup-table-row: #ffffff06;
|
|
--color-markup-code-block: #ffffff0d;
|
|
--color-button: #353846;
|
|
--color-code-bg: #2a2e3a;
|
|
--color-code-sidebar-bg: #2e323e;
|
|
--color-shadow: #00000060;
|
|
--color-secondary-bg: #2a2e3a;
|
|
--color-text-focus: #fff;
|
|
--color-expand-button: #3c404d;
|
|
--color-placeholder-text: #6a737d;
|
|
--color-editor-line-highlight: var(--color-primary-light-5);
|
|
--color-project-board-bg: var(--color-secondary-light-2);
|
|
--color-caret: var(--color-text); /* should ideally be --color-text-dark, see #15651 */
|
|
--color-reaction-bg: #ffffff12;
|
|
--color-reaction-active-bg: var(--color-primary-alpha-40);
|
|
--color-header-bar: #2e323e;
|
|
--color-label-active-bg: #4c525e;
|
|
--color-accent: var(--color-primary-light-1);
|
|
--color-small-accent: var(--color-primary-light-5);
|
|
--color-active-line: #534d1b;
|
|
|
|
accent-color: var(--color-accent);
|
|
color-scheme: dark;
|
|
}
|
|
|
|
/* invert emojis that are hard to read otherwise */
|
|
.emoji[aria-label="check mark"],
|
|
.emoji[aria-label="currency exchange"],
|
|
.emoji[aria-label="TOP arrow"],
|
|
.emoji[aria-label="END arrow"],
|
|
.emoji[aria-label="ON! arrow"],
|
|
.emoji[aria-label="SOON arrow"],
|
|
.emoji[aria-label="heavy dollar sign"],
|
|
.emoji[aria-label="copyright"],
|
|
.emoji[aria-label="registered"],
|
|
.emoji[aria-label="trade mark"],
|
|
.emoji[aria-label="multiply"],
|
|
.emoji[aria-label="plus"],
|
|
.emoji[aria-label="minus"],
|
|
.emoji[aria-label="divide"],
|
|
.emoji[aria-label="curly loop"],
|
|
.emoji[aria-label="double curly loop"],
|
|
.emoji[aria-label="wavy dash"],
|
|
.emoji[aria-label="paw prints"],
|
|
.emoji[aria-label="musical note"],
|
|
.emoji[aria-label="musical notes"] {
|
|
filter: invert(100%) hue-rotate(180deg);
|
|
}
|