/* SITE EFFECTS - film grain, scrollbar, small global details */
.grain {
  position: fixed; inset: 0; z-index: 110; pointer-events: none; opacity: var(--grain-opacity);
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='160' height='160'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/></filter><rect width='100%' height='100%' filter='url(%23n)'/></svg>");
}
.dot { width: 0.55rem; height: 0.55rem; border-radius: 50%; display: inline-block; }
html { scrollbar-width: thin; scrollbar-color: var(--shadow-dark) transparent; }
::-webkit-scrollbar { width: 10px; }
::-webkit-scrollbar-thumb { background: var(--shadow-dark); border-radius: 10px; border: 2px solid var(--bg); }
::-webkit-scrollbar-track { background: var(--bg); }
img { -webkit-user-drag: none; }
