/* /Components/Account/Pages/UserDashboard.razor.rz.scp.css */
.user-dashboard-container[b-h85xnlrobx] {
    max-width: 1000px;
    margin: 0 auto;
    padding: 2rem 1rem 3rem;
}

.user-dashboard-header[b-h85xnlrobx] {
    margin-bottom: 2rem;
}

    .user-dashboard-header h1[b-h85xnlrobx] {
        font-weight: 800;
        letter-spacing: -0.02em;
        margin-bottom: 0.25rem;
    }

/* ---- Header profilo: avatar + info base + gamification ---- */
.user-header-profilo[b-h85xnlrobx] {
    display: flex;
    gap: 1.75rem;
    padding: 2rem;
    margin-bottom: 2rem;
    background: linear-gradient(135deg, #ffffff 0%, var(--wq-primary-soft) 100%);
    border: 1px solid #e2e8f0;
    border-radius: var(--wq-radius-lg);
    box-shadow: var(--wq-shadow-soft);
}

.user-header-avatar[b-h85xnlrobx] {
    flex-shrink: 0;
}

.user-header-info[b-h85xnlrobx] {
    flex: 1;
    min-width: 0;
}

.user-header-username[b-h85xnlrobx] {
    font-weight: 800;
    letter-spacing: -0.02em;
    margin-bottom: 0.15rem;
    color: var(--wq-ink);
    word-break: break-word;
}

.user-header-meta[b-h85xnlrobx] {
    font-size: 0.88rem;
    color: var(--wq-muted);
    margin-bottom: 1.25rem;
}

.user-header-meta-sep[b-h85xnlrobx] {
    margin: 0 0.5rem;
    color: #cbd5e1;
}

.user-header-gamification[b-h85xnlrobx] {
    display: grid;
    grid-template-columns: 1fr;
    gap: 1rem;
}

@media (min-width: 720px) {
    .user-header-gamification[b-h85xnlrobx] {
        grid-template-columns: 2fr 1fr;
        align-items: center;
    }
}

/* ---- XP Bar ---- */
.user-xp-block[b-h85xnlrobx] {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}

.user-xp-header[b-h85xnlrobx] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 0.75rem;
    flex-wrap: wrap;
}

.user-livello-badge[b-h85xnlrobx] {
    display: inline-flex;
    align-items: center;
    gap: 0.35rem;
    padding: 0.3rem 0.85rem;
    background: var(--wq-primary);
    color: #ffffff;
    border-radius: var(--wq-radius-pill);
    font-weight: 700;
    font-size: 0.85rem;
    letter-spacing: 0.02em;
    box-shadow: 0 2px 6px rgba(79, 70, 229, 0.25);
}

    .user-livello-badge i[b-h85xnlrobx] {
        color: #fbbf24; /* stella oro su badge primary */
    }

.user-xp-text[b-h85xnlrobx] {
    font-size: 0.82rem;
    color: var(--wq-ink);
    font-weight: 500;
    font-variant-numeric: tabular-nums;
}

.user-xp-bar-track[b-h85xnlrobx] {
    height: 12px;
    background: rgba(255, 255, 255, 0.6);
    border: 1px solid #e2e8f0;
    border-radius: var(--wq-radius-pill);
    overflow: hidden;
}

