:root {
  --bg: #0f0f12;
  --bg2: #161619;
  --bg3: #1c1c21;
  --bg4: #222228;
  --surface: #26262d;

  --border: rgba(255, 255, 255, 0.07);
  --border2: rgba(255, 255, 255, 0.12);

  --accent: #3bb4ff;
  --accent-rgb: 59, 180, 255;
  --accent-glow: rgba(59, 180, 255, 0.35);

  --red: #3bb4ff;
  --red-rgb: 59, 180, 255;
  --red-bright: #5ec8f7;
  --red-muted: rgba(59, 180, 255, 0.14);
  --red-glow: rgba(59, 180, 255, 0.24);

  --text: #e5e5e9;
  --text1: #ffffff;
  --text2: #cbcbd2;
  --text3: #9ea0a8;

  --red-text: #bfe8ff;
  --ok: #7be2a8;
  --silver: #a0aab8;
  --bronze: #cd7f32;

  --glass: rgba(255, 255, 255, 0.03);
  --glass-border: rgba(255, 255, 255, 0.08);

  --anim-fast: 0.2s cubic-bezier(0.4, 0, 0.2, 1);
  --anim-mid: 0.4s cubic-bezier(0.4, 0, 1);
  --anim-slow: 0.6s cubic-bezier(0.2, 0.8, 0.4, 1);

  --ht1: #f0a500;
  --ht2: #d4850f;
  --ht3: #b86c1a;
  --ht4: #9a5520;
  --ht5: #7d4426;
  --lt1: #4fc3f7;
  --lt2: #29b6f6;
  --lt3: #0288d1;
  --lt4: #7986cb;
  --lt5: #5a60a0;
  --retired: #8e8e93;
}

*,
*::before,
*::after {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}

html,
body {
  min-height: 100%;
}

body {
  font-family: 'Inter', sans-serif;
  background: var(--bg);
  color: var(--text);
  display: flex;
  flex-direction: column;
  min-height: 100vh;
  line-height: 1.5;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  color: var(--text1);
}

.page-intro {
  position: fixed;
  inset: 0;
  z-index: 50;
  pointer-events: none;
  opacity: 0;
  background:
    radial-gradient(circle at 18% 18%, rgba(79, 195, 247, 0.28), transparent 45%),
    radial-gradient(circle at 78% 12%, rgba(59, 180, 255, 0.22), transparent 40%),
    radial-gradient(circle at 50% 80%, rgba(255, 255, 255, 0.08), transparent 55%),
    linear-gradient(120deg, rgba(255, 255, 255, 0.08), rgba(0, 0, 0, 0.75));
  animation: pageIntro 1.6s ease-out 0.08s forwards;
}

.page-intro::after {
  content: "";
  position: absolute;
  inset: -10%;
  background:
    repeating-linear-gradient(135deg, rgba(255, 255, 255, 0.04) 0 2px, transparent 2px 10px);
  opacity: 0.18;
  mix-blend-mode: screen;
}

@keyframes pageIntro {
  0% {
    opacity: 0;
    transform: scale(1.03);
  }

  18% {
    opacity: 1;
  }

  100% {
    opacity: 0;
    transform: scale(1);
  }
}

::-webkit-scrollbar {
  width: 6px;
  height: 6px;
}

::-webkit-scrollbar-track {
  background: rgba(0, 0, 0, 0.05);
}

::-webkit-scrollbar-thumb {
  background: rgba(255, 255, 255, 0.12);
  border-radius: 999px;
  border: 1px solid transparent;
  background-clip: content-box;
  transition: background 0.3s;
}

::-webkit-scrollbar-thumb:hover {
  background: rgba(255, 255, 255, 0.22);
}

* {
  scrollbar-width: thin;
  scrollbar-color: rgba(255, 255, 255, 0.12) transparent;
}
