@import '_content/Microsoft.FluentUI.AspNetCore.Components/Microsoft.FluentUI.AspNetCore.Components.g0t05e93zu.bundle.scp.css';

/* /Layout/Components/Error/ErrorPage.razor.rz.scp.css */

    .error-container[b-24q4bfkpu9] {
        display: flex;
        justify-content: center;
        align-items: center;
        width: 100%;
        min-height: 100%;
        padding: 20px;
    }
    
    .error-card[b-24q4bfkpu9] {
        max-width: 600px;
        width: 100%;
    }
    
    .error-content[b-24q4bfkpu9] {
        display: flex;
        flex-direction: column;
        align-items: center;
        text-align: center;
        padding: 20px;
    }
    
    .error-actions[b-24q4bfkpu9] {
        display: flex;
        gap: 8px;
        flex-wrap: wrap;
        justify-content: center;
        margin-top: 16px;
    }
    
    .error-details[b-24q4bfkpu9] {
        width: 100%;
        margin: 16px 0;
    }
    
    .stack-trace-container[b-24q4bfkpu9] {
        margin-top: 16px;
    }
    
    .stack-trace[b-24q4bfkpu9] {
        background-color: #f5f5f5;
        border-radius: 4px;
        padding: 10px;
        overflow: auto;
        font-size: 0.85em;
        max-height: 300px;
        text-align: left;
    }
    
    .my-4[b-24q4bfkpu9] {
        margin: 16px 0;
    }

/* .error-container {
    display: flex;
    justify-content: center;
    align-items: center;
    min-height: 80vh;
    padding: 2rem;
    box-sizing: border-box;
}

.error-card {
    max-width: 600px;
    width: 100%;
    padding: 2rem;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
    border-radius: 8px;
}

.error-content {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 1rem;
    text-align: center;
}

.error-content h1 {
    margin: 0.5rem 0;
    font-size: 1.8rem;
    font-weight: 600;
}

.error-actions {
    display: flex;
    gap: 1rem;
    margin-top: 1rem;
    justify-content: center;
    flex-wrap: wrap;
}

.error-details {
    width: 100%;
    text-align: left;
    margin: 1rem 0;
}

.stack-trace-container {
    margin-top: 1rem;
}

.stack-trace {
    background-color: var(--neutral-layer-1);
    padding: 1rem;
    border-radius: 4px;
    overflow: auto;
    max-height: 200px;
    font-size: 0.8rem;
    white-space: pre-wrap;
    margin-top: 0.5rem;
}

.my-4 {
    margin: 1rem 0;
    width: 100%;
} */