.user-xp-bar-fill[b-h85xnlrobx] {
    height: 100%;
    background: linear-gradient(90deg, var(--wq-primary), #7c3aed);
    border-radius: var(--wq-radius-pill);
    transition: width 0.4s ease;
    box-shadow: 0 0 8px rgba(79, 70, 229, 0.35);
}

/* ---- Streak ---- */
.user-streak-block[b-h85xnlrobx] {
    display: flex;
    align-items: center;
    gap: 0.85rem;
    padding: 0.85rem 1.15rem;
    background: #ffffff;
    border: 1px solid #e2e8f0;
    border-radius: var(--wq-radius-md);
}

.user-streak-icona[b-h85xnlrobx] {
    flex-shrink: 0;
    width: 44px;
    height: 44px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.4rem;
    transition: all 0.3s ease;
}

.user-streak-attiva .user-streak-icona[b-h85xnlrobx] {
    background: linear-gradient(135deg, #fef3c7, #fbbf24);
    color: #ea580c;
    box-shadow: 0 0 12px rgba(251, 146, 60, 0.35);
    animation: user-fiamma-pulse-b-h85xnlrobx 2s ease-in-out infinite;
}

.user-streak-spenta .user-streak-icona[b-h85xnlrobx] {
    background: #f1f5f9;
    color: #94a3b8;
}

@keyframes user-fiamma-pulse-b-h85xnlrobx {
    0%, 100% {
        transform: scale(1);
        box-shadow: 0 0 12px rgba(251, 146, 60, 0.35);
    }

    50% {
        transform: scale(1.05);
        box-shadow: 0 0 18px rgba(251, 146, 60, 0.55);
    }
}

.user-streak-testo[b-h85xnlrobx] {
    display: flex;
    flex-direction: column;
    line-height: 1.15;
}

    .user-streak-testo strong[b-h85xnlrobx] {
        font-size: 1.5rem;
        font-weight: 800;
        color: var(--wq-ink);
        font-variant-numeric: tabular-nums;
    }

    .user-streak-testo span[b-h85xnlrobx] {
        font-size: 0.78rem;
        color: var(--wq-muted);
    }

.user-streak-record[b-h85xnlrobx] {
    font-size: 0.72rem;
    color: var(--wq-warning);
    font-weight: 600;
    margin-top: 0.15rem;
}

/* ---- Panel grafico andamento ---- */
.user-panel-grafico[b-h85xnlrobx] {
    padding: 1.75rem;
}

/* ---- Bacheca Achievement (Turno 4) ---- */
.user-panel-achievement[b-h85xnlrobx] {
    padding: 1.75rem;
}

.user-badge-griglia[b-h85xnlrobx] {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(180px, 1fr));
    gap: 1rem;
}

.user-badge-card[b-h85xnlrobx] {
    position: relative;
    padding: 1.25rem 1rem;
    border-radius: var(--wq-radius-md);
    text-align: center;
    border: 1px solid #e2e8f0;
    background: #ffffff;
    transition: transform 0.15s ease, box-shadow 0.15s ease;
    display: flex;
    flex-direction: column;
    align-items: center;
}

    .user-badge-card:hover[b-h85xnlrobx] {
        transform: translateY(-2px);
        box-shadow: 0 6px 16px rgba(15, 23, 42, 0.08);
    }

.user-badge-icona[b-h85xnlrobx] {
    position: relative;
    width: 64px;
    height: 64px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.9rem;
    margin-bottom: 0.75rem;
}

.user-badge-lucchetto[b-h85xnlrobx] {
    position: absolute;
    bottom: -2px;
    right: -2px;
    width: 22px;
    height: 22px;
    border-radius: 50%;
    background: #ffffff;
    color: #64748b;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 0.72rem;
    border: 2px solid #ffffff;
    box-shadow: 0 1px 3px rgba(15, 23, 42, 0.15);
}

.user-badge-titolo[b-h85xnlrobx] {
    font-weight: 700;
    font-size: 0.95rem;
    color: var(--wq-ink);
    margin-bottom: 0.3rem;
    line-height: 1.2;
}

.user-badge-descrizione[b-h85xnlrobx] {
    font-size: 0.78rem;
    color: var(--wq-muted);
    line-height: 1.35;
    margin-bottom: 0.6rem;
}

.user-badge-data[b-h85xnlrobx] {
    font-size: 0.72rem;
    color: var(--wq-success);
    font-weight: 600;
    margin-top: auto;
}

.user-badge-progresso[b-h85xnlrobx] {
    font-size: 0.72rem;
    color: var(--wq-muted);
    font-style: italic;
    margin-top: auto;
}

/* ---- Stato SBLOCCATO: colore pieno per categoria ---- */
.user-badge-sbloccato[b-h85xnlrobx] {
    border-width: 2px;
}

    .user-badge-sbloccato .user-badge-icona[b-h85xnlrobx] {
        color: #ffffff;
        box-shadow: 0 4px 12px rgba(15, 23, 42, 0.15);
    }

    /* Palette per categoria — sbloccato */
    .user-badge-sbloccato.user-badge-cat-esordio[b-h85xnlrobx] {
        border-color: var(--wq-primary);
    }

        .user-badge-sbloccato.user-badge-cat-esordio .user-badge-icona[b-h85xnlrobx] {
            background: linear-gradient(135deg, var(--wq-primary), #7c3aed);
        }

    .user-badge-sbloccato.user-badge-cat-impegno[b-h85xnlrobx] {
        border-color: #2563eb;
    }

        .user-badge-sbloccato.user-badge-cat-impegno .user-badge-icona[b-h85xnlrobx] {
            background: linear-gradient(135deg, #2563eb, #1d4ed8);
        }

    .user-badge-sbloccato.user-badge-cat-abilita[b-h85xnlrobx] {
        border-color: var(--wq-success);
    }

        .user-badge-sbloccato.user-badge-cat-abilita .user-badge-icona[b-h85xnlrobx] {
            background: linear-gradient(135deg, var(--wq-success), #059669);
        }

    .user-badge-sbloccato.user-badge-cat-streak[b-h85xnlrobx] {
        border-color: #f97316;
    }

        .user-badge-sbloccato.user-badge-cat-streak .user-badge-icona[b-h85xnlrobx] {
            background: linear-gradient(135deg, #f97316, #dc2626);
        }

    .user-badge-sbloccato.user-badge-cat-livello[b-h85xnlrobx] {
        border-color: var(--wq-warning);
    }

        .user-badge-sbloccato.user-badge-cat-livello .user-badge-icona[b-h85xnlrobx] {
            background: linear-gradient(135deg, #fbbf24, #d97706);
        }

/* ---- Stato BLOCCATO: grigio, opaco ---- */
.user-badge-bloccato[b-h85xnlrobx] {
    background: #f8fafc;
    opacity: 0.75;
}

    .user-badge-bloccato .user-badge-icona[b-h85xnlrobx] {
        background: #e2e8f0;
        color: #94a3b8;
    }

    .user-badge-bloccato .user-badge-titolo[b-h85xnlrobx],
    .user-badge-bloccato .user-badge-descrizione[b-h85xnlrobx] {
        color: #94a3b8;
    }

/* ---- Classifica settimanale (Turno 5) ---- */
.user-panel-classifica[b-h85xnlrobx] {
    padding: 1.75rem;
}

/* Podio top 3: griglia con la 1ª posizione al centro più alta */
.user-classifica-top3[b-h85xnlrobx] {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 0.75rem;
    margin-bottom: 1.5rem;
    align-items: end;
}

.user-classifica-podio[b-h85xnlrobx] {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    padding: 1.25rem 0.75rem;
    background: #ffffff;
    border: 1px solid #e2e8f0;
    border-radius: var(--wq-radius-md);
    position: relative;
    transition: transform 0.15s ease, box-shadow 0.15s ease;
}

/* Ordine: 2ª a sx, 1ª al centro (più alta), 3ª a dx */
.user-classifica-podio-1[b-h85xnlrobx] {
    order: 2;
    padding-top: 1.75rem;
    padding-bottom: 1.75rem;
    background: linear-gradient(135deg, #fef3c7, #ffffff 70%);
    border-color: #fbbf24;
    box-shadow: 0 4px 14px rgba(251, 191, 36, 0.25);
}

.user-classifica-podio-2[b-h85xnlrobx] {
    order: 1;
    background: linear-gradient(135deg, #f1f5f9, #ffffff 70%);
    border-color: #cbd5e1;
}

.user-classifica-podio-3[b-h85xnlrobx] {
    order: 3;
    background: linear-gradient(135deg, #fed7aa, #ffffff 70%);
    border-color: #f97316;
}

.user-classifica-podio.user-classifica-io[b-h85xnlrobx] {
    box-shadow: 0 0 0 3px var(--wq-primary), 0 4px 14px rgba(79, 70, 229, 0.2);
}

.user-classifica-medaglia[b-h85xnlrobx] {
    font-size: 1.8rem;
    margin-bottom: 0.4rem;
}

.user-classifica-podio-1 .user-classifica-medaglia[b-h85xnlrobx] {
    color: #d97706;
}

.user-classifica-podio-2 .user-classifica-medaglia[b-h85xnlrobx] {
    color: #64748b;
}

.user-classifica-podio-3 .user-classifica-medaglia[b-h85xnlrobx] {
    color: #c2410c;
}

.user-classifica-podio-avatar[b-h85xnlrobx] {
    margin-bottom: 0.5rem;
}

.user-classifica-podio-nome[b-h85xnlrobx] {
    font-weight: 700;
    font-size: 0.9rem;
    color: var(--wq-ink);
    line-height: 1.2;
    margin-bottom: 0.35rem;
    word-break: break-word;
}

.user-classifica-podio-xp[b-h85xnlrobx] {
    font-size: 1.15rem;
    font-weight: 800;
    color: var(--wq-primary);
    font-variant-numeric: tabular-nums;
    line-height: 1;
    margin-bottom: 0.15rem;
}

.user-classifica-podio-prove[b-h85xnlrobx] {
    font-size: 0.72rem;
    color: var(--wq-muted);
}

/* Snip centrato: 5 righe intorno all'utente */
.user-classifica-snip[b-h85xnlrobx] {
    margin-top: 1.25rem;
    padding: 1rem;
    background: #f8fafc;
    border-radius: var(--wq-radius-md);
    border: 1px solid #eef2f7;
}

.user-classifica-snip-titolo[b-h85xnlrobx] {
    font-size: 0.82rem;
    color: var(--wq-muted);
    font-weight: 600;
    margin-bottom: 0.75rem;
    text-transform: uppercase;
    letter-spacing: 0.05em;
}

.user-classifica-riga[b-h85xnlrobx] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 0.6rem 0.85rem;
    background: #ffffff;
    border-radius: var(--wq-radius-md);
    margin-bottom: 0.4rem;
    border: 1px solid #eef2f7;
}

    .user-classifica-riga:last-child[b-h85xnlrobx] {
        margin-bottom: 0;
    }

    .user-classifica-riga.user-classifica-io[b-h85xnlrobx] {
        background: var(--wq-primary-soft);
        border-color: var(--wq-primary);
        box-shadow: 0 2px 6px rgba(79, 70, 229, 0.15);
    }

.user-classifica-riga-posizione[b-h85xnlrobx] {
    flex-shrink: 0;
    width: 30px;
    height: 30px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #ffffff;
    border: 1px solid #e2e8f0;
    border-radius: 50%;
    font-weight: 700;
    font-size: 0.85rem;
    color: var(--wq-ink);
    font-variant-numeric: tabular-nums;
}

.user-classifica-riga.user-classifica-io .user-classifica-riga-posizione[b-h85xnlrobx] {
    background: var(--wq-primary);
    color: #ffffff;
    border-color: var(--wq-primary);
}

.user-classifica-riga-avatar[b-h85xnlrobx] {
    flex-shrink: 0;
}

.user-classifica-riga-nome[b-h85xnlrobx] {
    flex: 1;
    min-width: 0;
    font-weight: 600;
    color: var(--wq-ink);
    display: flex;
    align-items: center;
    gap: 0.4rem;
    word-break: break-word;
}

.user-classifica-riga-xp[b-h85xnlrobx] {
    text-align: right;
    line-height: 1.2;
    font-variant-numeric: tabular-nums;
    flex-shrink: 0;
}

    .user-classifica-riga-xp strong[b-h85xnlrobx] {
        font-size: 1rem;
        color: var(--wq-primary);
    }

.user-classifica-riga-prove[b-h85xnlrobx] {
    display: block;
    font-size: 0.72rem;
    color: var(--wq-muted);
}

/* Badge "tu" per evidenziare la riga dell'utente corrente */
.user-classifica-io-badge[b-h85xnlrobx] {
    display: inline-block;
    padding: 0.1rem 0.5rem;
    background: var(--wq-primary);
    color: #ffffff;
    border-radius: var(--wq-radius-pill);
    font-size: 0.65rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.05em;
}

/* Empty state / CTA */
.user-classifica-empty[b-h85xnlrobx] {
    text-align: center;
    padding: 1.5rem;
    color: var(--wq-muted);
    background: #f8fafc;
    border-radius: var(--wq-radius-md);
}

    .user-classifica-empty i[b-h85xnlrobx] {
        font-size: 2rem;
        color: #cbd5e1;
        display: block;
        margin-bottom: 0.5rem;
    }

.user-classifica-cta[b-h85xnlrobx] {
    margin-top: 1rem;
}

.user-classifica-link[b-h85xnlrobx] {
    color: var(--wq-primary);
    font-weight: 700;
    text-decoration: none;
}

    .user-classifica-link:hover[b-h85xnlrobx] {
        text-decoration: underline;
    }

.user-classifica-totale[b-h85xnlrobx] {
    text-align: center;
    margin-top: 1rem;
    color: var(--wq-muted);
    font-size: 0.82rem;
}

/* Su mobile, podio in colonna singola per non stringere troppo */
@media (max-width: 560px) {
    .user-classifica-top3[b-h85xnlrobx] {
        grid-template-columns: 1fr;
    }

    .user-classifica-podio-1[b-h85xnlrobx],
    .user-classifica-podio-2[b-h85xnlrobx],
    .user-classifica-podio-3[b-h85xnlrobx] {
        order: initial;
        padding: 1rem;
    }
}

/* ---- Pannello generico dell'area utente ---- */
.user-panel[b-h85xnlrobx] {
    background: #ffffff;
    border: 1px solid #e2e8f0;
    border-radius: var(--wq-radius-lg);
    padding: 1.75rem;
    margin-bottom: 2rem;
    box-shadow: var(--wq-shadow-soft);
}

.user-panel-header[b-h85xnlrobx] {
    margin-bottom: 1.25rem;
}

    .user-panel-header h4[b-h85xnlrobx] {
        font-weight: 700;
        display: flex;
        align-items: center;
        margin-bottom: 0.25rem;
    }

/* ---- KPI grid del modulo statistiche ---- */
.user-kpi-grid[b-h85xnlrobx] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
    gap: 1rem;
}

.user-kpi[b-h85xnlrobx] {
    display: flex;
    gap: 1rem;
    padding: 1.25rem 1.4rem;
    background: #ffffff;
    border: 1px solid #e2e8f0;
    border-left: 4px solid;
    border-radius: var(--wq-radius-md);
}

.user-kpi-icon[b-h85xnlrobx] {
    flex-shrink: 0;
    width: 46px;
    height: 46px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.3rem;
}

.user-kpi-body[b-h85xnlrobx] {
    display: flex;
    flex-direction: column;
    line-height: 1.15;
    min-width: 0;
}

.user-kpi-label[b-h85xnlrobx] {
    font-size: 0.82rem;
    color: var(--wq-muted);
    margin-bottom: 0.35rem;
}

.user-kpi-body strong[b-h85xnlrobx] {
    font-size: 1.7rem;
    font-weight: 800;
    color: var(--wq-ink);
    font-variant-numeric: tabular-nums;
    line-height: 1;
}

.user-kpi-sub[b-h85xnlrobx] {
    font-size: 0.75rem;
    color: var(--wq-muted);
    margin-top: 0.4rem;
    line-height: 1.35;
}

.user-kpi-compare[b-h85xnlrobx] {
    display: inline-flex;
    align-items: center;
    gap: 0.15rem;
    font-size: 0.75rem;
    font-weight: 600;
    margin-top: 0.4rem;
    padding: 0.15rem 0.5rem;
    border-radius: var(--wq-radius-pill);
    align-self: flex-start;
}

.user-kpi-compare-positive[b-h85xnlrobx] {
    background: var(--wq-success-soft);
    color: var(--wq-success);
}

.user-kpi-compare-negative[b-h85xnlrobx] {
    background: var(--wq-danger-soft);
    color: var(--wq-danger);
}

/* Varianti di colore */
.user-kpi-success[b-h85xnlrobx] {
    border-left-color: var(--wq-success);
}

    .user-kpi-success .user-kpi-icon[b-h85xnlrobx] {
        background: var(--wq-success-soft);
        color: var(--wq-success);
    }

.user-kpi-primary[b-h85xnlrobx] {
    border-left-color: var(--wq-primary);
}

    .user-kpi-primary .user-kpi-icon[b-h85xnlrobx] {
        background: var(--wq-primary-soft);
        color: var(--wq-primary);
    }

.user-kpi-warning[b-h85xnlrobx] {
    border-left-color: var(--wq-warning);
}

    .user-kpi-warning .user-kpi-icon[b-h85xnlrobx] {
        background: var(--wq-warning-soft);
        color: var(--wq-warning);
    }

.user-kpi-info[b-h85xnlrobx] {
    border-left-color: #2563eb;
}

    .user-kpi-info .user-kpi-icon[b-h85xnlrobx] {
        background: #eff6ff;
        color: #2563eb;
    }

/* ---- Mappa delle competenze ---- */
.user-competenze-griglia[b-h85xnlrobx] {
    display: grid;
    grid-template-columns: 1fr;
    gap: 1.75rem;
}

@media (min-width: 820px) {
    .user-competenze-griglia[b-h85xnlrobx] {
        grid-template-columns: 1fr 1fr;
    }
}

.user-competenze-titolo[b-h85xnlrobx] {
    font-weight: 700;
    font-size: 0.95rem;
    color: var(--wq-ink);
    margin-bottom: 0.85rem;
    display: flex;
    align-items: center;
}

.user-competenza-riga[b-h85xnlrobx] {
    padding: 0.65rem 0;
    border-bottom: 1px solid #f1f5f9;
}

    .user-competenza-riga:last-child[b-h85xnlrobx] {
        border-bottom: none;
    }

.user-competenza-nome[b-h85xnlrobx] {
    display: flex;
    justify-content: space-between;
    align-items: baseline;
    font-size: 0.9rem;
    font-weight: 600;
    color: var(--wq-ink);
    margin-bottom: 0.4rem;
}

.user-competenza-conteggio[b-h85xnlrobx] {
    font-size: 0.75rem;
    color: var(--wq-muted);
    font-weight: 500;
    font-variant-numeric: tabular-nums;
}

.user-competenza-accuracy-wrapper[b-h85xnlrobx] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
}

.user-competenza-accuracy-track[b-h85xnlrobx] {
    flex: 1;
    height: 8px;
    background: #f1f5f9;
    border-radius: var(--wq-radius-pill);
    overflow: hidden;
}

.user-competenza-accuracy-fill[b-h85xnlrobx] {
    height: 100%;
    border-radius: var(--wq-radius-pill);
    transition: width 0.35s ease;
}

.user-competenza-fill-alto[b-h85xnlrobx] {
    background: linear-gradient(90deg, var(--wq-success), #059669);
}

.user-competenza-fill-medio[b-h85xnlrobx] {
    background: linear-gradient(90deg, var(--wq-warning), #d97706);
}

.user-competenza-fill-basso[b-h85xnlrobx] {
    background: linear-gradient(90deg, var(--wq-danger), #dc2626);
}

.user-competenza-percentuale[b-h85xnlrobx] {
    font-size: 0.85rem;
    font-weight: 700;
    color: var(--wq-ink);
    min-width: 48px;
    text-align: right;
    font-variant-numeric: tabular-nums;
}

/* ---- Storico prove ---- */
.user-storico-lista[b-h85xnlrobx] {
    display: flex;
    flex-direction: column;
    gap: 0.6rem;
}

.user-storico-riga[b-h85xnlrobx] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 1rem;
    padding: 1rem 1.15rem;
    background: #f8fafc;
    border-radius: var(--wq-radius-md);
    border: 1px solid #eef2f7;
    flex-wrap: wrap;
}

.user-storico-info[b-h85xnlrobx] {
    flex: 1;
    min-width: 220px;
}

.user-storico-titolo[b-h85xnlrobx] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-size: 1rem;
    color: var(--wq-ink);
    margin-bottom: 0.25rem;
    flex-wrap: wrap;
}

.user-storico-meta[b-h85xnlrobx] {
    font-size: 0.82rem;
    color: var(--wq-muted);
}

.user-storico-separatore[b-h85xnlrobx] {
    margin: 0 0.5rem;
    color: #cbd5e1;
}

.user-storico-punteggio[b-h85xnlrobx] {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    text-align: right;
    min-width: 130px;
}

.user-storico-punteggio-label[b-h85xnlrobx] {
    font-size: 0.72rem;
    color: var(--wq-muted);
    text-transform: uppercase;
    letter-spacing: 0.05em;
}

.user-storico-punteggio strong[b-h85xnlrobx] {
    font-size: 1.4rem;
    font-weight: 800;
    color: var(--wq-ink);
    font-variant-numeric: tabular-nums;
    line-height: 1.1;
}

.user-storico-soglia[b-h85xnlrobx] {
    font-size: 0.72rem;
    color: var(--wq-muted);
    font-style: italic;
    margin-top: 0.1rem;
}

.user-storico-badge-superata[b-h85xnlrobx] {
    background: var(--wq-success-soft);
    color: var(--wq-success);
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    font-size: 0.72rem;
}

.user-storico-badge-non-superata[b-h85xnlrobx] {
    background: var(--wq-danger-soft);
    color: var(--wq-danger);
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    font-size: 0.72rem;
}

.user-storico-paginazione[b-h85xnlrobx] {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 1rem;
    margin-top: 1.25rem;
}

.user-storico-paginazione-info[b-h85xnlrobx] {
    font-size: 0.9rem;
    color: var(--wq-muted);
}

/* ---- Empty state (nessuna prova ancora completata) ---- */
.user-dashboard-empty[b-h85xnlrobx] {
    text-align: center;
    padding: 3rem 1.5rem;
}

.user-dashboard-empty-icon[b-h85xnlrobx] {
    font-size: 3.5rem;
    color: var(--wq-primary);
    background: var(--wq-primary-soft);
    width: 90px;
    height: 90px;
    border-radius: 50%;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 1rem;
}

.user-dashboard-empty h3[b-h85xnlrobx] {
    font-weight: 700;
    color: var(--wq-ink);
    margin-bottom: 0.5rem;
}

/* ---- Sezione Impostazioni (Turno C) ---- */
.user-panel-impostazioni[b-h85xnlrobx] {
    padding: 1.75rem;
}

.user-notifiche-form[b-h85xnlrobx] {
    margin-top: 0.5rem;
}

/* Toggle switch: label che avvolge input + span "track" */
.user-toggle-wrapper[b-h85xnlrobx] {
    display: flex;
    align-items: flex-start;
    gap: 0.9rem;
    cursor: pointer;
    padding: 0.5rem 0;
}

.user-toggle-input[b-h85xnlrobx] {
    /* Nascondo il checkbox nativo ma lo lascio accessibile per screen reader e keyboard */
    position: absolute;
    opacity: 0;
    pointer-events: none;
}

.user-toggle-switch[b-h85xnlrobx] {
    flex-shrink: 0;
    position: relative;
    width: 46px;
    height: 26px;
    background: #cbd5e1;
    border-radius: var(--wq-radius-pill);
    transition: background 0.2s ease;
    margin-top: 0.15rem;
}

    .user-toggle-switch[b-h85xnlrobx]::after {
        content: '';
        position: absolute;
        top: 3px;
        left: 3px;
        width: 20px;
        height: 20px;
        background: #ffffff;
        border-radius: 50%;
        transition: transform 0.2s ease;
        box-shadow: 0 1px 3px rgba(0, 0, 0, 0.15);
    }

.user-toggle-input:checked + .user-toggle-switch[b-h85xnlrobx] {
    background: var(--wq-primary);
}

    .user-toggle-input:checked + .user-toggle-switch[b-h85xnlrobx]::after {
        transform: translateX(20px);
    }

.user-toggle-input:focus-visible + .user-toggle-switch[b-h85xnlrobx] {
    outline: 2px solid var(--wq-primary);
    outline-offset: 3px;
}

.user-toggle-testo[b-h85xnlrobx] {
    flex: 1;
    line-height: 1.4;
}

    .user-toggle-testo strong[b-h85xnlrobx] {
        color: var(--wq-ink);
        font-size: 0.95rem;
    }

    .user-toggle-testo small[b-h85xnlrobx] {
        font-size: 0.78rem;
        margin-top: 0.15rem;
    }

/* Notifica "salvato" */
.user-notifica-salvato[b-h85xnlrobx] {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.6rem 1rem;
    background: var(--wq-success-soft);
    color: var(--wq-success);
    border-radius: var(--wq-radius-md);
    font-size: 0.9rem;
    font-weight: 500;
    margin-bottom: 1rem;
}

    .user-notifica-salvato i[b-h85xnlrobx] {
        font-size: 1.1rem;
    }
/* /Components/Account/Shared/AccountLayout.razor.rz.scp.css */
.account-page[b-egyjtw0p9v] {
    min-height: 100vh;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 2.5rem 1rem;
    background: var(--wq-bg);
}

.account-brand[b-egyjtw0p9v] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    text-decoration: none;
    color: var(--wq-ink);
    font-weight: 800;
    font-size: 1.2rem;
    margin-bottom: 1.5rem;
}

.account-brand-icon[b-egyjtw0p9v] {
    width: 38px;
    height: 38px;
    border-radius: var(--wq-radius-md);
    background: var(--wq-primary);
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.05rem;
}

.account-card[b-egyjtw0p9v] {
    width: 100%;
    max-width: 440px;
    padding: 2.25rem;
}

.account-footer-note[b-egyjtw0p9v] {
    margin-top: 1.5rem;
    color: var(--wq-muted);
    font-size: 0.85rem;
    text-align: center;
}
/* /Components/Account/Shared/Avatar.razor.rz.scp.css */
.wq-avatar[b-4ok3nsol19] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: #ffffff;
    font-weight: 700;
    border-radius: 50%;
    flex-shrink: 0;
    line-height: 1;
    letter-spacing: -0.02em;
    user-select: none;
    box-shadow: 0 2px 6px rgba(15, 23, 42, 0.08);
}

.wq-avatar-sm[b-4ok3nsol19] {
    width: 32px;
    height: 32px;
    font-size: 0.9rem;
}

.wq-avatar-md[b-4ok3nsol19] {
    width: 48px;
    height: 48px;
    font-size: 1.2rem;
}

.wq-avatar-lg[b-4ok3nsol19] {
    width: 72px;
    height: 72px;
    font-size: 1.9rem;
}

.wq-avatar-xl[b-4ok3nsol19] {
    width: 108px;
    height: 108px;
    font-size: 2.8rem;
    box-shadow: 0 4px 16px rgba(15, 23, 42, 0.12);
}
/* /Components/Account/Shared/GraficoAndamento.razor.rz.scp.css */
.wq-grafico-wrapper[b-ol85hunag4] {
    width: 100%;
}

    .wq-grafico-wrapper svg[b-ol85hunag4] {
        width: 100%;
        height: auto;
        display: block;
        max-height: 260px;
    }

.wq-grafico-asse-x[b-ol85hunag4] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0.35rem 0.75rem 0;
    font-size: 0.78rem;
    color: var(--wq-muted);
    font-variant-numeric: tabular-nums;
}

.wq-grafico-empty[b-ol85hunag4] {
    padding: 2rem 1rem;
    text-align: center;
    color: var(--wq-muted);
    background: #f8fafc;
    border-radius: var(--wq-radius-md);
}

    .wq-grafico-empty i[b-ol85hunag4] {
        font-size: 2rem;
        color: #cbd5e1;
        display: block;
        margin-bottom: 0.5rem;
    }
/* /Components/Layout/ConcorsoSelezionePopup.razor.rz.scp.css */
.concorso-popup-overlay[b-p46yre6x0k] {
    position: fixed;
    inset: 0;
    background-color: rgba(15, 23, 42, 0.55);
    backdrop-filter: blur(4px);
    -webkit-backdrop-filter: blur(4px);
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 2000;
    animation: wq-fade-in 0.2s ease-out;
}

.concorso-popup-modal[b-p46yre6x0k] {
    background: var(--wq-card-bg, #fff);
    border-radius: var(--wq-radius-lg, 15px);
    padding: 2rem;
    max-width: 480px;
    width: 90%;
    box-shadow: var(--wq-shadow-elevated, 0 10px 25px -5px rgba(0,0,0,0.2));
}

.concorso-popup-modal h3[b-p46yre6x0k] {
    margin-top: 0;
    font-weight: 800;
}

.concorso-popup-modal select.form-select[b-p46yre6x0k] {
    border-radius: var(--wq-radius-md, 12px);
    padding: 0.65rem 0.9rem;
}
/* /Components/Layout/MainLayout.razor.rz.scp.css */
.wq-app-shell[b-8199gjw92o] {
    min-height: 100vh;
    display: flex;
    flex-direction: column;
}

.wq-topbar[b-8199gjw92o] {
    position: sticky;
    top: 0;
    z-index: 1030;
    background: #ffffff;
    border-bottom: 1px solid #e2e8f0;
    box-shadow: 0 1px 3px rgba(15, 23, 42, 0.04);
}

.wq-topbar-inner[b-8199gjw92o] {
    max-width: 1100px;
    margin: 0 auto;
    padding: 0.65rem 1.25rem;
    display: flex;
    align-items: center;
    gap: 1.5rem;
}

.wq-brand[b-8199gjw92o] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    text-decoration: none;
    color: var(--wq-ink);
    font-weight: 800;
    font-size: 1.15rem;
    flex-shrink: 0;
}

.wq-brand-icon[b-8199gjw92o] {
    width: 34px;
    height: 34px;
    border-radius: var(--wq-radius-md);
    background: var(--wq-primary);
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1rem;
}

.wq-brand-text[b-8199gjw92o] {
    letter-spacing: -0.01em;
}

.wq-topbar-user[b-8199gjw92o] {
    margin-left: auto;
    display: flex;
    align-items: center;
    gap: 0.6rem;
}

.wq-user-chip[b-8199gjw92o] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.25rem 0.6rem 0.25rem 0.25rem;
    background: var(--wq-primary-soft);
    border-radius: var(--wq-radius-pill);
}

.wq-user-avatar[b-8199gjw92o] {
    width: 28px;
    height: 28px;
    border-radius: 50%;
    background: var(--wq-primary);
    color: #fff;
    font-weight: 700;
    font-size: 0.8rem;
    display: flex;
    align-items: center;
    justify-content: center;
}

.wq-user-name[b-8199gjw92o] {
    font-weight: 600;
    font-size: 0.85rem;
    color: var(--wq-ink);
}

.wq-logout-btn[b-8199gjw92o] {
    border-radius: var(--wq-radius-pill);
}

.wq-main[b-8199gjw92o] {
    flex: 1;
    padding-bottom: 3rem;
}

@media (max-width: 700px) {
    .wq-topbar-inner[b-8199gjw92o] {
        flex-wrap: wrap;
        gap: 0.75rem;
    }
}

/* ---- Footer minimale con contatti ---- */
.wq-footer[b-8199gjw92o] {
    background: #f8fafc;
    border-top: 1px solid #e2e8f0;
    padding: 1.25rem 1.5rem;
    margin-top: auto;
}

.wq-footer-inner[b-8199gjw92o] {
    max-width: 1200px;
    margin: 0 auto;
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 1rem;
    flex-wrap: wrap;
    font-size: 0.85rem;
}

.wq-footer-brand[b-8199gjw92o] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    color: var(--wq-ink);
    font-weight: 600;
}

.wq-footer-brand-icon[b-8199gjw92o] {
    color: var(--wq-primary);
    font-size: 1.1rem;
}

.wq-footer-tagline[b-8199gjw92o] {
    color: var(--wq-muted);
    font-weight: 400;
    font-size: 0.8rem;
}

.wq-footer-links[b-8199gjw92o] {
    display: flex;
    align-items: center;
    gap: 1.25rem;
    flex-wrap: wrap;
}

    .wq-footer-links a[b-8199gjw92o] {
        display: inline-flex;
        align-items: center;
        gap: 0.35rem;
        color: var(--wq-muted);
        text-decoration: none;
        transition: color 0.15s ease;
    }

        .wq-footer-links a:hover[b-8199gjw92o] {
            color: var(--wq-primary);
        }

@media (max-width: 560px) {
    .wq-footer-inner[b-8199gjw92o] {
        flex-direction: column;
        text-align: center;
    }
}
/* /Components/Layout/NavMenu.razor.rz.scp.css */
.wq-nav[b-mvyttp7g2k] {
    display: flex;
    align-items: center;
    gap: 0.25rem;
}

.wq-nav-link[b-mvyttp7g2k] {
    display: inline-flex;
    align-items: center;
    gap: 0.4rem;
    padding: 0.45rem 0.9rem;
    border-radius: var(--wq-radius-pill);
    color: var(--wq-muted);
    font-weight: 600;
    font-size: 0.9rem;
    text-decoration: none;
    transition: background-color 0.15s ease, color 0.15s ease;
}

.wq-nav-link:hover[b-mvyttp7g2k] {
    background: #f1f5f9;
    color: var(--wq-ink);
}

.wq-nav-link.active[b-mvyttp7g2k] {
    background: var(--wq-primary-soft);
    color: var(--wq-primary-dark);
}
/* /Components/Pages/Admin/AdminDashboard.razor.rz.scp.css */
/* ---- Modulo generico ---- */
.dashboard-modulo[b-xm9y16skbr] {
    margin-bottom: 1.5rem;
}

.dashboard-modulo-header[b-xm9y16skbr] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 1rem;
    flex-wrap: wrap;
    margin-bottom: 1.25rem;
}

    .dashboard-modulo-header h4[b-xm9y16skbr] {
        font-weight: 700;
        display: flex;
        align-items: center;
    }

.dashboard-filtro-inline[b-xm9y16skbr] {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 0.5rem;
}

/* ---- KPI grid: 3 tessere per il modulo Performance, 2 per gli altri ---- */
.dashboard-kpi-grid[b-xm9y16skbr] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
    gap: 1rem;
}

