nfsense/client/src/global-styles/colors.css

121 lines
4.9 KiB
CSS

/* --- YACS --- */
:root {
/* Light/Dark-Agnostic Base Tints, defined as HSL */
--cl-base-0-h: 260;
/* Color 0 Base Hue */
--cl-base-0-s: 20%;
/* Color 0 Base Saturation */
--cl-base-0-l: 100%;
/* Color 0 Base Lightness (Only usefull for darkening really) */
--cl-base-1-h: 260;
/* Same definitions for another tint */
--cl-base-1-s: 50%;
--cl-base-1-l: 100%;
/* --- Linear Scaling with buffer --- */
--lin-0-buf: 5%;
/* Edge-Buffer for lightness spectrum, reduces contrast */
--lin-0-flux: calc(var(--cl-base-0-l) - var(--lin-0-buf) * 2);
/* Variable Lightness Space */
--lin-0-step: calc(var(--lin-0-flux) / 7);
/* Increment per Step, 8 steps - 1 = 7 increments */
/* Actual color steps */
--cl-base-0-1: hsl(var(--cl-base-0-h), var(--cl-base-0-s), calc(var(--lin-0-buf) + var(--lin-0-step) * 0));
--cl-base-0-2: hsl(var(--cl-base-0-h), var(--cl-base-0-s), calc(var(--lin-0-buf) + var(--lin-0-step) * 1));
--cl-base-0-3: hsl(var(--cl-base-0-h), var(--cl-base-0-s), calc(var(--lin-0-buf) + var(--lin-0-step) * 2));
--cl-base-0-4: hsl(var(--cl-base-0-h), var(--cl-base-0-s), calc(var(--lin-0-buf) + var(--lin-0-step) * 3));
--cl-base-0-5: hsl(var(--cl-base-0-h), var(--cl-base-0-s), calc(var(--lin-0-buf) + var(--lin-0-step) * 4));
--cl-base-0-6: hsl(var(--cl-base-0-h), var(--cl-base-0-s), calc(var(--lin-0-buf) + var(--lin-0-step) * 5));
--cl-base-0-7: hsl(var(--cl-base-0-h), var(--cl-base-0-s), calc(var(--lin-0-buf) + var(--lin-0-step) * 6));
--cl-base-0-8: hsl(var(--cl-base-0-h), var(--cl-base-0-s), calc(var(--lin-0-buf) + var(--lin-0-step) * 7));
/* Repeated for another Tint */
--lin-1-buf: 5%;
--lin-1-flux: calc(var(--cl-base-1-l) - var(--lin-1-buf) * 2);
--lin-1-step: calc(var(--lin-1-flux) / 7);
--cl-base-1-1: hsl(var(--cl-base-1-h), var(--cl-base-1-s), calc(var(--lin-1-buf) + var(--lin-1-step) * 0));
--cl-base-1-2: hsl(var(--cl-base-1-h), var(--cl-base-1-s), calc(var(--lin-1-buf) + var(--lin-1-step) * 1));
--cl-base-1-3: hsl(var(--cl-base-1-h), var(--cl-base-1-s), calc(var(--lin-1-buf) + var(--lin-1-step) * 2));
--cl-base-1-4: hsl(var(--cl-base-1-h), var(--cl-base-1-s), calc(var(--lin-1-buf) + var(--lin-1-step) * 3));
--cl-base-1-5: hsl(var(--cl-base-1-h), var(--cl-base-1-s), calc(var(--lin-1-buf) + var(--lin-1-step) * 4));
--cl-base-1-6: hsl(var(--cl-base-1-h), var(--cl-base-1-s), calc(var(--lin-1-buf) + var(--lin-1-step) * 5));
--cl-base-1-7: hsl(var(--cl-base-1-h), var(--cl-base-1-s), calc(var(--lin-1-buf) + var(--lin-1-step) * 6));
--cl-base-1-8: hsl(var(--cl-base-1-h), var(--cl-base-1-s), calc(var(--lin-1-buf) + var(--lin-1-step) * 7));
/* Dark Mode Colors*/
--cl-0-1: var(--cl-base-0-1);
--cl-0-2: var(--cl-base-0-2);
--cl-0-3: var(--cl-base-0-3);
--cl-0-4: var(--cl-base-0-4);
--cl-0-5: var(--cl-base-0-5);
--cl-0-6: var(--cl-base-0-6);
--cl-0-7: var(--cl-base-0-7);
--cl-0-8: var(--cl-base-0-8);
--cl-1-1: var(--cl-base-1-1);
--cl-1-2: var(--cl-base-1-2);
--cl-1-3: var(--cl-base-1-3);
--cl-1-4: var(--cl-base-1-4);
--cl-1-5: var(--cl-base-1-5);
--cl-1-6: var(--cl-base-1-6);
--cl-1-7: var(--cl-base-1-7);
--cl-1-8: var(--cl-base-1-8);
}
@media only screen and (prefers-color-scheme: light) {
/* Light Mode Colors, simply inverts the spectrum */
:root {
--cl-0-1: var(--cl-base-0-8);
--cl-0-2: var(--cl-base-0-7);
--cl-0-3: var(--cl-base-0-6);
--cl-0-4: var(--cl-base-0-5);
--cl-0-5: var(--cl-base-0-4);
--cl-0-6: var(--cl-base-0-3);
--cl-0-7: var(--cl-base-0-2);
--cl-0-8: var(--cl-base-0-1);
--cl-1-1: var(--cl-base-1-8);
--cl-1-2: var(--cl-base-1-7);
--cl-1-3: var(--cl-base-1-6);
--cl-1-4: var(--cl-base-1-5);
--cl-1-5: var(--cl-base-1-4);
--cl-1-6: var(--cl-base-1-3);
--cl-1-7: var(--cl-base-1-2);
--cl-1-8: var(--cl-base-1-1);
}
}
/* --- Color Contexts --- */
/* These Contexts are meant to make it easy to shift all color assignments for differentiated areas, like navigation bars or context menus */
/* Primary Color Context */
:root, .cl-primary {
/* Color assignments, these finally have semantic value and will be used to style components. */
/* More can be added as needed. */
--cl-fg: var(--cl-0-8);
/* Foreground (Text, outlines) */
--cl-bg: var(--cl-0-1);
/* Background */
--cl-bg-hl: var(--cl-1-2);
/* Highlight Background (Component on Hover, select, ...) */
--cl-bg-el: var(--cl-1-3);
/* Element Background (Component) */
/* Set Default Colors */
background-color: var(--cl-bg);
color: var(--cl-fg);
}
/* Secondary Color Context, in this case for the sidebar */
.cl-secondary {
/* You can replace the base-tint on a per-assignment basis, though one tint per context is usual */
--cl-fg: var(--cl-1-8);
--cl-bg: var(--cl-1-2);
/* Just shift up all non-fg colors to create a lower-contrast/importance context */
--cl-bg-hl: var(--cl-1-3);
--cl-bg-el: var(--cl-1-4);
/* Set Default Colors */
background-color: var(--cl-bg);
color: var(--cl-fg);
}