        /* ── Dashboard-specific overrides ── */
        .greeting h1 span {
            background: linear-gradient(135deg, var(--text-accent), var(--accent));
            -webkit-background-clip: text;
            -webkit-text-fill-color: transparent;
            background-clip: text;
        }

        .live-badge {
            display: inline-flex;
            align-items: center;
            gap: 8px;
            margin-top: 0.5rem;
            padding: 4px 12px;
            border-radius: var(--r-full, 999px);
            background: var(--success-soft, rgba(110, 231, 160, 0.12));
            border: 1px solid var(--success, #6ee7a0);
            color: var(--success-text);
            font-size: var(--text-sm);
            font-weight: 600;
        }

        .live-dot {
            width: 9px;
            height: 9px;
            border-radius: 50%;
            background: var(--success, #6ee7a0);
            animation: livePulse 1.6s ease-in-out infinite;
        }

        @keyframes livePulse {
            0%, 100% { opacity: 1; box-shadow: 0 0 0 0 rgba(110, 231, 160, 0.6); }
            50% { opacity: 0.4; box-shadow: 0 0 0 5px rgba(110, 231, 160, 0); }
        }

        @media (prefers-reduced-motion: reduce) {
            .live-dot { animation: none; }
        }

        .continue-card {
            background: linear-gradient(135deg, var(--bg-card) 0%, var(--bg-elevated) 100%);
            border: 1px solid var(--accent-soft);
            padding: var(--sp-lg);
            position: relative;
            overflow: hidden;
        }
        .continue-glow {
            position: absolute;
            top: -40px;
            right: -40px;
            width: 160px;
            height: 160px;
            background: var(--accent-glow);
            border-radius: 50%;
            filter: blur(60px);
            opacity: 0.4;
        }
        .continue-row {
            display: flex;
            align-items: center;
            justify-content: space-between;
            flex-wrap: wrap;
            gap: var(--sp-md);
            position: relative;
        }
        .continue-info { flex: 1; min-width: 240px; }
        .continue-eyebrow {
            font-size: var(--text-xs);
            font-weight: 800;
            text-transform: uppercase;
            letter-spacing: 1px;
            color: var(--text-accent);
            margin-bottom: 4px;
        }
        .continue-title { font-size: var(--text-xl); margin-bottom: 4px; }
        .continue-subtitle { color: var(--text-secondary); font-size: var(--text-base); margin-bottom: 8px; }
        .continue-meta { display: flex; gap: 12px; flex-wrap: wrap; font-size: var(--text-sm); color: var(--text-muted); }
        .continue-meta > span { display: inline-flex; align-items: center; gap: 0.35rem; }
        .continue-meta svg { width: 1em; height: 1em; }
        .quest-heading-icon svg { width: 1.1em; height: 1.1em; vertical-align: -0.15em; }
        .mentor-avatar svg, .rec-emoji svg, .path-icon svg, .ach-icon svg,
        .brand-icon svg, .zero-illustration svg { width: 1.2em; height: 1.2em; display: block; }
        .mentor-avatar, .rec-emoji, .path-icon, .ach-icon, .brand-icon, .zero-illustration {
            color: var(--text-accent);
        }
        .rec-emoji, .zero-illustration { display: inline-flex; align-items: center; justify-content: center; }
        .continue-link { font-size: var(--text-md); padding: 12px 28px; text-decoration: none; white-space: nowrap; }
        .stat-chords { color: var(--finger-2); }
        .quest-heading { display: flex; align-items: center; gap: 8px; }
        .perf-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); gap: var(--sp-md); }
        .chart-title { font-size: var(--text-base); color: var(--text-secondary); }
        .chart-unit { font-size: var(--text-md); color: var(--text-muted); font-weight: 600; }
        .chart-svg-fill { width: 100%; height: 100%; }
        .weak-area-card { margin-top: var(--sp-md); padding: var(--sp-md); border-radius: var(--r-md); }
        .achievements-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(180px, 1fr)); gap: var(--sp-md); }
        .rec-card-accent { border-color: var(--accent-soft); }
        .brand-compact { justify-content: center; border: none; padding: 0; }
        .nav-link-compact { padding: 0; min-height: auto; }
        .zero-state { margin-top: var(--sp-lg); gap: var(--sp-lg); align-items: center; }
        .zero-illustration { font-size: var(--text-5xl); }
        .zero-launchpad {
            display: grid;
            grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
            gap: var(--sp-sm);
            margin-top: var(--sp-md);
        }
        .path-item-static { min-height: auto; cursor: default; }

        .ach-card {
            background: var(--bg-card);
            border: 1px solid var(--accent-soft);
            border-radius: var(--r-md);
            padding: var(--sp-md);
            display: flex;
            align-items: center;
            gap: var(--sp-sm);
        }
        .ach-icon { font-size: var(--text-2xl); flex-shrink: 0; }
        .ach-title { font-size: var(--text-sm); font-weight: 700; color: var(--text-primary); margin-bottom: 2px; }
        .ach-desc { font-size: var(--text-xs); color: var(--text-muted); }

        /* ── Practice Your Way Grid ── */
        .explore-modes-grid {
            display: grid;
            grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
            gap: var(--sp-md);
        }
        .explore-card {
            background: var(--bg-card);
            border: 1px solid var(--border);
            border-radius: var(--r-lg, 12px);
            padding: var(--sp-md);
            display: flex;
            align-items: center;
            gap: var(--sp-md);
            text-decoration: none;
            color: inherit;
            position: relative;
            transition: all var(--t-fast, 150ms) var(--ease-out, ease);
            box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
        }
        .explore-card:hover, .explore-card:focus-visible {
            transform: translateY(-2px);
            border-color: var(--accent);
            box-shadow: 0 8px 20px rgba(99, 102, 241, 0.2);
        }
        .explore-card-icon {
            width: 44px;
            height: 44px;
            border-radius: var(--r-md, 8px);
            background: var(--accent-soft, rgba(99, 102, 241, 0.12));
            color: var(--text-accent);
            display: flex;
            align-items: center;
            justify-content: center;
            flex-shrink: 0;
            font-size: var(--text-xl);
        }
        .explore-card-icon svg {
            width: 24px;
            height: 24px;
        }
        .explore-card-content {
            flex: 1;
            min-width: 0;
        }
        .explore-card-title {
            font-weight: 700;
            font-size: var(--text-base);
            color: var(--text-primary);
            margin-bottom: 2px;
        }
        .explore-card-desc {
            font-size: var(--text-xs);
            color: var(--text-muted);
            line-height: 1.35;
        }
        .explore-badge {
            align-self: flex-start;
            font-size: 10px;
            padding: 2px 6px;
        }