.dashboard-kpi[b-xm9y16skbr] {
    display: flex;
    align-items: center;
    gap: 1rem;
    padding: 1.25rem 1.4rem;
    border-radius: var(--wq-radius-md);
    border-left: 4px solid;
    background: #ffffff;
    border: 1px solid #e2e8f0;
}

.dashboard-kpi-icon[b-xm9y16skbr] {
    flex-shrink: 0;
    width: 46px;
    height: 46px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.3rem;
}

.dashboard-kpi-testo[b-xm9y16skbr] {
    display: flex;
    flex-direction: column;
    line-height: 1.1;
}

.dashboard-kpi-label[b-xm9y16skbr] {
    font-size: 0.82rem;
    color: var(--wq-muted);
    margin-bottom: 0.3rem;
}

.dashboard-kpi-testo strong[b-xm9y16skbr] {
    font-size: 1.7rem;
    font-weight: 800;
    color: var(--wq-ink);
    font-variant-numeric: tabular-nums;
    line-height: 1;
}

/* Varianti di colore per le tessere: sfondo pastello + accento del bordo. */
.dashboard-kpi-primary[b-xm9y16skbr] {
    border-left-color: var(--wq-primary);
}

    .dashboard-kpi-primary .dashboard-kpi-icon[b-xm9y16skbr] {
        background: var(--wq-primary-soft);
        color: var(--wq-primary);
    }

