Verification takes four inputs: the hashed server seed you were shown before play, the unhashed server seed revealed afterwards, your client seed, and the nonce of the round you care about.
Start with the hash. Run SHA-256 over the revealed server seed. The output should match the hash the casino published before you started betting. If it does not match, the seed was changed and nothing else on the page is worth reading.
Then reproduce the outcome. The game combines server seed, client seed and nonce with HMAC-SHA256, then maps the resulting bytes onto whatever range the game needs: a tile in Mines, a peg path in Plinko, a multiplier in Crash, a number between 0 and 100 in dice. That mapping is written down in the game's fairness page. Feed the same inputs through the same function and you get the same result, or the operator has a problem to explain.
Our fairness verifier does both steps in the browser for the common Stake-style implementations. Nothing leaves your machine. You paste the seeds and the nonce, and it prints the outcome it derives from them.
Two habits turn this from theory into something useful. Copy the hashed server seed before you start a session rather than after, because after is too late to prove what was committed to. And rotate seeds periodically, since each rotation reveals the previous server seed and lets you audit a whole block of rounds in one pass.
If a site publishes no seeds, or publishes them only for its in-house originals and not for third-party studio titles, treat the third-party titles as unverifiable. That is not automatically dishonest. It means the check is unavailable, and you are back to trusting the studio and its testing house.