/* Nasconde il messaggio di errore predefinito di blazor */
[b-24q4bfkpu9] .blazor-error-boundary {
    display: none;
}
/* /Pages/Communications/Communications.razor.rz.scp.css */

    /* Migliorare il contenimento del contenuto nella communication-box */
    .communication-content[b-7gtuctl0py] {
        flex-grow: 1;
        margin-bottom: 16px;
        line-height: 1.5;
        overflow-wrap: break-word;
        /* Permette il wrapping delle parole lunghe */
        word-break: break-word;
        /* Forza la rottura delle parole lunghe */
        overflow: hidden;
        /* Nasconde il contenuto che dovesse comunque fuoriuscire */
        display: -webkit-box;
        -webkit-line-clamp: 4;
        /* Limita a 4 linee di testo */
        -webkit-box-orient: vertical;
        text-overflow: ellipsis;
        /* Mostra i puntini di sospensione se il testo viene troncato */
        max-height: 6em;
        /* Altezza massima del contenuto */
    }

    /* Migliora la struttura complessiva della card */
    .communication-box[b-7gtuctl0py] {
        display: flex;
        flex-direction: column;
        height: 100%;
        transition: transform 0.2s, box-shadow 0.2s;
        cursor: pointer;
        max-width: 100%;
        overflow: hidden;
        margin-bottom: 5px;
        padding: 16px;
        /* Padding interno uniforme */
    }

    /* Assicura che il titolo sia contenuto */
    .communication-title[b-7gtuctl0py] {
        margin: 0;
        font-size: 18px;
        font-weight: 600;
        flex: 1;
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
        /* Titolo su una singola riga */
    }

    /* Container principale - centrato con larghezza massima */
    .communications-container[b-7gtuctl0py] {
        display: grid;
        grid-template-columns: repeat(auto-fill, minmax(380px, 1fr));
        /* Box più larghi */
        gap: 20px;
        margin: 16px auto;
        /* Margine automatico per centrare */
        max-width: 1200px;
        /* Larghezza massima contenuta */
        width: 95%;
        /* Larghezza relativa rispetto al contenitore */
        overflow: hidden;
        /* Evita che i contenuti escano */
        padding: 0 10px;
        /* Padding laterale */
    }

    /* Altre classi esistenti... */
    .communication-box[b-7gtuctl0py] {
        display: flex;
        flex-direction: column;
        height: 100%;
        transition: transform 0.2s, box-shadow 0.2s;
        cursor: pointer;
        max-width: 100%;
        /* Assicura che le card non escano dal contenitore */
        overflow: hidden;
        /* Impedisce al contenuto di uscire dalla card */
        margin-bottom: 5px;
        /* Piccolo margine per evitare problemi di scroll */
    }

    /* Anche per il container della paginazione */
    .pagination-container[b-7gtuctl0py] {
        margin: 24px auto;
        /* Margine automatico per centrare */
        padding: 16px;
        background-color: white;
        border-radius: 6px;
        box-shadow: 0 2px 8px rgba(0, 0, 0, 0.05);
        max-width: 1200px;
        /* Stessa larghezza massima del container principale */
        width: 95%;
        /* Larghezza relativa */
    }

    .custom-paginator[b-7gtuctl0py] {
        display: flex;
        align-items: center;
        gap: 10px;
    }

    .page-indicator[b-7gtuctl0py] {
        font-size: 14px;
        color: #555;
    }

    .communications-container[b-7gtuctl0py] {
        display: grid;
        grid-template-columns: repeat(auto-fill, minmax(320px, 1fr));
        gap: 16px;
        margin-top: 16px;
    }

    .communication-box[b-7gtuctl0py] {
        display: flex;
        flex-direction: column;
        height: 100%;
        transition: transform 0.2s, box-shadow 0.2s;
        cursor: pointer;
    }

    .communication-box:hover[b-7gtuctl0py] {
        transform: translateY(-2px);
        box-shadow: 0 8px 16px rgba(0, 0, 0, 0.1);
    }

    .communication-header[b-7gtuctl0py] {
        display: flex;
        justify-content: space-between;
        align-items: flex-start;
        margin-bottom: 8px;
    }

    .communication-title[b-7gtuctl0py] {
        margin: 0;
        font-size: 18px;
        font-weight: 600;
        flex: 1;
    }

    .communication-type[b-7gtuctl0py] {
        margin-left: 12px;
        min-width: 90px;
        text-align: center;
    }

    .communication-divider[b-7gtuctl0py] {
        margin: 12px 0;
    }

    /* .communication-content {
        flex-grow: 1;
        margin-bottom: 16px;
        line-height: 1.5;
    } */

    .communication-footer[b-7gtuctl0py] {
        margin-top: auto;
    }

    .communication-dates[b-7gtuctl0py] {
        font-size: 12px;
        color: #555;
    }

    .date-label[b-7gtuctl0py] {
        font-weight: 600;
    }

    .date-separator[b-7gtuctl0py] {
        margin: 0 8px;
    }

    .date-value[b-7gtuctl0py] {
        color: #666;
    }

    .view-button[b-7gtuctl0py] {
        min-width: 80px;
        font-size: 14px;
    }

    .pagination-container[b-7gtuctl0py] {
        margin-top: 24px;
        padding: 16px;
        background-color: white;
        border-radius: 6px;
        box-shadow: 0 2px 8px rgba(0, 0, 0, 0.05);
    }

    [b-7gtuctl0py] .accent {
        background-color: #0078d4;
    }

    .fluent-select[b-7gtuctl0py] {
        padding: 8px 12px;
        border: 1px solid #d1d1d1;
        border-radius: 4px;
        font-size: 14px;
        background-color: white;
        min-width: 120px;
        cursor: pointer;
    }

    .fluent-select:focus[b-7gtuctl0py] {
        border-color: #0078d4;
        outline: none;
    }

    /* Nuovi stili per il dialog */
    [b-7gtuctl0py] .dialog-content {
        padding: 10px;
        max-height: 70vh;
        overflow-y: auto;
    }

    [b-7gtuctl0py] .dialog-header {
        display: flex;
        justify-content: space-between;
        align-items: flex-start;
        margin-bottom: 15px;
    }

    [b-7gtuctl0py] .dialog-type {
        font-size: 14px;
        padding: 5px 10px;
    }

    [b-7gtuctl0py] .dialog-dates {
        text-align: right;
        font-size: 14px;
    }

    [b-7gtuctl0py] .dialog-divider {
        margin: 15px 0;
    }

    [b-7gtuctl0py] .dialog-body {
        font-size: 16px;
        line-height: 1.6;
        white-space: pre-line;
        /* Preserva gli a capo nel testo */
    }

    /* Aggiunta hover per indicare che la card è cliccabile */
    .communication-box[b-7gtuctl0py] {
        cursor: pointer;
    }

    .communication-box:hover[b-7gtuctl0py] {
        transform: translateY(-2px);
        box-shadow: 0 8px 16px rgba(0, 0, 0, 0.1);
    }

    /* Stili aggiornati per il dialog */
    [b-7gtuctl0py] .dialog-content {
        padding: 16px;
        max-height: 70vh;
        overflow-y: auto;
    }

    [b-7gtuctl0py] .dialog-header {
        display: flex;
        justify-content: space-between;
        align-items: flex-start;
        margin-bottom: 15px;
    }

    [b-7gtuctl0py] .dialog-title {
        margin: 0;
        font-size: 24px;
        font-weight: 600;
        flex: 1;
    }

    [b-7gtuctl0py] .dialog-type {
        font-size: 14px;
        padding: 5px 12px;
        margin-left: 16px;
    }

    [b-7gtuctl0py] .dialog-dates {
        margin: 10px 0;
        font-size: 14px;
        color: #555;
    }

    [b-7gtuctl0py] .dialog-divider {
        margin: 15px 0;
    }

    [b-7gtuctl0py] .dialog-body {
        font-size: 18px;
        /* Font ingrandito */
        line-height: 1.6;
        white-space: pre-line;
        /* Preserva gli a capo nel testo */
        color: #333;
    }

    [b-7gtuctl0py] .dialog-footer {
        display: flex;
        justify-content: flex-end;
        /* Allinea il pulsante a destra */
        width: 100%;
        background: transparent;
        /* Rimuove il colore di sfondo */
    }

    [b-7gtuctl0py] .dialog-close-button {
        margin-left: auto;
        /* Sposta il pulsante all'estrema destra */
    }