.dashboard-kpi-success[b-xm9y16skbr] {
    border-left-color: var(--wq-success);
}

    .dashboard-kpi-success .dashboard-kpi-icon[b-xm9y16skbr] {
        background: var(--wq-success-soft);
        color: var(--wq-success);
    }

.dashboard-kpi-warning[b-xm9y16skbr] {
    border-left-color: var(--wq-warning);
}

    .dashboard-kpi-warning .dashboard-kpi-icon[b-xm9y16skbr] {
        background: var(--wq-warning-soft);
        color: var(--wq-warning);
    }

.dashboard-kpi-danger[b-xm9y16skbr] {
    border-left-color: var(--wq-danger);
}

    .dashboard-kpi-danger .dashboard-kpi-icon[b-xm9y16skbr] {
        background: var(--wq-danger-soft);
        color: var(--wq-danger);
    }

.dashboard-kpi-info[b-xm9y16skbr] {
    border-left-color: #2563eb;
}

    .dashboard-kpi-info .dashboard-kpi-icon[b-xm9y16skbr] {
        background: #eff6ff;
        color: #2563eb;
    }

/* ---- Mini grafico a barre CSS-only (nessuna dipendenza JS) ---- */
.dashboard-mini-chart[b-xm9y16skbr] {
    margin-top: 1.25rem;
    padding: 1rem;
    background: #f8fafc;
    border-radius: var(--wq-radius-md);
}

