.aiWizard-container {
    /* background: var(--white); */
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    flex-direction: column;
    justify-content: center;
    transition: all 0.3s;
}

.aiWizard-container.loading {
    overflow: hidden;
    aspect-ratio: 1.4;
}

.aiWizard-container .wizard-logo {
    height: 30px;
    position: absolute;
    left: 30px;
    top: 30px;
}

.aiWizard-container .wizard-logo-mobile {
    height: 45px;
    position: absolute;
    left: 30px;
    top: 30px;
    border-radius: 50%;
}

.aiWizard-container .aiWizard-rightButton {
    top: 23px;
    right: 30px;
    position: absolute;
}

.aiWizard-container .wizard-container {
    display: flex;
    max-height: 100%;
    flex-direction: column;
    width: 550px;
    max-width: 100%;
    padding: 30px;
}

.aiWizard-container .wizard-question,
.aiWizard-container .wizard-section {
    display: flex;
    flex-direction: column;
    transition: all 0.3s;
}

.aiWizard-container .wizard-question {
    align-items: center;
    text-align: center;
}

.aiWizard-container .wizard-assistant {
    margin: 15px;
    align-items: center;
    text-align: center;
}
.aiWizard-container .wizard-assistant h4 {
    margin-top: 15px;
    font-weight: 500;
}

.aiWizard-container .wizard-buttons + .wizard-question {
    /* border-top: 1px solid var(--border); */
    margin-top: 30px;
    /* padding-top: 30px; */
}

.aiWizard-container .wizard-question .wizard-ai-symbol {
    width: 150px !important;
    height: 150px !important;
    object-fit: contain;
    margin: -20px 0 10px;
    border-radius: 50%;);
}

.aiWizard-container .wizard-question h2 {
    font-weight: 700;
    margin: 0;
    font-size: 38px;
}


.aiWizard-container .wizard-question h3 {
    margin-top: 15px;
    line-height: 1.5;
    font-weight: 500;
}

.aiWizard-container .wizard-question h4 {
    margin: 0 0 15px;
    font-size: 1.2em;
}

.aiWizard-container .wizard-question h6 {
    margin: 10px 0 0 0;
    font-size: 0.75em;
}


.aiWizard-container .wizard-question .wizard-question-cancel {
    margin-top: 15px;
    display: none;
}

/* [owner, 12/10/2026: «fai in modo che "Riprova" non sia attaccato»] «Riprova» prende il posto di «Annulla
   generazione» sotto il racconto: stessa distanza (15px), che prima aveva solo «Annulla». */
.aiWizard-container .wizard-question .wizard-question-retry {
    margin-top: 15px;
}

.aiWizard-container .wizard-steps-progressbar {
    margin: 30px 0 15px;
}

.aiWizard-container .wizard-section {
    text-align: left;
    margin: 15px -15px 15px;
    padding: 10px 15px;
    overflow: hidden;
    overflow-y: auto;
    position: relative;
    /* max-height: 40vh; */
    min-height: 100px;
}

.aiWizard-container .dashboard-aiAssistant-ask .wizard-section {
    margin: 5px -15px 10px;
}


.aiWizard-container .wizard-section.dashboard-aiAssistant-answer {
    display: block;
    min-height: 0;
    margin: 0;
    min-height: 70px;
}


.aiWizard-container .wizard-section.dashboard-aiAssistant-answer .btn {
    min-height: 20px;
    margin: 3px 0;
    line-height: 1;
}

/* [dashboard-assistant] La risposta appare sopra la textarea (sempre visibile): limitiamo l'altezza
   della risposta cosÃƒÆ’Ã‚Â¬ la textarea e i pulsanti restano in vista. */
.aiWizard-container .dashboard-aiAssistant-answer {
    max-height: 40vh;
}

/* Riga pulsanti: "Indietro" a sinistra (compare con la risposta), "Invia" a destra. */
.aiWizard-container .dashboard-aiAssistant-actions {
    display: flex;
    gap: 10px;
}