/* /Pages/Communications/Components/CommunicationDetailsDialog.razor.rz.scp.css */
    .communication-dialog-content[b-oaz6mrhjy7] {
        padding: 10px;
        max-width: 800px;
    }

    .communication-dialog-header[b-oaz6mrhjy7] {
        display: flex;
        justify-content: space-between;
        align-items: center;
        margin-bottom: 15px;
    }

    .communication-dialog-title[b-oaz6mrhjy7] {
        margin: 0;
        font-size: 1.5rem;
        color: var(--neutral-foreground-rest);
    }

    .communication-dialog-type[b-oaz6mrhjy7] {
        margin-left: 10px;
    }

    .communication-dialog-dates[b-oaz6mrhjy7] {
        display: flex;
        gap: 20px;
        margin-bottom: 15px;
        font-size: 0.9rem;
        color: var(--neutral-foreground-hint);
    }

    .communication-date-label[b-oaz6mrhjy7] {
        font-weight: 600;
        margin-right: 5px;
    }

    .communication-dialog-divider[b-oaz6mrhjy7] {
        margin: 10px 0;
    }

    .communication-dialog-body[b-oaz6mrhjy7] {
        line-height: 1.5;
        margin-top: 15px;
        white-space: pre-line;
    }

    .communication-dialog-footer[b-oaz6mrhjy7] {
        display: flex;
        justify-content: flex-end;
    }

    .communication-documents-section[b-oaz6mrhjy7] {
        margin-top: 16px;
    }

    .communication-documents-title[b-oaz6mrhjy7] {
        font-size: 1.2rem;
        font-weight: 600;
        margin-bottom: 12px;
    }

    .communication-documents-list[b-oaz6mrhjy7] {
        display: flex;
        flex-direction: column;
        gap: 8px;
    }

    .communication-document-item[b-oaz6mrhjy7] {
        display: flex;
        align-items: center;
        gap: 12px;
        padding: 10px;
        border-radius: 4px;
        background-color: var(--neutral-layer-3);
    }

    .communication-document-details[b-oaz6mrhjy7] {
        flex: 1;
        display: flex;
        flex-direction: column;
    }

    .communication-document-name[b-oaz6mrhjy7] {
        font-weight: 500;
    }

    .communication-document-info[b-oaz6mrhjy7] {
        font-size: 0.85rem;
        color: var(--neutral-foreground-hint);
    }

    .communication-document-download-button[b-oaz6mrhjy7] {
        min-width: 90px;
    }