.dashboard-mini-chart-bars[b-xm9y16skbr] {
    display: flex;
    align-items: flex-end;
    gap: 3px;
    height: 100px;
}

.dashboard-mini-chart-bar-wrapper[b-xm9y16skbr] {
    flex: 1;
    height: 100%;
    display: flex;
    align-items: flex-end;
    cursor: help;
}

.dashboard-mini-chart-bar[b-xm9y16skbr] {
    width: 100%;
    background: linear-gradient(180deg, var(--wq-primary), var(--wq-primary-dark));
    border-radius: 3px 3px 0 0;
    min-height: 2px;
    transition: opacity 0.15s ease;
}

.dashboard-mini-chart-bar-wrapper:hover .dashboard-mini-chart-bar[b-xm9y16skbr] {
    opacity: 0.75;
}

.dashboard-mini-chart-axis[b-xm9y16skbr] {
    display: flex;
    justify-content: space-between;
    margin-top: 0.5rem;
    font-size: 0.75rem;
    color: var(--wq-muted);
}

/* ---- Elenco nuovi iscritti (Modulo 2, sezione collassabile) ---- */
.dashboard-toggle-elenco[b-xm9y16skbr] {
    display: inline-flex;
    align-items: center;
    gap: 0.4rem;
    border-radius: var(--wq-radius-pill);
    font-weight: 600;
}

.dashboard-elenco-nuovi[b-xm9y16skbr] {
    display: flex;
    flex-direction: column;
    gap: 0.4rem;
    max-height: 380px;
    overflow-y: auto;
    padding: 0.75rem;
    background: #f8fafc;
    border-radius: var(--wq-radius-md);
}

.dashboard-nuovo-utente-riga[b-xm9y16skbr] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 1rem;
    padding: 0.6rem 0.85rem;
    background: #ffffff;
    border-radius: var(--wq-radius-sm);
    border: 1px solid #e2e8f0;
    flex-wrap: wrap;
}

.dashboard-nuovo-utente-info[b-xm9y16skbr] {
    display: flex;
    flex-direction: column;
    line-height: 1.3;
    min-width: 180px;
}

    .dashboard-nuovo-utente-info strong[b-xm9y16skbr] {
        color: var(--wq-ink);
        font-size: 0.95rem;
    }

.dashboard-nuovo-utente-meta[b-xm9y16skbr] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    flex-wrap: wrap;
    justify-content: flex-end;
}

.dashboard-badge-confermato[b-xm9y16skbr] {
    background: var(--wq-success-soft);
    color: var(--wq-success);
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
}

.dashboard-badge-in-attesa[b-xm9y16skbr] {
    background: var(--wq-warning-soft);
    color: var(--wq-warning);
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
}

/* ---- Icona che ruota durante il refresh del modulo Live ---- */
.dashboard-spin[b-xm9y16skbr] {
    animation: dashboard-spin-b-xm9y16skbr 0.9s linear infinite;
    display: inline-block;
}

@keyframes dashboard-spin-b-xm9y16skbr {
    from {
        transform: rotate(0deg);
    }

    to {
        transform: rotate(360deg);
    }
}

/* ---- Lista sessioni in corso ---- */
.dashboard-sessioni-lista[b-xm9y16skbr] {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}

.dashboard-sessione-riga[b-xm9y16skbr] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    padding: 0.85rem 1rem;
    background: #f8fafc;
    border-radius: var(--wq-radius-md);
    flex-wrap: wrap;
}

.dashboard-sessione-testo[b-xm9y16skbr] {
    flex: 1;
    min-width: 200px;
}

.dashboard-sessione-progress[b-xm9y16skbr] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    min-width: 180px;
}

.dashboard-sessione-progress-track[b-xm9y16skbr] {
    flex: 1;
    height: 6px;
    background: #e2e8f0;
    border-radius: var(--wq-radius-pill);
    overflow: hidden;
}

.dashboard-sessione-progress-fill[b-xm9y16skbr] {
    height: 100%;
    background: linear-gradient(90deg, var(--wq-primary), var(--wq-primary-dark));
    transition: width 0.35s ease;
}

/* ---- Stato vuoto (nessun dato per il filtro selezionato) ---- */
.dashboard-empty-state[b-xm9y16skbr] {
    padding: 1.75rem 1rem;
    text-align: center;
    color: var(--wq-muted);
}

    .dashboard-empty-state i[b-xm9y16skbr] {
        font-size: 2rem;
        color: #cbd5e1;
        display: block;
        margin-bottom: 0.5rem;
    }
/* /Components/Pages/Admin/AdminIndex.razor.rz.scp.css */
.admin-index-grid[b-nyc1kpru8e] {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1.25rem;
}

@media (min-width: 900px) {
    .admin-index-grid[b-nyc1kpru8e] {
        grid-template-columns: repeat(4, minmax(0, 1fr));
    }
}

@media (max-width: 500px) {
    .admin-index-grid[b-nyc1kpru8e] {
        grid-template-columns: 1fr;
    }
}

