/**
 * Pikselöity kursori (Ghetto Party)
 * Nuoli: lime täyttö (#cef453), tumma ääriviiva (#0e0e0e).
 * Estetty kohde: harmaa täyttö (#51524e).
 * Värit on kirjoitettu SVG:iden sisään, koska CSS-muuttujat eivät toimi kursorikuvissa.
 */

@media (hover: hover) and (pointer: fine) {
	body,
	body * {
		cursor: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' width='26' height='34' viewBox='0 0 26 34' shape-rendering='crispEdges'><rect x='0' y='0' width='4' height='2' fill='%230e0e0e'/><rect x='0' y='2' width='6' height='2' fill='%230e0e0e'/><rect x='0' y='4' width='2' height='2' fill='%230e0e0e'/><rect x='4' y='4' width='4' height='2' fill='%230e0e0e'/><rect x='0' y='6' width='2' height='2' fill='%230e0e0e'/><rect x='6' y='6' width='4' height='2' fill='%230e0e0e'/><rect x='0' y='8' width='2' height='2' fill='%230e0e0e'/><rect x='8' y='8' width='4' height='2' fill='%230e0e0e'/><rect x='0' y='10' width='2' height='2' fill='%230e0e0e'/><rect x='10' y='10' width='4' height='2' fill='%230e0e0e'/><rect x='0' y='12' width='2' height='2' fill='%230e0e0e'/><rect x='12' y='12' width='4' height='2' fill='%230e0e0e'/><rect x='0' y='14' width='2' height='2' fill='%230e0e0e'/><rect x='14' y='14' width='4' height='2' fill='%230e0e0e'/><rect x='0' y='16' width='2' height='2' fill='%230e0e0e'/><rect x='16' y='16' width='4' height='2' fill='%230e0e0e'/><rect x='0' y='18' width='2' height='2' fill='%230e0e0e'/><rect x='18' y='18' width='4' height='2' fill='%230e0e0e'/><rect x='0' y='20' width='2' height='2' fill='%230e0e0e'/><rect x='20' y='20' width='4' height='2' fill='%230e0e0e'/><rect x='0' y='22' width='2' height='2' fill='%230e0e0e'/><rect x='22' y='22' width='4' height='2' fill='%230e0e0e'/><rect x='0' y='24' width='2' height='2' fill='%230e0e0e'/><rect x='10' y='24' width='16' height='2' fill='%230e0e0e'/><rect x='0' y='26' width='2' height='2' fill='%230e0e0e'/><rect x='8' y='26' width='4' height='2' fill='%230e0e0e'/><rect x='0' y='28' width='2' height='2' fill='%230e0e0e'/><rect x='6' y='28' width='4' height='2' fill='%230e0e0e'/><rect x='0' y='30' width='2' height='2' fill='%230e0e0e'/><rect x='4' y='30' width='4' height='2' fill='%230e0e0e'/><rect x='0' y='32' width='6' height='2' fill='%230e0e0e'/><rect x='2' y='4' width='2' height='2' fill='%23cef453'/><rect x='2' y='6' width='4' height='2' fill='%23cef453'/><rect x='2' y='8' width='6' height='2' fill='%23cef453'/><rect x='2' y='10' width='8' height='2' fill='%23cef453'/><rect x='2' y='12' width='10' height='2' fill='%23cef453'/><rect x='2' y='14' width='12' height='2' fill='%23cef453'/><rect x='2' y='16' width='14' height='2' fill='%23cef453'/><rect x='2' y='18' width='16' height='2' fill='%23cef453'/><rect x='2' y='20' width='18' height='2' fill='%23cef453'/><rect x='2' y='22' width='20' height='2' fill='%23cef453'/><rect x='2' y='24' width='8' height='2' fill='%23cef453'/><rect x='2' y='26' width='6' height='2' fill='%23cef453'/><rect x='2' y='28' width='4' height='2' fill='%23cef453'/><rect x='2' y='30' width='2' height='2' fill='%23cef453'/></svg>") 1 1, auto !important;
	}

	body :is(a[href], button, [role="button"], [role="radio"], [role="tab"], label, summary, select, input[type="submit"], input[type="button"], input[type="checkbox"], input[type="radio"]),
	body :is(a[href], button, [role="button"], [role="radio"], [role="tab"], label, summary) * {
		cursor: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' width='32' height='36' viewBox='0 0 32 36' shape-rendering='crispEdges'><rect x='8' y='0' width='4' height='2' fill='%230e0e0e'/><rect x='6' y='2' width='2' height='2' fill='%230e0e0e'/><rect x='12' y='2' width='2' height='2' fill='%230e0e0e'/><rect x='6' y='4' width='2' height='2' fill='%230e0e0e'/><rect x='12' y='4' width='2' height='2' fill='%230e0e0e'/><rect x='6' y='6' width='2' height='2' fill='%230e0e0e'/><rect x='12' y='6' width='2' height='2' fill='%230e0e0e'/><rect x='6' y='8' width='2' height='2' fill='%230e0e0e'/><rect x='12' y='8' width='4' height='2' fill='%230e0e0e'/><rect x='6' y='10' width='2' height='2' fill='%230e0e0e'/><rect x='12' y='10' width='2' height='2' fill='%230e0e0e'/><rect x='18' y='10' width='2' height='2' fill='%230e0e0e'/><rect x='6' y='12' width='2' height='2' fill='%230e0e0e'/><rect x='12' y='12' width='2' height='2' fill='%230e0e0e'/><rect x='18' y='12' width='2' height='2' fill='%230e0e0e'/><rect x='24' y='12' width='2' height='2' fill='%230e0e0e'/><rect x='0' y='14' width='4' height='2' fill='%230e0e0e'/><rect x='6' y='14' width='2' height='2' fill='%230e0e0e'/><rect x='12' y='14' width='2' height='2' fill='%230e0e0e'/><rect x='18' y='14' width='2' height='2' fill='%230e0e0e'/><rect x='24' y='14' width='2' height='2' fill='%230e0e0e'/><rect x='28' y='14' width='2' height='2' fill='%230e0e0e'/><rect x='0' y='16' width='2' height='2' fill='%230e0e0e'/><rect x='4' y='16' width='4' height='2' fill='%230e0e0e'/><rect x='28' y='16' width='2' height='2' fill='%230e0e0e'/><rect x='0' y='18' width='2' height='2' fill='%230e0e0e'/><rect x='6' y='18' width='2' height='2' fill='%230e0e0e'/><rect x='28' y='18' width='2' height='2' fill='%230e0e0e'/><rect x='2' y='20' width='2' height='2' fill='%230e0e0e'/><rect x='28' y='20' width='2' height='2' fill='%230e0e0e'/><rect x='2' y='22' width='2' height='2' fill='%230e0e0e'/><rect x='28' y='22' width='2' height='2' fill='%230e0e0e'/><rect x='4' y='24' width='2' height='2' fill='%230e0e0e'/><rect x='28' y='24' width='2' height='2' fill='%230e0e0e'/><rect x='4' y='26' width='2' height='2' fill='%230e0e0e'/><rect x='26' y='26' width='2' height='2' fill='%230e0e0e'/><rect x='6' y='28' width='2' height='2' fill='%230e0e0e'/><rect x='26' y='28' width='2' height='2' fill='%230e0e0e'/><rect x='6' y='30' width='2' height='2' fill='%230e0e0e'/><rect x='26' y='30' width='2' height='2' fill='%230e0e0e'/><rect x='8' y='32' width='2' height='2' fill='%230e0e0e'/><rect x='24' y='32' width='2' height='2' fill='%230e0e0e'/><rect x='8' y='34' width='18' height='2' fill='%230e0e0e'/><rect x='8' y='2' width='4' height='2' fill='%23cef453'/><rect x='8' y='4' width='4' height='2' fill='%23cef453'/><rect x='8' y='6' width='4' height='2' fill='%23cef453'/><rect x='8' y='8' width='4' height='2' fill='%23cef453'/><rect x='8' y='10' width='4' height='2' fill='%23cef453'/><rect x='14' y='10' width='4' height='2' fill='%23cef453'/><rect x='8' y='12' width='4' height='2' fill='%23cef453'/><rect x='14' y='12' width='4' height='2' fill='%23cef453'/><rect x='20' y='12' width='4' height='2' fill='%23cef453'/><rect x='8' y='14' width='4' height='2' fill='%23cef453'/><rect x='14' y='14' width='4' height='2' fill='%23cef453'/><rect x='20' y='14' width='4' height='2' fill='%23cef453'/><rect x='26' y='14' width='2' height='2' fill='%23cef453'/><rect x='2' y='16' width='2' height='2' fill='%23cef453'/><rect x='8' y='16' width='20' height='2' fill='%23cef453'/><rect x='2' y='18' width='4' height='2' fill='%23cef453'/><rect x='8' y='18' width='20' height='2' fill='%23cef453'/><rect x='4' y='20' width='24' height='2' fill='%23cef453'/><rect x='4' y='22' width='24' height='2' fill='%23cef453'/><rect x='6' y='24' width='22' height='2' fill='%23cef453'/><rect x='6' y='26' width='20' height='2' fill='%23cef453'/><rect x='8' y='28' width='18' height='2' fill='%23cef453'/><rect x='8' y='30' width='18' height='2' fill='%23cef453'/><rect x='10' y='32' width='14' height='2' fill='%23cef453'/></svg>") 9 1, pointer !important;
	}

	body :is(:disabled, [aria-disabled="true"], .is-out-of-stock),
	body :is(:disabled, [aria-disabled="true"], .is-out-of-stock) * {
		cursor: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' width='26' height='34' viewBox='0 0 26 34' shape-rendering='crispEdges'><rect x='0' y='0' width='4' height='2' fill='%230e0e0e'/><rect x='0' y='2' width='6' height='2' fill='%230e0e0e'/><rect x='0' y='4' width='2' height='2' fill='%230e0e0e'/><rect x='4' y='4' width='4' height='2' fill='%230e0e0e'/><rect x='0' y='6' width='2' height='2' fill='%230e0e0e'/><rect x='6' y='6' width='4' height='2' fill='%230e0e0e'/><rect x='0' y='8' width='2' height='2' fill='%230e0e0e'/><rect x='8' y='8' width='4' height='2' fill='%230e0e0e'/><rect x='0' y='10' width='2' height='2' fill='%230e0e0e'/><rect x='10' y='10' width='4' height='2' fill='%230e0e0e'/><rect x='0' y='12' width='2' height='2' fill='%230e0e0e'/><rect x='12' y='12' width='4' height='2' fill='%230e0e0e'/><rect x='0' y='14' width='2' height='2' fill='%230e0e0e'/><rect x='14' y='14' width='4' height='2' fill='%230e0e0e'/><rect x='0' y='16' width='2' height='2' fill='%230e0e0e'/><rect x='16' y='16' width='4' height='2' fill='%230e0e0e'/><rect x='0' y='18' width='2' height='2' fill='%230e0e0e'/><rect x='18' y='18' width='4' height='2' fill='%230e0e0e'/><rect x='0' y='20' width='2' height='2' fill='%230e0e0e'/><rect x='20' y='20' width='4' height='2' fill='%230e0e0e'/><rect x='0' y='22' width='2' height='2' fill='%230e0e0e'/><rect x='22' y='22' width='4' height='2' fill='%230e0e0e'/><rect x='0' y='24' width='2' height='2' fill='%230e0e0e'/><rect x='10' y='24' width='16' height='2' fill='%230e0e0e'/><rect x='0' y='26' width='2' height='2' fill='%230e0e0e'/><rect x='8' y='26' width='4' height='2' fill='%230e0e0e'/><rect x='0' y='28' width='2' height='2' fill='%230e0e0e'/><rect x='6' y='28' width='4' height='2' fill='%230e0e0e'/><rect x='0' y='30' width='2' height='2' fill='%230e0e0e'/><rect x='4' y='30' width='4' height='2' fill='%230e0e0e'/><rect x='0' y='32' width='6' height='2' fill='%230e0e0e'/><rect x='2' y='4' width='2' height='2' fill='%2351524e'/><rect x='2' y='6' width='4' height='2' fill='%2351524e'/><rect x='2' y='8' width='6' height='2' fill='%2351524e'/><rect x='2' y='10' width='8' height='2' fill='%2351524e'/><rect x='2' y='12' width='10' height='2' fill='%2351524e'/><rect x='2' y='14' width='12' height='2' fill='%2351524e'/><rect x='2' y='16' width='14' height='2' fill='%2351524e'/><rect x='2' y='18' width='16' height='2' fill='%2351524e'/><rect x='2' y='20' width='18' height='2' fill='%2351524e'/><rect x='2' y='22' width='20' height='2' fill='%2351524e'/><rect x='2' y='24' width='8' height='2' fill='%2351524e'/><rect x='2' y='26' width='6' height='2' fill='%2351524e'/><rect x='2' y='28' width='4' height='2' fill='%2351524e'/><rect x='2' y='30' width='2' height='2' fill='%2351524e'/></svg>") 1 1, not-allowed !important;
	}

	body :is(input:not([type="button"], [type="submit"], [type="checkbox"], [type="radio"], [type="range"]), textarea, [contenteditable="true"]) {
		cursor: text !important;
	}
}