I'd say a waterproof/rain jacket and warm clothes. It could be -5 and snowing, but equally it could be 5 degrees and raining. Either decent walking shoes with thick socks, or some insulated/lined boots would be perfect.
Skansen is lovely and definitely worth a visit. If it is snowy, then walking around Djurgården (the island on which Skansen is located) can be really nice and pretty, especially the park/forest next to Skansen. There is a lovely cafe there too, Rosendals Trädgård. The Vasamuseet is also really impressive. I had low expectations (I was not super interested in a museum about a boat...), but I am really glad I visited.
For fika, Vete Katten, near the central station, is one of my favourites, nice baked goods in a beautiful setting. However, unless you arrive early (say, 10am), there is a good chance you'll have to queue to get in.
It's quite common for Swedish restaurants to serve a set lunch, usually a warm main dish, with some salad & bread on the side, and including coffee/tea for £10-12. It's much better value than bakeries/cafes, where you pay almost as much for a small sandwich. Note that Swedes eat lunch early, most places will serve lunch between approximately 11am&2pm.
Stockholm is not cheap, but the Swedish krona has dropped quit a bit in value, so it's a bit cheaper for overseas visitors compared to a couple of years ago. Getting the local ferry between islands (such as Gamla Stan en Djurgården, or further out to Vaxholm is a nice and affordable way to see a bit more of the city from the water.