*, *::before, *::after {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}

:root {
  --accent:        #0078d4;
  --accent-hover:  #106ebe;
  --accent-press:  #005a9e;
  --accent-subtle: rgba(0, 120, 212, 0.12);

  --bg-desktop:    #1a1a2e;
  --bg-app:        #202020;
  --bg-nav:        #1c1c1c;
  --bg-card:       rgba(255, 255, 255, 0.04);
  --bg-hover:      rgba(255, 255, 255, 0.06);
  --bg-active:     rgba(255, 255, 255, 0.08);

  --border:        rgba(255, 255, 255, 0.08);
  --border-strong: rgba(255, 255, 255, 0.14);

  --text-1:        rgba(255, 255, 255, 0.95);
  --text-2:        rgba(255, 255, 255, 0.65);
  --text-3:        rgba(255, 255, 255, 0.40);

  --radius:        8px;
  --radius-sm:     4px;
  --radius-pill:   999px;

  --titlebar-h:    32px;
  --taskbar-h:     48px;
  --nav-w:         260px;

  --shadow-window: 0 8px 40px rgba(0, 0, 0, 0.55);
  --blur:          blur(40px);

  --desktop-wallpaper: url("../start_bg.jpg?v=53");
}

html {
  font-size: 16px;
  -webkit-font-smoothing: antialiased;
  width: 100%;
  height: 100%;
  background-color: var(--bg-desktop);
  background-image: var(--desktop-wallpaper);
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  background-attachment: fixed;
}

html:fullscreen,
html:-webkit-full-screen {
  width: 100%;
  height: 100%;
}

body:fullscreen,
body:-webkit-full-screen {
  width: 100%;
  height: 100%;
}

body {
  height: 100dvh;
  width: 100vw;
  overflow: hidden;
  font-family: "Segoe UI Variable", "Segoe UI", system-ui, sans-serif;
  color: var(--text-1);
  background: transparent;
}

button {
  font-family: inherit;
  cursor: pointer;
}

svg {
  display: block;
  flex-shrink: 0;
}

.hidden { display: none !important; }