.aiWizard-container .dashboard-aiAssistant-actions > a {
    flex: 1;
}

.aiWizard-container .dashboard-aiAssistant-actions > .dashboard-aiAssistant-send {
    /* flex: 1 1 auto; */
    /* width: auto; */
    /* margin: 0; */
}

.aiWizard-container .dashboard-aiAssistant-actions > .dashboard-aiAssistant-back {
    /* flex: 0 0 auto; */
    /* margin: 0; */
}

/* [disclaimer] Mostrato PRIMA del primo invio nel wizard della dashboard (stesso testo del pannello
   assistente globale, cookie condiviso aiAssistant_TermsAccepted). Testo leggibile a sinistra, titolo
   centrato, bottone a piena larghezza; su schermi bassi scrolla invece di sfondare il box. */
.aiWizard-container .dashboard-aiAssistant-terms {
    text-align: left;
    max-height: 45vh;
    overflow-y: auto;
    margin: 10px 0 5px;
    padding: 0 5px;
}

.aiWizard-container .dashboard-aiAssistant-terms h2 {
    font-weight: 700;
    font-size: 26px;
    text-align: center;
    margin: 0 0 20px;
}

.aiWizard-container .dashboard-aiAssistant-terms p {
    line-height: 1.6;
    margin: 0 0 15px;
}

.aiWizard-container .dashboard-aiAssistant-terms .btn {
    margin-top: 10px;
}

.aiWizard-container .wizard-section > label {
    font-weight: 600;
}

.aiWizard-container .wizard-section > p {
    white-space: pre-line;
    display: flex;
    align-items: center;
    gap: 10px;
}

.aiWizard-container .wizard-buttons {
    display: none;
    margin: 0 -5px;
}

.aiWizard-container .wizard-buttons > a {
    margin: 0 5px;
}

.aiWizard-container .wizard-checkbox {
    padding: 15px 15px;
    text-align: left;
    display: block;
    width: 100%;
    height: auto;
    padding-left: 45px;
}

.aiWizard-container .wizard-checkbox .showHelperContainer {
    margin-right: 10px;
}

.aiWizard-container .wizard-section > p .showHelperBtn,
.aiWizard-container .wizard-checkbox .showHelperContainer .showHelperBtn {
    line-height: 20px;
    min-height: 0;
    height: 24px;
    width: 24px;
    min-width: 24px;
}

.aiWizard-container .wizard-checkbox .badge {
    min-width: 80px;
    justify-content: center;
}

.aiWizard-container .wizard-checkbox > input {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 15px;
    margin: auto;
}


.aiWizard-container .wizard-checkbox > b {
    padding-left: 15px;
    display: flex;
    align-items: center;
    line-height: 1.3;
}

.aiWizard-container .wizard-checkbox > i {
    display: block;
    font-size: 40px;
    margin: 0 0 15px;
}

