@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+HK:wght@100..900&family=Source+Serif+4:ital,opsz,wght@0,8..60,200..900;1,8..60,200..900&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+HK:wght@100..900&family=Roboto:ital,wght@0,100;0,300;0,400;0,500;0,700;0,900;1,100;1,300;1,400;1,500;1,700;1,900&family=Source+Serif+4:ital,opsz,wght@0,8..60,200..900;1,8..60,200..900&display=swap');

* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
  -webkit-font-smoothing: antialiased; /* Fix for blurry text rendering */
  image-rendering: pixelated; /* Fix for blurry images rendering */
}

/* ===== Scrollbar CSS ===== */
*::-webkit-scrollbar {
  height: 4px;
  width: 4px;
}
*::-webkit-scrollbar-track {
  border-radius: 5px;
  background-color: #ffffff00;
}

*::-webkit-scrollbar-track:hover {
  background-color: #ffffff00;
}

*::-webkit-scrollbar-track:active {
  background-color: #ffffff00;
}

*::-webkit-scrollbar-thumb {
  border-radius: 5px;
  background-color: rgba(0, 0, 0, 0.5);
}

*::-webkit-scrollbar-thumb:hover {
  background-color: rgba(0, 0, 0, 0.5);
}

*::-webkit-scrollbar-thumb:active {
  background-color: rgba(0, 0, 0, 0.5);
}

/* ===== Global Fonts, Zoom Disabled ===== */
body,
html {
  margin: 0;
  height: 100dvh;
  touch-action: pan-y; /* Disable page zoom on touch devices */
  overflow: hidden;
  -webkit-text-size-adjust: 100%;
  font-family: 'Roboto', 'Noto Sans HK', ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, Segoe UI, Helvetica Neue, Arial, Noto Sans, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', Segoe UI Symbol, 'Noto Color Emoji';
  color: var(--dark-grey);
  font-weight: normal;
}

/* ===== Color Palette ===== */
:root {
  --theme-1: #d42346;
  --dark-grey: #3c3c3c;
  --red_cohort: linear-gradient(0deg, #d42346 0%, #d42346 100%);
  --yellow_cohort: linear-gradient(0deg, #ee8215 0%, #ee8215 100%);
  --blue_cohort: linear-gradient(0deg, #3b56c4 0%, #3b56c4 100%);
}
