        .sticky-toggle-wrapper {
            display: none;
            position: sticky;
            top: 0;
            padding: 0.5rem 0;
            z-index: 1000;
            text-align: center;
            /* border-bottom: 1px solid #ccc; */
        }

        .toggle-explain-btn {
            padding: 0.5rem 1rem;
            font-size: 1rem;
            background: #005fcc;
            color: #fff;
            border: none;
            border-radius: 4px;
            cursor: pointer;
        }

        h2 {
            margin-top: 2rem;
            text-align: center;
        }

        h3:not(:first-of-type) {
            margin-top: 4rem;
        }


        .label-row {
            display: flex;
            gap: 1rem;
            font-weight: bold;
            margin-bottom: 0.5rem;
        }

        .label {
            flex: 1;
        }

        .autocss-2,
        .translation-row {
            display: flex;
            flex-direction: column;
            gap: 1.5rem;
        }

        .translation-row {
            gap: 0.5rem;
        }

        /* .typewritten {
            font-family: 'Special Elite', monospace;
            padding: 0.5rem;
        } */

        /* .typewritten {
            font-family: 'Courier New', Courier, monospace;
            padding: 0.5rem;
        } */
        .typewritten {
            font-family: 'Special Elite', monospace;
            padding: 0.5rem;
            white-space: normal;
            word-break: break-word;
        }

        .genalpha-v2-msg,
        .genz-v2-msg {
            border-radius: 10px;
            padding: 0.75rem;
            position: relative;
            margin-left: 4rem;
        }

        .genalpha-v2-msg {
            background: #d9f99d;
            /* improved WCAG contrast */
            color: #111;
        }

        .genz-v2-msg {
            background: #cde8ff;
        }

        .gen-label {
            position: absolute;
            top: 4px;
            right: 8px;
            font-size: 0.7rem;
            font-weight: bold;
            color: #222;
            opacity: 0.7;
        }

        .explain {
            display: none;
            font-size: 0.9rem;
            background: #fff;
            padding: 0.5rem;
            border-left: 3px solid #888;
            border-radius: 4px;
            margin-top: 0.3rem;
            margin-left: 6rem;
            grid-column: span 1;
        }

        .explain.show {
            display: block;
        }

        @media (max-width: 768px) {
            .label-row {
                display: none;
            }

            .translation-row,
            .autocss-2 {
                flex-direction: column;
                gap: 1.5rem;
            }
        }