        .theme-filter {
            background: var(--card-bg);
            color: var(--text-primary);
            border: 1px solid var(--surface-border);
            border-radius: 0.75rem;
            box-shadow: 0 10px 30px rgba(15,23,42,0.12);
        }
        .theme-filter option {
            color: var(--text-primary);
            background: var(--card-bg);
        }

        .theme-apply-btn {
            height: 36px;
            min-width: 96px;
            padding: 0 14px;
            border-radius: 999px;
            border: 1px solid var(--surface-border);
            background: linear-gradient(135deg, var(--sidebar-accent) 0%, color-mix(in srgb, var(--sidebar-accent) 60%, var(--card-bg) 40%) 100%);
            color: var(--sidebar-active-text, #0f172a);
            font-weight: 700;
            font-size: 11px;
            letter-spacing: 0.2em;
            text-transform: uppercase;
            display: inline-flex;
            align-items: center;
            justify-content: center;
            gap: 6px;
            box-shadow: 0 8px 20px rgba(15,23,42,0.16);
            transition: transform 160ms ease, box-shadow 200ms ease, opacity 160ms ease;
        }

        .theme-apply-btn:hover {
            transform: translateY(-1px);
            box-shadow: 0 12px 26px rgba(15,23,42,0.22);
        }

        .theme-apply-btn:active {
            transform: translateY(0);
            box-shadow: 0 6px 14px rgba(15,23,42,0.2);
        }

        .topbar-scroll-btn {
            position: absolute;
            top: 50%;
            transform: translateY(-50%);
            height: 32px;
            width: 32px;
            border-radius: 999px;
            border: 1px solid var(--surface-border);
            background: var(--surface-ghost);
            color: var(--text-primary);
            display: none;
            align-items: center;
            justify-content: center;
            z-index: 5;
        }

        .topbar-scroll-left { left: 0.25rem; }
        .topbar-scroll-right { right: 0.25rem; }

        #sidebar-fab {
            position: fixed;
            right: 1.25rem;
            bottom: 1.25rem;
            height: 48px;
            padding: 0 1rem;
            border-radius: 999px;
            border: 1px solid var(--surface-border);
            background: linear-gradient(135deg, var(--sidebar-accent) 0%, color-mix(in srgb, var(--sidebar-accent) 55%, var(--card-bg) 45%) 100%);
            color: var(--sidebar-active-text, #0f172a);
            font-weight: 700;
            font-size: 12px;
            letter-spacing: 0.22em;
            text-transform: uppercase;
            gap: 0.5rem;
            align-items: center;
            justify-content: center;
            box-shadow: 0 14px 30px rgba(15, 23, 42, 0.18);
            display: none;
            z-index: 70;
        }

        [data-theme='azure-frost'] #sidebar-fab {
            background: color-mix(in srgb, var(--surface-soft) 70%, #ffffff 30%);
            border-color: color-mix(in srgb, var(--surface-border) 65%, #ffffff 35%);
            color: var(--text-primary);
            box-shadow: 0 12px 24px rgba(8, 47, 73, 0.18);
        }
        #theme-select {
            min-width: 160px;
            background: var(--control-bg);
            border: 1px solid var(--control-border);
            color: var(--control-text);
            border-radius: 999px;
            padding: 0.25rem 0.9rem;
            height: 2.4rem;
            font-size: 0.65rem;
            font-weight: 700;
            letter-spacing: 0.25em;
            text-transform: uppercase;
            cursor: pointer;
            transition: border-color 0.2s ease, background 0.2s ease, color 0.2s ease;
        }

        #theme-select:focus-visible {
            outline: 2px solid color-mix(in srgb, var(--control-border) 70%, var(--sidebar-accent) 30%);
            outline-offset: 2px;
        }

        #theme-select option {
            color: var(--text-primary);
            background-color: var(--menu-bg);
        }