/* /Pages/Communications/Components/CommunicationFormDialog.razor.rz.scp.css */
.validation-message[b-ro4n6xqub9] {
  color: var(--error);
  font-size: 0.8rem;
  margin-top: 4px;
}

.document-upload-container[b-ro4n6xqub9] {
  position: relative;
  display: inline-block;
}

.document-input-file[b-ro4n6xqub9] {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  opacity: 0;
  cursor: pointer;
  z-index: 1;
}

/* Rendi la form e i suoi elementi full width */
.fluent-stack[b-ro4n6xqub9],
.fluent-stack > div[b-ro4n6xqub9],
.fluent-stack input[b-ro4n6xqub9],
.fluent-stack textarea[b-ro4n6xqub9],
.fluent-stack select[b-ro4n6xqub9],
.fluent-stack .fluent-text-field[b-ro4n6xqub9],
.fluent-stack .fluent-text-area[b-ro4n6xqub9],
.fluent-stack .fluent-select[b-ro4n6xqub9] {
  width: 100%;
  box-sizing: border-box;
}

/* Rendi i bottoni nel footer allineati a destra e distanziati */
.fluent-dialog-footer[b-ro4n6xqub9] {
  display: flex;
  justify-content: flex-end;
  gap: 10px;
}

.info-message[b-ro4n6xqub9] {
    display: flex;
    align-items: flex-start;
    gap: 8px;
    background-color: rgba(0, 120, 212, 0.1);
    color: #0078D4;
    padding: 10px;
    border-radius: 4px;
    border-left: 4px solid #0078D4;
    margin-bottom: 10px;
}
/* /Pages/Customer/Customer.razor.rz.scp.css */
    .page-header[b-tuembdjwhe] {
        display: flex;
        justify-content: space-between;
        align-items: center;
    }

    .page-actions[b-tuembdjwhe] {
        display: flex;
        gap: 8px;
    }

    .filter-container[b-tuembdjwhe] {
        min-width: 200px;
    }

    .tab-content[b-tuembdjwhe] {
        padding: 20px;
        margin-top: 15px;
    }

    /* Stili per le informazioni generiche */
    .info-section[b-tuembdjwhe] {
        margin-bottom: 25px;
    }

    .info-row[b-tuembdjwhe] {
        display: flex;
        margin-bottom: 10px;
        border-bottom: 1px solid #eee;
        padding-bottom: 8px;
    }

    .info-label[b-tuembdjwhe] {
        width: 200px;
        font-weight: 600;
        color: #555;
    }

    .info-value[b-tuembdjwhe] {
        flex: 1;
    }

    /* Stili per rendere la tabella responsive */
    [b-tuembdjwhe] .fluent-data-grid {
        width: 100%;
        overflow-x: auto;
    }

    /* Aiuta a mantenere le proporzioni delle colonne su schermi piccoli */
    @media (max-width: 768px) {
        [b-tuembdjwhe] .fluent-data-grid-cell {
            min-width: 100px;
            /* Imposta una larghezza minima per evitare che le celle diventino troppo strette */
        }

        [b-tuembdjwhe] .fluent-data-grid-cell:nth-child(2) {
            min-width: 150px;
            /* Colonna Ragione Sociale più ampia */
        }

        [b-tuembdjwhe] .fluent-data-grid-cell:last-child {
            min-width: 80px;
            /* Colonna Azioni più stretta */
        }
    }

    /* Per schermi molto piccoli, consenti lo scrolling orizzontale */
    @media (max-width: 576px) {
        [b-tuembdjwhe] .fluent-data-grid-container {
            overflow-x: auto;
            -webkit-overflow-scrolling: touch;
        }
    }

        /* .filter-container {
        display: flex;
        gap: 10px;
        align-items: center;
    }

    .filter-item {
        display: flex;
        align-items: center;
        gap: 8px;
    }

    .filter-label {
        font-weight: 500;
        margin-bottom: 0;
        white-space: nowrap;
    } */

    .filter-container[b-tuembdjwhe] {
    display: flex;
    gap: 15px;
    align-items: end;
    flex-wrap: wrap;
}

