When login timed out web interface loads slowly

The issue I am facing:
When I come back to the Pi's web interface after a certain time, the login timed out. This is expected, and it drops me back to the login screen. However, it takes over 1,5 minutes where it just sits there redirecting repeatedly. I can see the loading icon in my browser animate, but nothing happens. After 1,5 minutes and 38 redirect attempts, it finally shows the login screen.

Details about my system:
Raspberry Pi 4b, 32-bit Raspian. Fully updated. Webserver log shows:

[2025-04-06 12:36:51.535 CEST 28702] Initializing HTTP server on ports "80o,443os,[::]:80o,[::]:443os"
[2025-04-06 14:18:05.914 CEST 28702] Authentication required, redirecting to /admin/login
[2025-04-06 14:18:06.514 CEST 28702] Authentication required, redirecting to /admin/login
[2025-04-06 14:18:08.957 CEST 28702] Authentication required, redirecting to /admin/login
[2025-04-06 14:18:10.216 CEST 28702] Authentication required, redirecting to /admin/login
[2025-04-06 14:18:12.030 CEST 28702] Authentication required, redirecting to /admin/login
[2025-04-06 14:18:15.100 CEST 28702] Authentication required, redirecting to /admin/login
[2025-04-06 14:18:18.178 CEST 28702] Authentication required, redirecting to /admin/login
[2025-04-06 14:18:21.587 CEST 28702] Authentication required, redirecting to /admin/login
[2025-04-06 14:18:24.674 CEST 28702] Authentication required, redirecting to /admin/login
[2025-04-06 14:18:25.040 CEST 28702] Authentication required, redirecting to /admin/login
[2025-04-06 14:18:25.384 CEST 28702] Authentication required, redirecting to /admin/login
[2025-04-06 14:18:27.722 CEST 28702] Authentication required, redirecting to /admin/login
[2025-04-06 14:18:30.798 CEST 28702] Authentication required, redirecting to /admin/login
[2025-04-06 14:18:33.874 CEST 28702] Authentication required, redirecting to /admin/login
[2025-04-06 14:18:36.004 CEST 28702] Authentication required, redirecting to /admin/login
[2025-04-06 14:18:36.956 CEST 28702] Authentication required, redirecting to /admin/login
[2025-04-06 14:18:40.093 CEST 28702] Authentication required, redirecting to /admin/login
[2025-04-06 14:18:43.169 CEST 28702] Authentication required, redirecting to /admin/login
[2025-04-06 14:18:46.247 CEST 28702] Authentication required, redirecting to /admin/login
[2025-04-06 14:18:49.558 CEST 28702] Authentication required, redirecting to /admin/login
[2025-04-06 14:18:52.636 CEST 28702] Authentication required, redirecting to /admin/login
[2025-04-06 14:18:55.874 CEST 28702] Authentication required, redirecting to /admin/login
[2025-04-06 14:18:58.951 CEST 28702] Authentication required, redirecting to /admin/login
[2025-04-06 14:19:02.004 CEST 28702] Authentication required, redirecting to /admin/login
[2025-04-06 14:19:05.072 CEST 28702] Authentication required, redirecting to /admin/login
[2025-04-06 14:19:06.082 CEST 28702] Authentication required, redirecting to /admin/login
[2025-04-06 14:19:08.143 CEST 28702] Authentication required, redirecting to /admin/login
[2025-04-06 14:19:11.222 CEST 28702] Authentication required, redirecting to /admin/login
[2025-04-06 14:19:14.295 CEST 28702] Authentication required, redirecting to /admin/login
[2025-04-06 14:19:17.372 CEST 28702] Authentication required, redirecting to /admin/login
[2025-04-06 14:19:20.452 CEST 28702] Authentication required, redirecting to /admin/login
[2025-04-06 14:19:23.524 CEST 28702] Authentication required, redirecting to /admin/login
[2025-04-06 14:19:25.023 CEST 28702] Authentication required, redirecting to /admin/login
[2025-04-06 14:19:26.530 CEST 28702] Authentication required, redirecting to /admin/login
[2025-04-06 14:19:29.589 CEST 28702] Authentication required, redirecting to /admin/login
[2025-04-06 14:19:32.676 CEST 28702] Authentication required, redirecting to /admin/login
[2025-04-06 14:19:35.752 CEST 28702] Authentication required, redirecting to /admin/login
[2025-04-06 14:19:36.235 CEST 28702] Authentication required, redirecting to /admin/login

nftables ruleset:

#!/usr/sbin/nft -f
flush ruleset
table inet filter {
    chain input {
        type filter hook input priority 0; policy drop;

        # Allow established/related connections
        ct state established,related accept

        # Allow loopback
        iifname lo accept

        # Allow ICMP and ICMPv6
        ip protocol icmp accept
        ip6 nexthdr icmpv6 accept

        # Allow DHCP (ports 67, 68)
        udp dport 67 accept
        udp dport 68 accept
        udp sport 67 accept
        udp sport 68 accept

        # Allow SSH (port 22)
        tcp dport 22 accept

        # Allow HTTP/HTTPS (ports 80, 443)
        tcp dport { 80, 443 } accept

        # Allow DNS & NTP (ports 53, 123 UDP)
        udp dport { 53, 123 } accept
    }

    chain forward {
        type filter hook forward priority 0; policy drop;
    }

    chain output {
        type filter hook output priority 0; policy accept;
    }
}

at one point I had top and htop open, it doesn't show anything out of the ordinary. No high load, no iowait, nothing seems to be locking up the system as far as I can see.

What I have changed since installing Pi-hole:
Too much to mention, but it generally runs smoothly, no issues. If there's anything specific you need to know, please ask and I will provide the details.

Perhaps its related to this:

I I've been trying out Vivaldi recently and I haven't experienced any timeouts or even slow loading.