jobs/src/assets/scss/main.scss

134 lines
3.1 KiB
SCSS
Raw Normal View History

2025-03-30 11:52:59 +00:00
@import './variables.scss';
// Reset and base styles
:root {
2025-04-02 08:17:31 +00:00
// Global transition for theme switching
--theme-transition-duration: 0.3s;
--theme-transition-timing: ease;
2025-03-30 11:52:59 +00:00
font-family: $font-family;
line-height: $line-height;
font-weight: $font-weight-normal;
font-synthesis: none;
text-rendering: optimizeLegibility;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
}
// Default dark theme
:root, .dark-mode {
color-scheme: dark;
color: $text-color-dark;
background-color: $bg-color-dark;
// CSS variables for theming
--primary-color: #{$primary-color};
--primary-hover-color: #{$primary-hover-color};
--text-color: #{$text-color-dark};
2025-04-02 08:17:31 +00:00
--text-color-secondary: #bbb;
--text-color-tertiary: #999;
2025-03-30 11:52:59 +00:00
--bg-color: #{$bg-color-dark};
--sidebar-bg: #1e1e1e;
--sidebar-border: #333;
--card-bg: #2a2a2a;
2025-04-02 08:17:31 +00:00
--card-bg-secondary: #222;
2025-03-30 11:52:59 +00:00
--card-border: #444;
2025-04-02 08:17:31 +00:00
--primary-color-light: rgba(52, 152, 219, 0.2);
2025-03-30 11:52:59 +00:00
}
a {
font-weight: $font-weight-medium;
color: $primary-color;
text-decoration: inherit;
&:hover {
color: $primary-hover-color;
}
}
body {
margin: 0;
min-width: 320px;
min-height: 100vh;
2025-04-02 08:17:31 +00:00
transition: background-color var(--theme-transition-duration) var(--theme-transition-timing),
color var(--theme-transition-duration) var(--theme-transition-timing);
2025-03-30 11:52:59 +00:00
}
h1 {
font-size: 2.5em;
line-height: 1.1;
}
button {
border-radius: 8px;
border: 1px solid transparent;
padding: 0.6em 1.2em;
font-size: 1em;
font-weight: $font-weight-medium;
font-family: inherit;
background-color: $button-bg-dark;
cursor: pointer;
transition: border-color 0.25s;
&:hover {
border-color: $primary-color;
}
}
#app {
max-width: $max-content-width;
margin: 0 auto;
padding: 1rem;
}
// Light mode theme
.light-mode {
color-scheme: light;
color: $text-color-light;
background-color: $bg-color-light;
// Update CSS variables for light mode
--primary-color: #{$primary-color};
--primary-hover-color: #{$primary-hover-color};
--text-color: #{$text-color-light};
2025-04-02 08:17:31 +00:00
--text-color-secondary: #555;
--text-color-tertiary: #777;
2025-03-30 11:52:59 +00:00
--bg-color: #{$bg-color-light};
--sidebar-bg: #fff;
--sidebar-border: #eee;
--card-bg: #fff;
2025-04-02 08:17:31 +00:00
--card-bg-secondary: #f9f9f9;
2025-03-30 11:52:59 +00:00
--card-border: #ddd;
2025-04-02 08:17:31 +00:00
--primary-color-light: rgba(52, 152, 219, 0.1);
2025-03-30 11:52:59 +00:00
button {
background-color: $button-bg-light;
}
}
// System preference override
@media (prefers-color-scheme: light) {
:root:not(.dark-mode):not(.light-mode) {
color: $text-color-light;
background-color: $bg-color-light;
// Update CSS variables for light mode
--primary-color: #{$primary-color};
--primary-hover-color: #{$primary-hover-color};
--text-color: #{$text-color-light};
2025-04-02 08:17:31 +00:00
--text-color-secondary: #555;
--text-color-tertiary: #777;
2025-03-30 11:52:59 +00:00
--bg-color: #{$bg-color-light};
--sidebar-bg: #fff;
--sidebar-border: #eee;
--card-bg: #fff;
2025-04-02 08:17:31 +00:00
--card-bg-secondary: #f9f9f9;
2025-03-30 11:52:59 +00:00
--card-border: #ddd;
2025-04-02 08:17:31 +00:00
--primary-color-light: rgba(52, 152, 219, 0.1);
2025-03-30 11:52:59 +00:00
}
:root:not(.dark-mode):not(.light-mode) button {
background-color: $button-bg-light;
}
}