.filter-item[b-tuembdjwhe] {
    display: flex;
    flex-direction: column;
    gap: 5px;
    min-width: 200px;
}

.filter-label[b-tuembdjwhe] {
    font-size: 0.875rem;
    font-weight: 500;
}
/* /Pages/Customer/CustomerInfo.razor.rz.scp.css */
   /* Card principale */
    .tab-content-info[b-k3iowh0fws]{
        padding: 20px;
        width: 100%;
        margin: 0 auto;
        display: flex;
        justify-content: center;
    }
    
    /* Card interne */
    .info-card[b-k3iowh0fws] {
        width: 100%;
        height: 100%;
        display: flex;
        flex-direction: column;
        padding: 16px;
        box-sizing: border-box;
        margin: 0 auto;
        box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
    }

    /* Impostazioni sezione info */
    .info-section[b-k3iowh0fws] {
        margin-bottom: 20px;
        width: 100%;
    }

    /* Struttura righe info */
    .info-row[b-k3iowh0fws] {
        display: grid;
        grid-template-columns: minmax(120px, 30%) 1fr;
        padding: 10px 0;
        border-bottom: 1px solid #f0f0f0;
    }

    /* Stile etichette */
    .info-label[b-k3iowh0fws] {
        font-weight: 600;
        color: #333;
        padding-right: 12px;
    }

    /* Stile valori */
    .info-value[b-k3iowh0fws] {
        color: #555;
        word-break: break-word;
    }

    /* Titoli */
    h2[b-k3iowh0fws] {
        margin-bottom: 16px;
        padding-bottom: 8px;
        border-bottom: 2px solid #e0e0e0;
        width: 100%;
        text-align: center;
    }
    
    h3[b-k3iowh0fws] {
        margin-bottom: 12px;
        color: #444;
        text-align: center;
    }

    /* Assicuriamo che FluentGrid occupi tutto lo spazio */
    [b-k3iowh0fws] .fluent-grid {
        width: 100%;
        display: grid;
        gap: 24px;
    }
    
    /* Assicuriamo che FluentGridItem siano centrati */
    [b-k3iowh0fws] .fluent-grid-item {
        display: flex;
        justify-content: center;
    }

    /* Responsive design per schermi medi */
    @media (max-width: 992px) {
        .info-row[b-k3iowh0fws] {
            grid-template-columns: minmax(100px, 35%) 1fr;
        }
    }

    /* Responsive design per schermi piccoli */
    @media (max-width: 768px) {
        [b-k3iowh0fws] .fluent-grid {
            grid-template-columns: 1fr !important;
        }
        
        .info-card[b-k3iowh0fws] {
            max-width: 100%;
            margin-bottom: 20px;
        }
        
        .info-row[b-k3iowh0fws] {
            grid-template-columns: 1fr;
            gap: 4px;
        }
        
        .info-label[b-k3iowh0fws] {
            margin-bottom: 4px;
        }
    }
/* /Pages/Error/ErrorSimulator.razor.rz.scp.css */
.simulator-container[b-7ww5za4g2m] {
  max-width: 800px;
  margin: 0 auto;
  padding: 2rem;
}

