
        @font-face{font-family:'Inter';font-style:normal;font-weight:400 800;font-display:swap;src:url(/static/css/fonts/inter-latin.woff2) format('woff2')}
        /* ── Hamburger (Mobile) ────────────────── */
        .hamburger {
            display: none;
            background: none;
            border: none;
            cursor: pointer;
            padding: 0.4rem;
            z-index: 101;
        }
        .hamburger span {
            display: block;
            width: 22px;
            height: 2px;
            background: var(--text-muted);
            margin: 5px 0;
            transition: transform 0.25s, opacity 0.25s;
            border-radius: 2px;
        }
        .hamburger.active span:nth-child(1) { transform: translateY(7px) rotate(45deg); }
        .hamburger.active span:nth-child(2) { opacity: 0; }
        .hamburger.active span:nth-child(3) { transform: translateY(-7px) rotate(-45deg); }

        /* ── Mobile Responsive ──────────────────── */
        @media (max-width: 768px) {
            .site-main { padding: 1rem 0.75rem; }
            .header-inner { flex-wrap: wrap; gap: 0.5rem; padding: 0.5rem 0.75rem; position: relative; }
            .logo { font-size: 1.1rem; z-index: 101; }
            .hamburger { display: flex !important; flex-direction: column; align-items: center; justify-content: center; z-index: 101; }
            .header-actions { margin-left: auto; z-index: 101; }
            .theme-btn { font-size: 0.78rem; padding: 0.3rem 0.8rem; }

            /* Mobile nav overlay */
            .header-nav {
                display: none;
                flex-direction: column;
                width: 100%;
                background: var(--header-bg);
                backdrop-filter: blur(16px);
                -webkit-backdrop-filter: blur(16px);
                border: 1px solid var(--border);
                border-radius: 0 0 10px 10px;
                padding: 0.75rem;
                gap: 0;
                margin: 0;
                position: absolute;
                top: 100%;
                left: 0;
                right: 0;
                z-index: 100;
                box-shadow: 0 12px 24px rgba(0,0,0,0.1);
                max-height: 70vh;
                overflow-y: auto;
            }
            .header-nav.open { display: flex; }
            .header-nav li { list-style: none; width: 100%; margin: 0; }
            .header-nav li a {
                display: block;
                width: 100%;
                font-size: 0.92rem;
                padding: 0.55rem 0.75rem;
                border-radius: 6px;
                color: var(--text);
                text-decoration: none;
                font-weight: 500;
            }
            .header-nav li a:hover { color: var(--accent); background: var(--accent-subtle); }

            .search-section { padding: 0.5rem 0.75rem; }
            .search-input { font-size: 0.9rem; padding: 0.55rem 0.7rem; }
            .footer-inner { grid-template-columns: 1fr; gap: 1.25rem; text-align: left; }
            footer { padding: 1.5rem 1rem; }
        }

        @media (max-width: 480px) {
            .header-inner { padding: 0.4rem 0.5rem; }
            .logo { font-size: 1rem; }
            .header-nav li a { font-size: 0.85rem; padding: 0.5rem 0.65rem; }
            .search-input { font-size: 0.85rem; }
        }
    