+
{userDetails ? userDetails.displayName : t("sign_in")}
diff --git a/src/renderer/src/components/sidebar/sidebar.css.ts b/src/renderer/src/components/sidebar/sidebar.css.ts
deleted file mode 100644
index bfdb4eea..00000000
--- a/src/renderer/src/components/sidebar/sidebar.css.ts
+++ /dev/null
@@ -1,126 +0,0 @@
-import { style } from "@vanilla-extract/css";
-import { recipe } from "@vanilla-extract/recipes";
-
-import { SPACING_UNIT, vars } from "../../theme.css";
-
-export const sidebar = recipe({
- base: {
- backgroundColor: vars.color.darkBackground,
- color: vars.color.muted,
- flexDirection: "column",
- display: "flex",
- transition: "opacity ease 0.2s",
- borderRight: `solid 1px ${vars.color.border}`,
- position: "relative",
- overflow: "hidden",
- },
- variants: {
- resizing: {
- true: {
- opacity: vars.opacity.active,
- pointerEvents: "none",
- },
- },
- darwin: {
- true: {
- paddingTop: `${SPACING_UNIT * 6}px`,
- },
- false: {
- paddingTop: `${SPACING_UNIT}px`,
- },
- },
- },
-});
-
-export const content = style({
- display: "flex",
- flexDirection: "column",
- padding: `${SPACING_UNIT * 2}px`,
- gap: `${SPACING_UNIT * 2}px`,
- width: "100%",
- overflow: "auto",
-});
-
-export const handle = style({
- width: "5px",
- height: "100%",
- cursor: "col-resize",
- position: "absolute",
- right: "0",
-});
-
-export const menu = style({
- listStyle: "none",
- padding: "0",
- margin: "0",
- gap: `${SPACING_UNIT / 2}px`,
- display: "flex",
- flexDirection: "column",
- overflow: "hidden",
-});
-
-export const menuItem = recipe({
- base: {
- transition: "all ease 0.1s",
- cursor: "pointer",
- textWrap: "nowrap",
- display: "flex",
- color: vars.color.muted,
- borderRadius: "4px",
- ":hover": {
- backgroundColor: "rgba(255, 255, 255, 0.15)",
- },
- },
- variants: {
- active: {
- true: {
- backgroundColor: "rgba(255, 255, 255, 0.1)",
- },
- },
- muted: {
- true: {
- opacity: vars.opacity.disabled,
- ":hover": {
- opacity: "1",
- },
- },
- },
- },
-});
-
-export const menuItemButton = style({
- color: "inherit",
- display: "flex",
- alignItems: "center",
- gap: `${SPACING_UNIT}px`,
- cursor: "pointer",
- overflow: "hidden",
- width: "100%",
- padding: `9px ${SPACING_UNIT}px`,
-});
-
-export const menuItemButtonLabel = style({
- textOverflow: "ellipsis",
- overflow: "hidden",
-});
-
-export const gameIcon = style({
- width: "20px",
- height: "20px",
- minWidth: "20px",
- minHeight: "20px",
- borderRadius: "4px",
- backgroundSize: "cover",
-});
-
-export const sectionTitle = style({
- textTransform: "uppercase",
- fontWeight: "bold",
-});
-
-export const section = style({
- gap: `${SPACING_UNIT * 2}px`,
- display: "flex",
- flexDirection: "column",
- paddingBottom: `${SPACING_UNIT}px`,
-});
diff --git a/src/renderer/src/components/sidebar/sidebar.scss b/src/renderer/src/components/sidebar/sidebar.scss
new file mode 100644
index 00000000..b950a820
--- /dev/null
+++ b/src/renderer/src/components/sidebar/sidebar.scss
@@ -0,0 +1,110 @@
+@use "../../scss/globals.scss";
+
+.sidebar {
+ background-color: globals.$dark-background-color;
+ color: globals.$muted-color;
+ flex-direction: column;
+ display: flex;
+ transition: opacity ease 0.2s;
+ border-right: solid 1px globals.$border-color;
+ position: relative;
+ overflow: hidden;
+ padding-top: globals.$spacing-unit;
+
+ &--resizing {
+ opacity: globals.$active-opacity;
+ pointer-events: none;
+ }
+
+ &--darwin {
+ padding-top: calc(globals.$spacing-unit * 6);
+ }
+
+ &__content {
+ display: flex;
+ flex-direction: column;
+ padding: calc(globals.$spacing-unit * 2);
+ gap: calc(globals.$spacing-unit * 2);
+ width: 100%;
+ overflow: auto;
+ }
+
+ &__handle {
+ width: 5px;
+ height: 100%;
+ cursor: col-resize;
+ position: absolute;
+ right: 0;
+ }
+
+ &__menu {
+ list-style: none;
+ padding: 0;
+ margin: 0;
+ gap: calc(globals.$spacing-unit / 2);
+ display: flex;
+ flex-direction: column;
+ overflow: hidden;
+ }
+
+ &__menu-item {
+ transition: all ease 0.1s;
+ cursor: pointer;
+ text-wrap: nowrap;
+ display: flex;
+ color: globals.$muted-color;
+ border-radius: 4px;
+ &:hover {
+ background-color: rgba(255, 255, 255, 0.15);
+ }
+
+ &--active {
+ background-color: rgba(255, 255, 255, 0.1);
+ }
+
+ &--muted {
+ opacity: globals.$disabled-opacity;
+
+ &:hover {
+ opacity: 1;
+ }
+ }
+ }
+
+ &__menu-item-button {
+ color: inherit;
+ display: flex;
+ align-items: center;
+ gap: globals.$spacing-unit;
+ cursor: pointer;
+ overflow: hidden;
+ width: 100%;
+ padding: 9px globals.$spacing-unit;
+ }
+
+ &__menu-item-button-label {
+ text-overflow: ellipsis;
+ overflow: hidden;
+ }
+
+ &__game-icon {
+ width: 20px;
+ height: 20px;
+ min-width: 20px;
+ min-height: 20px;
+ border-radius: 4px;
+ background-size: cover;
+ }
+
+ &__section-title {
+ text-transform: uppercase;
+ font-weight: bold;
+ }
+
+ &__section {
+ gap: calc(globals.$spacing-unit * 2);
+ display: flex;
+ flex-direction: column;
+ padding-bottom: globals.$spacing-unit;
+ }
+}
diff --git a/src/renderer/src/components/sidebar/sidebar.tsx b/src/renderer/src/components/sidebar/sidebar.tsx
index 3159ecac..9c27c893 100644
--- a/src/renderer/src/components/sidebar/sidebar.tsx
+++ b/src/renderer/src/components/sidebar/sidebar.tsx
@@ -9,12 +9,14 @@ import { useDownload, useLibrary, useToast } from "@renderer/hooks";
import { routes } from "./routes";
-import * as styles from "./sidebar.css";
+import "./sidebar.scss";
+
import { buildGameDetailsPath } from "@renderer/helpers";
import SteamLogo from "@renderer/assets/steam-logo.svg?react";
import { SidebarProfile } from "./sidebar-profile";
import { sortBy } from "lodash-es";
+import cn from "classnames";
const SIDEBAR_MIN_WIDTH = 200;
const SIDEBAR_INITIAL_WIDTH = 250;
@@ -156,9 +158,9 @@ export function Sidebar() {
return (