2025-12-19 20:22:46 +01:00

143 lines
3.0 KiB
CSS

:root {
--primary-bg-rgb: 35 40 61;
--secondary-bg-rgb: 30 34 51;
--secondary-alt-bg-rgb: 25 31 46;
--tertiary-bg-rgb: 16 19 32;
--accent-color-rgb: 9 109 192;
--secondary-accent-rgb: 10 79 140;
--border-color-rgb: 42 48 69;
--text-color: #ffffff;
--text-muted: #a0a0a0;
--primary-bg: rgb(var(--primary-bg-rgb));
--secondary-bg: rgb(var(--secondary-bg-rgb));
--secondary-alt-bg: rgb(var(--tertiary-bg-rgb));
--tertiary-bg: rgb(var(--border-color-rgb));
--border-color: rgb(var(--text-color-rgb));
font-family: "Inter", system-ui, Avenir, Helvetica, Arial, sans-serif;
line-height: 1.6;
font-weight: 400;
color-scheme: dark;
color: var(--text-color);
background-color: var(--primary-bg);
font-synthesis: none;
text-rendering: optimizeLegibility;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
}
body {
margin: 0;
display: flex;
place-items: center;
min-width: 320px;
min-height: 100vh;
background-color: var(--primary-bg);
}
h1,
h2,
h3,
h4,
h5,
h6 {
color: var(--text-color);
margin-top: 0;
}
a {
font-weight: 500;
color: var(--accent-color);
text-decoration: inherit;
transition: color 0.2s;
}
a:hover {
color: #4da3ff;
}
button {
border-radius: 8px;
border: 1px solid transparent;
padding: 0.6em 1.2em;
font-size: 1em;
font-weight: 500;
font-family: inherit;
background-color: var(--secondary-bg);
color: white;
cursor: pointer;
transition: background-color 0.25s, transform 0.1s;
}
button:hover {
background-color: var(--tertiary-bg);
}
button:active {
transform: scale(0.98);
}
button:focus,
button:focus-visible {
outline: 4px auto -webkit-focus-ring-color;
}
input,
select {
background-color: var(--secondary-alt-bg);
border: 1px solid var(--border-color);
color: var(--text-color);
padding: 0.6em;
border-radius: 6px;
font-size: 1em;
font-family: inherit;
transition: all 0.2s ease;
}
input:focus,
select:focus {
outline: none;
border-color: var(--accent-color);
box-shadow: 0 0 0 2px rgb(9, 109, 192, 0.2);
}
* {
transition: background-color 0.3s ease, border-color 0.3s ease,
color 0.3s ease, box-shadow 0.3s ease;
}
ul {
list-style: none;
padding: 0;
}
.shader-theme {
--primary-bg: transparent; /* Let the shader show through */
--secondary-bg: rgb(var(--secondary-bg-rgb) / 0.7); /* Translucent cards */
--secondary-alt-bg: rgb(
var(--secondary-alt-bg-rgb) / 0.6
); /* Translucent inputs */
--tertiary-bg: rgb(var(--tertiary-bg-rgb) / 0.8);
--border-color: rgb(var(--border-color-rgb) / 0.15);
}
.black-theme {
--primary-bg: transparent; /* Let the shader show through */
--secondary-bg: rgb(0, 0, 0, 0.7); /* Translucent cards */
--secondary-alt-bg: rgb(20, 20, 20, 0.6); /* Translucent inputs */
--tertiary-bg: rgb(40, 40, 40, 0.8);
--border-color: rgb(255, 255, 255, 0.15);
--text-color: #ffffff;
--accent-color: #121212;
--secondary-accent: #212121;
}
.sakura-theme {
--border-color: #DCABDF;
--text-color: #CFB3CD;
--accent-color: #F48FB1;
--secondary-accent: #880E4F;
}