.button-container[b-7ww5za4g2m] {
  display: flex;
  flex-direction: column;
  gap: 1rem;
  margin-top: 2rem;
}
/* /Shared/MainLayout.razor.rz.scp.css */
.page[b-2s4xls5bkb] {
  position: relative;
  display: flex;
  flex-direction: column;
}

main[b-2s4xls5bkb] {
  flex: 1;
}

.sidebar[b-2s4xls5bkb] {
  background-image: linear-gradient(180deg, rgb(5, 39, 103) 0%, #3a0647 70%);
}

.top-row[b-2s4xls5bkb] {
  background-color: #f7f7f7;
  border-bottom: 1px solid #d6d5d5;
  justify-content: flex-end;
  height: 3.5rem;
  display: flex;
  align-items: center;
}

.top-row[b-2s4xls5bkb]  a,
.top-row[b-2s4xls5bkb]  .btn-link {
  white-space: nowrap;
  margin-left: 1.5rem;
  text-decoration: none;
}

.top-row[b-2s4xls5bkb]  a:hover,
.top-row[b-2s4xls5bkb]  .btn-link:hover {
  text-decoration: underline;
}

.top-row[b-2s4xls5bkb]  a:first-child {
  overflow: hidden;
  text-overflow: ellipsis;
}

@media (max-width: 640.98px) {
  .top-row:not(.auth)[b-2s4xls5bkb] {
    display: none;
  }

  .top-row.auth[b-2s4xls5bkb] {
    justify-content: space-between;
  }

  .top-row[b-2s4xls5bkb]  a,
  .top-row[b-2s4xls5bkb]  .btn-link {
    margin-left: 0;
  }
}

@media (min-width: 641px) {
  .page[b-2s4xls5bkb] {
    flex-direction: row;
  }

  .sidebar[b-2s4xls5bkb] {
    width: 250px;
    height: 100vh;
    position: sticky;
    top: 0;
  }

  .top-row[b-2s4xls5bkb] {
    position: sticky;
    top: 0;
    z-index: 1;
  }

  .top-row.auth[b-2s4xls5bkb]  a:first-child {
    flex: 1;
    text-align: right;
    width: 0;
  }

  .top-row[b-2s4xls5bkb],
  article[b-2s4xls5bkb] {
    padding-left: 2rem !important;
    padding-right: 1.5rem !important;
  }
}

/* /Shared/NavMenu.razor.rz.scp.css */
.navbar-toggler[b-qvoo8z4yo9] {
    background-color: rgba(255, 255, 255, 0.1);
}

.top-row[b-qvoo8z4yo9] {
    height: 3.5rem;
    background-color: rgba(0,0,0,0.4);
}

.navbar-brand[b-qvoo8z4yo9] {
    font-size: 1.1rem;
}

.oi[b-qvoo8z4yo9] {
    width: 2rem;
    font-size: 1.1rem;
    vertical-align: text-top;
    top: -2px;
}

.nav-item[b-qvoo8z4yo9] {
    font-size: 0.9rem;
    padding-bottom: 0.5rem;
}

    .nav-item:first-of-type[b-qvoo8z4yo9] {
        padding-top: 1rem;
    }

    .nav-item:last-of-type[b-qvoo8z4yo9] {
        padding-bottom: 1rem;
    }

    .nav-item[b-qvoo8z4yo9]  a {
        color: #d7d7d7;
        border-radius: 4px;
        height: 3rem;
        display: flex;
        align-items: center;
        line-height: 3rem;
    }

.nav-item[b-qvoo8z4yo9]  a.active {
    background-color: rgba(255,255,255,0.25);
    color: white;
}

.nav-item[b-qvoo8z4yo9]  a:hover {
    background-color: rgba(255,255,255,0.1);
    color: white;
}

@media (min-width: 641px) {
    .navbar-toggler[b-qvoo8z4yo9] {
        display: none;
    }

    .collapse[b-qvoo8z4yo9] {
        /* Never collapse the sidebar for wide screens */
        display: block;
    }
    
    .nav-scrollable[b-qvoo8z4yo9] {
        /* Allow sidebar to scroll for tall menus */
        height: calc(100vh - 3.5rem);
        overflow-y: auto;
    }
}