.admin-index-card[b-nyc1kpru8e] {
    text-decoration: none;
    color: inherit;
    transition: transform 0.15s ease, box-shadow 0.15s ease;
}

    .admin-index-card:hover[b-nyc1kpru8e] {
        transform: translateY(-3px);
        box-shadow: var(--wq-shadow-elevated, 0 10px 25px -5px rgba(0,0,0,0.15));
    }

.admin-index-icon[b-nyc1kpru8e] {
    width: 52px;
    height: 52px;
    border-radius: var(--wq-radius-md, 12px);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.4rem;
    margin-bottom: 1rem;
}

.admin-index-icon-primary[b-nyc1kpru8e] {
    background: var(--wq-primary-soft, #eef2ff);
    color: var(--wq-primary, #4f46e5);
}

.admin-index-icon-success[b-nyc1kpru8e] {
    background: var(--wq-success-soft, #ecfdf5);
    color: var(--wq-success, #10b981);
}

.admin-index-icon-warning[b-nyc1kpru8e] {
    background: var(--wq-warning-soft, #fffbeb);
    color: var(--wq-warning, #f59e0b);
}

.admin-index-icon-info[b-nyc1kpru8e] {
    background: #eff6ff;
    color: #2563eb;
}
/* /Components/Pages/Admin/DomandaForm.razor.rz.scp.css */
.admin-risposta-corretta-group[b-r0dtdn308c] {
    display: flex;
    gap: 0.6rem;
    flex-wrap: wrap;
}

.admin-risposta-corretta-chip[b-r0dtdn308c] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 52px;
    height: 52px;
    border-radius: var(--wq-radius-md, 12px);
    border: 2px solid #e2e8f0;
    font-weight: 800;
    font-size: 1.1rem;
    color: var(--wq-muted, #64748b);
    cursor: pointer;
    transition: border-color 0.15s ease, background-color 0.15s ease, color 0.15s ease;
}

.admin-risposta-corretta-chip:hover[b-r0dtdn308c] {
    border-color: var(--wq-primary, #4f46e5);
}

.admin-risposta-corretta-chip-attiva[b-r0dtdn308c] {
    background: var(--wq-success, #10b981);
    border-color: var(--wq-success, #10b981);
    color: #fff;
}
/* /Components/Pages/Contatti.razor.rz.scp.css */
.contatti-container[b-d29wznl303] {
    max-width: 850px;
    margin: 0 auto;
    padding: 2rem 1rem 3rem;
    line-height: 1.65;
}

.contatti-header[b-d29wznl303] {
    margin-bottom: 2rem;
    padding-bottom: 1.5rem;
    border-bottom: 1px solid #e2e8f0;
}

    .contatti-header h1[b-d29wznl303] {
        font-weight: 800;
        letter-spacing: -0.02em;
        margin-bottom: 0.35rem;
    }

.contatti-sezione[b-d29wznl303] {
    background: #ffffff;
    border: 1px solid #e2e8f0;
    border-radius: var(--wq-radius-lg);
    padding: 2rem;
    margin-bottom: 1.5rem;
    box-shadow: var(--wq-shadow-soft);
}

    .contatti-sezione h2[b-d29wznl303] {
        font-weight: 800;
        font-size: 1.4rem;
        letter-spacing: -0.01em;
        margin-bottom: 1rem;
        color: var(--wq-ink);
        display: flex;
        align-items: center;
    }

    .contatti-sezione h3[b-d29wznl303] {
        font-weight: 700;
        font-size: 1.05rem;
        color: var(--wq-ink);
        margin-top: 1.75rem;
        margin-bottom: 0.6rem;
        letter-spacing: -0.005em;
    }

    .contatti-sezione p[b-d29wznl303] {
        color: #334155;
        margin-bottom: 0.85rem;
    }

    .contatti-sezione ul[b-d29wznl303] {
        padding-left: 1.5rem;
        color: #334155;
        margin-bottom: 0.85rem;
    }

        .contatti-sezione ul li[b-d29wznl303] {
            margin-bottom: 0.5rem;
        }

    .contatti-sezione a[b-d29wznl303] {
        color: var(--wq-primary);
        text-decoration: none;
        font-weight: 500;
    }

        .contatti-sezione a:hover[b-d29wznl303] {
            text-decoration: underline;
        }

/* ---- Box email in evidenza ---- */
.contatti-email-box[b-d29wznl303] {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.75rem 1.25rem;
    background: var(--wq-primary-soft);
    border-radius: var(--wq-radius-pill);
    font-size: 1.05rem;
    font-weight: 600;
    margin: 0.5rem 0;
}

    .contatti-email-box i[b-d29wznl303] {
        color: var(--wq-primary);
        font-size: 1.3rem;
    }

    .contatti-email-box a[b-d29wznl303] {
        color: var(--wq-primary);
        font-weight: 700;
    }

/* ---- Sezione privacy: tono un po' più formale ---- */
.contatti-sezione-privacy[b-d29wznl303] {
    background: linear-gradient(180deg, #ffffff 0%, #fafbff 100%);
}

    .contatti-sezione-privacy p[b-d29wznl303] {
        font-size: 0.94rem;
    }

/* ---- Footer con data aggiornamento ---- */
.contatti-footer[b-d29wznl303] {
    text-align: center;
    padding: 1rem;
    margin-top: 1rem;
}

@media (max-width: 700px) {
    .contatti-sezione[b-d29wznl303] {
        padding: 1.5rem 1.25rem;
    }

        .contatti-sezione h2[b-d29wznl303] {
            font-size: 1.2rem;
        }
}
/* /Components/Pages/Index.razor.rz.scp.css */
.home-container[b-b583jxrh7j] {
    max-width: 860px;
    margin: 0 auto;
    padding: 2rem 1rem 3rem;
}

/* ---- Banner cookie informativo (uso solo cookie tecnici, no consenso richiesto) ---- */
.home-cookie-banner[b-b583jxrh7j] {
    display: flex;
    align-items: center;
    gap: 1rem;
    padding: 1rem 1.25rem;
    margin-bottom: 2rem;
    background: #ffffff;
    border: 1px solid #e2e8f0;
    border-left: 4px solid var(--wq-success);
    border-radius: var(--wq-radius-md);
    box-shadow: var(--wq-shadow-soft);
}

.home-cookie-icon[b-b583jxrh7j] {
    flex-shrink: 0;
    width: 36px;
    height: 36px;
    border-radius: 50%;
    background: var(--wq-success-soft);
    color: var(--wq-success);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.1rem;
}

.home-cookie-testo[b-b583jxrh7j] {
    flex: 1;
    font-size: 0.9rem;
    line-height: 1.5;
    color: var(--wq-ink);
}

.home-cookie-btn[b-b583jxrh7j] {
    flex-shrink: 0;
    border-radius: var(--wq-radius-pill);
    font-weight: 600;
    white-space: nowrap;
}

@media (max-width: 640px) {
    .home-cookie-banner[b-b583jxrh7j] {
        flex-wrap: wrap;
    }

    .home-cookie-btn[b-b583jxrh7j] {
        width: 100%;
    }
}

/* ---- Hero pubblico ---- */
.home-hero[b-b583jxrh7j] {
    text-align: center;
    padding: 2.5rem 1rem 2rem;
}

    .home-hero h1[b-b583jxrh7j] {
        font-size: 2.4rem;
        font-weight: 800;
        line-height: 1.2;
        margin-bottom: 1rem;
        color: var(--wq-ink);
    }

.home-hero-highlight[b-b583jxrh7j] {
    color: var(--wq-primary);
}

.home-hero-sub[b-b583jxrh7j] {
    color: var(--wq-muted);
    font-size: 1.1rem;
    max-width: 600px;
    margin: 0 auto 1.5rem;
}

.home-hero-cta[b-b583jxrh7j] {
    display: flex;
    justify-content: center;
    gap: 0.75rem;
    flex-wrap: wrap;
}

/* ---- Card benefici ---- */
.home-benefits[b-b583jxrh7j] {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 1.25rem;
    margin-top: 1rem;
}

@media (max-width: 760px) {
    .home-benefits[b-b583jxrh7j] {
        grid-template-columns: 1fr;
    }
}

.home-benefit-card[b-b583jxrh7j] {
    padding: 1.75rem 1.5rem;
    text-align: center;
}

.home-benefit-icon[b-b583jxrh7j] {
    width: 56px;
    height: 56px;
    border-radius: var(--wq-radius-md);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.5rem;
    margin: 0 auto 1rem;
}

.home-benefit-icon-primary[b-b583jxrh7j] {
    background: var(--wq-primary-soft);
    color: var(--wq-primary);
}

.home-benefit-icon-success[b-b583jxrh7j] {
    background: var(--wq-success-soft);
    color: var(--wq-success);
}

.home-benefit-icon-warning[b-b583jxrh7j] {
    background: var(--wq-warning-soft);
    color: var(--wq-warning);
}

.home-benefit-card h4[b-b583jxrh7j] {
    font-weight: 700;
    margin-bottom: 0.4rem;
}

/* ---- Dashboard candidato ---- */
.home-dashboard[b-b583jxrh7j] {
    padding: 2rem;
    border-left: 5px solid var(--wq-primary);
    margin-bottom: 2rem;
}

.home-dashboard-header[b-b583jxrh7j] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 1rem;
    flex-wrap: wrap;
}

.home-badge-attivo[b-b583jxrh7j] {
    background: var(--wq-primary-soft);
    color: var(--wq-primary-dark);
    margin-bottom: 0.6rem;
}

.home-concorso-nome[b-b583jxrh7j] {
    font-weight: 800;
    margin: 0.25rem 0;
}

.home-materie-tags[b-b583jxrh7j] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.4rem;
    margin-top: 0.5rem;
}

.home-tag-badge[b-b583jxrh7j] {
    font-size: 0.75rem;
}

.home-cambia-btn[b-b583jxrh7j] {
    border-radius: var(--wq-radius-pill);
    flex-shrink: 0;
}

.home-concorso-specifiche[b-b583jxrh7j] {
    display: flex;
    gap: 2.5rem;
    margin: 1.5rem 0;
}

.home-specifica[b-b583jxrh7j] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
}

    .home-specifica i[b-b583jxrh7j] {
        font-size: 1.5rem;
        color: var(--wq-primary);
    }

    .home-specifica strong[b-b583jxrh7j] {
        display: block;
        font-size: 1.35rem;
        font-weight: 800;
        line-height: 1.1;
    }

    .home-specifica span[b-b583jxrh7j] {
        color: var(--wq-muted);
        font-size: 0.82rem;
    }

.home-avvia-btn[b-b583jxrh7j] {
    width: 100%;
    padding: 1rem;
    font-size: 1.1rem;
}

/* ---- Storico tentativi (lista, non tabella) ---- */
.home-storico[b-b583jxrh7j] {
    padding: 1.75rem;
}

.home-section-title[b-b583jxrh7j] {
    font-weight: 700;
    font-size: 1.1rem;
    margin-bottom: 1rem;
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.home-storico-lista[b-b583jxrh7j] {
    list-style: none;
    margin: 0;
    padding: 0;
}

.home-storico-riga[b-b583jxrh7j] {
    display: flex;
    align-items: center;
    gap: 1rem;
    padding: 0.85rem 0.5rem;
    border-bottom: 1px solid #f1f5f9;
}

    .home-storico-riga:last-child[b-b583jxrh7j] {
        border-bottom: none;
    }

.home-storico-data[b-b583jxrh7j] {
    color: var(--wq-muted);
    font-size: 0.85rem;
    display: flex;
    align-items: center;
    gap: 0.4rem;
    min-width: 160px;
}

.home-storico-nome[b-b583jxrh7j] {
    flex: 1;
    font-weight: 600;
}

.home-storico-punteggio[b-b583jxrh7j] {
    flex-shrink: 0;
    text-align: right;
    min-width: 80px;
}

.home-score-badge[b-b583jxrh7j] {
    background: var(--wq-success-soft);
    color: #047857;
}

.home-empty-state[b-b583jxrh7j] {
    text-align: center;
    padding: 2rem 1rem;
    color: var(--wq-muted);
}

    .home-empty-state i[b-b583jxrh7j] {
        font-size: 2rem;
        color: var(--wq-warning);
        display: block;
        margin-bottom: 0.5rem;
    }

.home-hero-card[b-b583jxrh7j] {
    padding: 3rem 2rem;
    margin-bottom: 2rem;
}

.home-hero-icon[b-b583jxrh7j] {
    font-size: 2.5rem;
    color: var(--wq-primary);
    margin-bottom: 1rem;
    display: block;
}

/* ---- Donazioni ---- */
.home-donazioni[b-b583jxrh7j] {
    padding: 2rem;
    margin-bottom: 2rem;
    border-left: 5px solid var(--wq-success);
}

.home-donazioni-header[b-b583jxrh7j] {
    display: flex;
    gap: 1rem;
    align-items: flex-start;
    margin-bottom: 1rem;
}

.home-donazioni-icon[b-b583jxrh7j] {
    width: 48px;
    height: 48px;
    flex-shrink: 0;
    border-radius: 50%;
    background: var(--wq-success-soft);
    color: var(--wq-success);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.3rem;
}

.home-donazione-importi[b-b583jxrh7j] {
    display: flex;
    gap: 0.75rem;
    flex-wrap: wrap;
    align-items: center;
    margin: 1rem 0;
}

.home-importo-btn[b-b583jxrh7j] {
    border-radius: var(--wq-radius-pill);
    font-weight: 700;
    padding: 0.5rem 1.25rem;
}

.home-donazione-custom[b-b583jxrh7j] {
    display: flex;
    gap: 0.5rem;
    align-items: center;
}

    .home-donazione-custom input[b-b583jxrh7j] {
        max-width: 110px;
    }

.home-dona-btn[b-b583jxrh7j] {
    border-radius: var(--wq-radius-pill);
    font-weight: 700;
    white-space: nowrap;
}

.home-donazione-nota[b-b583jxrh7j] {
    font-size: 0.82rem;
    color: var(--wq-muted);
    margin: 0.5rem 0 0;
}
/* /Components/Pages/QuizEngine.razor.rz.scp.css */
.quiz-stato-caricamento[b-1ukv9idtz2] {
    max-width: 500px;
    margin: 4rem auto;
    text-align: center;
}

    .quiz-stato-caricamento .spinner-border[b-1ukv9idtz2] {
        margin-bottom: 1rem;
    }

.quiz-container[b-1ukv9idtz2] {
    max-width: 780px;
    margin: 1.5rem auto 6rem;
    padding: 0 1rem;
}

/* ---- Header fisso: nome concorso, progress bar, timer ---- */
.quiz-header[b-1ukv9idtz2] {
    padding: 1.25rem 1.5rem;
    margin-bottom: 1.5rem;
    position: sticky;
    top: 70px;
    z-index: 900;
}

.quiz-header-top[b-1ukv9idtz2] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    flex-wrap: wrap;
}

.quiz-header-titolo[b-1ukv9idtz2] {
    display: flex;
    flex-direction: column;
}

.quiz-nome-concorso[b-1ukv9idtz2] {
    font-weight: 700;
    font-size: 1rem;
    color: var(--wq-ink);
}

.quiz-progress-testo[b-1ukv9idtz2] {
    font-size: 0.82rem;
    color: var(--wq-muted);
}

.quiz-annulla-btn[b-1ukv9idtz2] {
    border-radius: var(--wq-radius-pill);
}

/* Badge circolare/pillola del timer, con pulsazione quando sotto i 5 minuti */
.quiz-timer-badge[b-1ukv9idtz2] {
    display: inline-flex;
    align-items: center;
    gap: 0.4rem;
    padding: 0.45rem 1rem;
    border-radius: var(--wq-radius-pill);
    background: var(--wq-primary-soft);
    color: var(--wq-primary-dark);
    font-weight: 700;
    font-variant-numeric: tabular-nums;
    font-size: 1rem;
}

.quiz-timer-urgente[b-1ukv9idtz2] {
    background: var(--wq-danger-soft);
    color: #b91c1c;
    animation: wq-pulse 1s ease-in-out infinite;
}

.quiz-timer-completato[b-1ukv9idtz2] {
    background: var(--wq-success-soft);
    color: #047857;
}

.quiz-progress-bar-track[b-1ukv9idtz2] {
    margin-top: 1rem;
    height: 8px;
    border-radius: var(--wq-radius-pill);
    background: #e2e8f0;
    overflow: hidden;
}

.quiz-progress-bar-fill[b-1ukv9idtz2] {
    height: 100%;
    background: linear-gradient(90deg, var(--wq-primary), var(--wq-primary-dark));
    border-radius: var(--wq-radius-pill);
    transition: width 0.35s ease;
}

/* ---- Banner esito prova (superato / non superato) ----
   Card grande, visivamente d'impatto: è la prima cosa che l'utente deve vedere quando entra
   nella review. Usa un pattern "icona in cerchio + testo" simile a .home-donazioni-header e
   .account-header, così è coerente col design system dell'app. Colori pieni (non sfumati) per
   dare più autorevolezza al verdetto. */
.quiz-esito-banner[b-1ukv9idtz2] {
    display: flex;
    align-items: center;
    gap: 1.75rem;
    padding: 2rem 2.25rem;
    margin-bottom: 2rem;
    border: none;
    border-radius: var(--wq-radius-lg);
    color: #ffffff;
    position: relative;
    overflow: hidden;
}

    /* Elemento decorativo di sfondo per dare profondità senza appesantire. */
    .quiz-esito-banner[b-1ukv9idtz2]::before {
        content: '';
        position: absolute;
        top: -40%;
        right: -10%;
        width: 380px;
        height: 380px;
        border-radius: 50%;
        background: rgba(255, 255, 255, 0.08);
        pointer-events: none;
    }

.quiz-esito-superato[b-1ukv9idtz2] {
    background: linear-gradient(135deg, #059669 0%, var(--wq-success) 100%);
    box-shadow: 0 10px 30px -8px rgba(16, 185, 129, 0.5);
}

.quiz-esito-non-superato[b-1ukv9idtz2] {
    background: linear-gradient(135deg, #dc2626 0%, var(--wq-danger) 100%);
    box-shadow: 0 10px 30px -8px rgba(239, 68, 68, 0.5);
}

.quiz-esito-icona[b-1ukv9idtz2] {
    flex-shrink: 0;
    width: 80px;
    height: 80px;
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.2);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 2.5rem;
    color: #ffffff;
    position: relative;
    z-index: 1;
}

.quiz-esito-testo[b-1ukv9idtz2] {
    flex: 1;
    position: relative;
    z-index: 1;
}

    .quiz-esito-testo h2[b-1ukv9idtz2] {
        font-weight: 800;
        font-size: 1.85rem;
        margin: 0 0 0.5rem;
        color: #ffffff;
        line-height: 1.15;
        letter-spacing: -0.01em;
    }

    .quiz-esito-testo p[b-1ukv9idtz2] {
        color: rgba(255, 255, 255, 0.92);
        margin: 0 0 1rem;
        line-height: 1.5;
        font-size: 0.98rem;
    }

        .quiz-esito-testo p strong[b-1ukv9idtz2] {
            color: #ffffff;
            font-weight: 700;
        }

.quiz-esito-punteggi[b-1ukv9idtz2] {
    display: inline-flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0.85rem;
    padding: 0.6rem 1.1rem;
    background: rgba(255, 255, 255, 0.18);
    border-radius: var(--wq-radius-pill);
    font-size: 0.92rem;
    color: #ffffff;
    font-weight: 500;
}

    .quiz-esito-punteggi strong[b-1ukv9idtz2] {
        color: #ffffff;
        font-weight: 700;
        margin-left: 0.15rem;
    }

.quiz-esito-separatore[b-1ukv9idtz2] {
    color: rgba(255, 255, 255, 0.5);
}

@media (max-width: 640px) {
    .quiz-esito-banner[b-1ukv9idtz2] {
        flex-direction: column;
        text-align: center;
        padding: 2rem 1.5rem;
    }

    .quiz-esito-punteggi[b-1ukv9idtz2] {
        justify-content: center;
    }

    .quiz-esito-testo h2[b-1ukv9idtz2] {
        font-size: 1.55rem;
    }
}

/* ---- Card risultato finale ---- */
.quiz-risultato-card[b-1ukv9idtz2] {
    padding: 1.5rem;
    margin-bottom: 2rem;
    border-left: 5px solid var(--wq-success);
}

.quiz-risultato-punteggio[b-1ukv9idtz2] {
    display: flex;
    align-items: center;
    gap: 1rem;
    margin-bottom: 1rem;
}

    .quiz-risultato-punteggio i[b-1ukv9idtz2] {
        font-size: 2rem;
        color: #d97706;
    }

    .quiz-risultato-punteggio strong[b-1ukv9idtz2] {
        font-size: 1.6rem;
        display: block;
    }

.quiz-risultato-label[b-1ukv9idtz2] {
    color: var(--wq-muted);
    font-size: 0.85rem;
}

.quiz-risultato-dettaglio[b-1ukv9idtz2] {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}

.quiz-risultato-riga[b-1ukv9idtz2] {
    display: flex;
    align-items: center;
    gap: 1rem;
    padding: 0.5rem 0.75rem;
    background: #f8fafc;
    border-radius: var(--wq-radius-md);
    font-size: 0.9rem;
}

.quiz-categoria-badge[b-1ukv9idtz2] {
    background: var(--wq-primary-soft);
    color: var(--wq-primary-dark);
    min-width: 90px;
    justify-content: center;
}

.quiz-risultato-punti[b-1ukv9idtz2] {
    margin-left: auto;
    font-weight: 700;
}

/* ---- Card domanda ---- */
.quiz-domanda-card[b-1ukv9idtz2] {
    padding: 2rem;
}

.quiz-domanda-testo[b-1ukv9idtz2] {
    font-size: 1.25rem;
    font-weight: 600;
    line-height: 1.5;
    color: var(--wq-ink);
    margin-bottom: 1.5rem;
}

/* ---- Opzioni A/B/C/D come grandi pulsanti orizzontali ---- */
.quiz-opzioni[b-1ukv9idtz2] {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
}

.quiz-opzione[b-1ukv9idtz2] {
    display: flex;
    align-items: center;
    gap: 1rem;
    padding: 0.9rem 1.1rem;
    border: 2px solid #e2e8f0;
    border-radius: var(--wq-radius-md);
    cursor: pointer;
    transition: border-color 0.15s ease, background-color 0.15s ease, transform 0.1s ease;
    position: relative;
}

    .quiz-opzione:hover:not(.quiz-opzione-readonly)[b-1ukv9idtz2] {
        border-color: var(--wq-primary);
        background: var(--wq-primary-soft);
        transform: translateX(2px);
    }

.quiz-opzione-radio[b-1ukv9idtz2] {
    position: absolute;
    opacity: 0;
    width: 0;
    height: 0;
}

.quiz-opzione-lettera[b-1ukv9idtz2] {
    flex-shrink: 0;
    width: 40px;
    height: 40px;
    border-radius: var(--wq-radius-sm);
    background: #f1f5f9;
    color: var(--wq-ink);
    font-weight: 800;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.05rem;
    transition: background-color 0.15s ease, color 0.15s ease;
}

.quiz-opzione-testo[b-1ukv9idtz2] {
    flex: 1;
    font-size: 1rem;
    color: var(--wq-ink);
}

.quiz-opzione-icona-esito[b-1ukv9idtz2] {
    font-size: 1.3rem;
    flex-shrink: 0;
}

/* Stato selezionato durante lo svolgimento: azzurro/blu */
.quiz-opzione-selezionata[b-1ukv9idtz2] {
    border-color: var(--wq-primary);
    background: var(--wq-primary-soft);
}

    .quiz-opzione-selezionata .quiz-opzione-lettera[b-1ukv9idtz2] {
        background: var(--wq-primary);
        color: #fff;
    }

/* Review: risposta corretta in verde pastello, risposta errata dell'utente in rosso */
.quiz-opzione-corretta[b-1ukv9idtz2] {
    border-color: var(--wq-success);
    background: var(--wq-success-soft);
}

    .quiz-opzione-corretta .quiz-opzione-lettera[b-1ukv9idtz2] {
        background: var(--wq-success);
        color: #fff;
    }

.quiz-opzione-errata[b-1ukv9idtz2] {
    border-color: var(--wq-danger);
    background: var(--wq-danger-soft);
}

    .quiz-opzione-errata .quiz-opzione-lettera[b-1ukv9idtz2] {
        background: var(--wq-danger);
        color: #fff;
    }

.quiz-opzione-readonly[b-1ukv9idtz2] {
    cursor: default;
}

/* ---- Pannello spiegazione: "foglio di appunti" color crema ---- */
.quiz-spiegazione[b-1ukv9idtz2] {
    margin-top: 1.5rem;
    padding: 1.25rem;
    background: var(--wq-cream);
    border: 1px solid #f3e2b3;
    border-radius: var(--wq-radius-md);
    color: #78500f;
    font-size: 0.95rem;
    line-height: 1.55;
}

.quiz-spiegazione-header[b-1ukv9idtz2] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-weight: 700;
    margin-bottom: 0.6rem;
    color: #92400e;
}

.quiz-risposta-corretta[b-1ukv9idtz2] {
    color: #047857;
    font-weight: 700;
}

/* ---- Sticky footer di navigazione ---- */
.quiz-nav-bar[b-1ukv9idtz2] {
    position: fixed;
    left: 0;
    right: 0;
    bottom: 0;
    background: #fff;
    border-top: 1px solid #e2e8f0;
    box-shadow: 0 -4px 12px rgba(15, 23, 42, 0.06);
    z-index: 1500;
}

.quiz-nav-bar-inner[b-1ukv9idtz2] {
    max-width: 780px;
    margin: 0 auto;
    padding: 0.85rem 1.5rem;
    display: flex;
    align-items: center;
    gap: 0.75rem;
}

.quiz-nav-bar-spacer[b-1ukv9idtz2] {
    flex: 1;
}

.quiz-nav-btn[b-1ukv9idtz2] {
    border-radius: var(--wq-radius-pill);
    padding: 0.55rem 1.25rem;
}

.quiz-invia-btn[b-1ukv9idtz2] {
    border-radius: var(--wq-radius-pill);
    padding: 0.6rem 1.5rem;
    font-weight: 700;
    box-shadow: 0 2px 10px rgba(16, 185, 129, 0.35);
}

/* ---- Modale di conferma ---- */
.quiz-modale-overlay[b-1ukv9idtz2] {
    position: fixed;
    inset: 0;
    background-color: rgba(15, 23, 42, 0.55);
    backdrop-filter: blur(4px);
    -webkit-backdrop-filter: blur(4px);
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 2000;
    animation: wq-fade-in 0.2s ease-out;
}

.quiz-modale-box[b-1ukv9idtz2] {
    background: #fff;
    border-radius: var(--wq-radius-lg);
    padding: 2rem;
    max-width: 440px;
    width: 90%;
    box-shadow: var(--wq-shadow-elevated);
    text-align: center;
}

.quiz-modale-icona[b-1ukv9idtz2] {
    width: 56px;
    height: 56px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.5rem;
    margin: 0 auto 1rem;
}

.quiz-modale-icona-info[b-1ukv9idtz2] {
    background: var(--wq-primary-soft);
    color: var(--wq-primary);
}

.quiz-modale-icona-danger[b-1ukv9idtz2] {
    background: var(--wq-danger-soft);
    color: var(--wq-danger);
}

.quiz-modale-azioni[b-1ukv9idtz2] {
    display: flex;
    justify-content: center;
    gap: 0.75rem;
    margin-top: 1.25rem;
}