.aiWizard-container .wizard-checkbox > .wizard-checkbox-description {
    display: block;
    padding-left: 15px;
    margin-top: 4px;
    font-size: 0.8em;
    font-weight: 400;
    line-height: 1.3;
    color: var(--muted, #6c757d);
}

/* WIZARD CHILD */
.aiWizard-container .wizard-child-actions .wizard-child-body {
    border-top: 1px solid var(--border);
    padding-top: 15px;
}

.aiWizard-container .wizard-child-actions .wizard-child-footer {
    display: flex;
    gap: 15px;
    margin-top: 15px;
}

.aiWizard-container .wizard-child-actions .wizard-child-footer > .btn {
    flex: 1;
}

/* AI BUTTON */
.aiInputButton {
    position: relative;
    transition: all 0.3s;
    opacity: 0.8;
    margin: -50px 10px;
    display: block;
    top: 0;
    right: 5px;
    text-align: right;
    float: right;
    line-height: 50px;
}

.aiInputButton:hover {
    opacity: 1;
}

.aiInputButton img {
    width: 40px;
    height: 40px;
}

.aiMainButton {
    color: initial !important;
    margin-top: 15px;
}

.aiMainButton img {
    width: 20px;
}

@media (max-width: 778px) {
    .aiWizard-container .wizard-question .wizard-ai-symbol {
        width: 100px !important;
        height: 100px !important;
    }
    .aiWizard-container .wizard-question h2 {
        font-size: 30px;
    }
    .aiWizard-rightButton span {
        display: none;
    }
}

@media (max-height: 7780px) {
    .wizard-container {
        padding: 15px !important;
    }

    .aiWizard-container .wizard-question .wizard-ai-symbol {
        width: 100px !important;
        height: 100px !important;
        margin: -15px 0 10px;
    }
    .aiWizard-container .wizard-question h2 {
        font-size: 30px;
    }
}

@media (max-height: 550px) {
    .aiWizard-container .wizard-question h2 {
        font-size: 20px;
    }
}

.bootbox-body .aiWizard-container .wizard-section {
    max-height: 40vh;
    min-height: 150px;
}

/*
.bootbox-body .wizard-buttons {
    padding-top: 15px;
}
 */

/* [claude-code] Schermata-guida "Lavora con Claude Code": prende il posto del passo (che viene solo
   nascosto) e occupa tutto lo spazio del wizard. Il corpo scorre da solo cosi' il pulsante "Indietro"
   resta sempre in vista invece di finire fuori dal box. */
.aiWizard-container .wizard-claude-guide {
    text-align: left;
    margin: 15px 0 0;
}

.aiWizard-container .wizard-claude-guide-body {
    max-height: 50vh;
    overflow-y: auto;
}

.aiWizard-container .wizard-claude-guide-body .big-banner {
    margin: 0;
    padding: 20px;
}

.aiWizard-container .wizard-claude-guide > .wizard-claude-guide-back {
    margin-top: 15px;
}

/* [Agente col connettore — PROGETTO.md §4] Il racconto della generazione dentro il wizard. Componente di casa:
   activitystream (.last_activities_streambox + .activity-stream, righe .stream). La sua scatola e' tarata per la
   colonna della dashboard (margin -15px, 365px fissi, bordo solo a sinistra) e la variante a riquadro
   (.widget-content .last_activities_streambox) vale solo dentro un widget della dashboard: nessuna delle due sta
   nella colonna di 550 px del wizard. .wizard-agent-feed e' la stessa variante a riquadro, piu' bassa, che scorre.
   [riepilogo di fine lavoro — owner 13/10/2026] La stessa scatola anche dentro l'ibox «Storico delle operazioni»
   (aiWizard.js, jobSummary), che sta in un dialogo fuori dal wizard: stessa classe, nessuna nuova. */
.aiWizard-container .wizard-agent-feed.last_activities_streambox,
.ibox-content > .wizard-agent-feed.last_activities_streambox {
    width: 100%;
    height: auto;
    max-height: 38vh;
    margin: 15px 0 0;
    padding: 5px;
    border: 1px solid var(--border);
    border-radius: var(--radius);
    background: var(--white);
    text-align: left;
}

/* Dentro l'ibox lo spazio sopra lo da' gia' l'ibox. */
.ibox-content > .wizard-agent-feed.last_activities_streambox {
    margin: 0;
}

/* Le miniature del racconto (foto della pagina, immagini generate), che si aprono grandi in un bootbox.dialog:
   activitystream rimpicciolisce a 20 px tonde solo l'immagine dell'autore in .stream-info e non ha una miniatura
   di contenuto. */
.aiWizard-container .wizard-agent-feed .stream-content img,
.ibox-content > .wizard-agent-feed .stream-content img {
    display: block;
    max-width: 100%;
    max-height: 90px;
    margin-top: 5px;
    border: 1px solid var(--border);
    border-radius: var(--radius);
    cursor: zoom-in;
}

/* Due badge affiancati nella stessa voce (Beta + Premium di «Generazione avanzata»): il componente dei badge non
   distanzia due badge vicini e .wizard-checkbox > b e' un flex senza gap. */
.aiWizard-container .wizard-checkbox .badge + .badge {
    margin-left: 5px;
}
