/* ============= OTTIMIZZAZIONE STAMPA ============= */

@media print {

    /* Reset generale per stampa */
    * {
        -webkit-print-color-adjust: exact !important;
        print-color-adjust: exact !important;
    }

    /* Nascondi elementi non necessari */
    .no-print,
    .app-header,
    .breadcrumb-nav,
    .wizard-container,
    .wizard-actions,
    .app-footer,
    .theme-toggle,
    .header-actions {
        display: none !important;
    }

    /* Mostra solo i risultati */
    body {
        background: white !important;
        margin: 0;
        padding: 20px;
    }

    .results-container {
        display: block !important;
        max-width: 100%;
        padding: 0;
    }

    /* Titolo principale più compatto */
    .results-container h2 {
        font-size: 1.25rem !important;
        margin: 0 0 1rem 0 !important;
        page-break-after: avoid;
    }

    /* Summary cards più compatte - 3 per riga */
    .summary-cards {
        display: grid !important;
        grid-template-columns: repeat(3, 1fr) !important;
        gap: 0.75rem !important;
        margin-bottom: 1rem !important;
        page-break-inside: avoid;
    }

    .summary-card {
        padding: 0.75rem !important;
        box-shadow: none !important;
        border: 1px solid #e5e7eb !important;
        border-radius: 8px !important;
        page-break-inside: avoid;
    }

    .summary-card::before {
        width: 3px !important;
    }

    .summary-icon {
        width: 32px !important;
        height: 32px !important;
        font-size: 1rem !important;
        margin-bottom: 0.5rem !important;
    }

    .summary-label {
        font-size: 0.75rem !important;
        margin-bottom: 0.25rem !important;
    }

    .summary-value {
        font-size: 1.25rem !important;
    }

    .summary-change {
        font-size: 0.7rem !important;
    }

    /* Dettagli risultati più compatti */
    .details-section {
        margin-bottom: 1rem !important;
    }

    .detail-card {
        padding: 0.75rem !important;
        margin-bottom: 0.75rem !important;
        border: 1px solid #e5e7eb !important;
        border-radius: 8px !important;
        page-break-inside: avoid;
    }

    .detail-header {
        padding: 0.5rem !important;
        margin-bottom: 0.5rem !important;
        border-radius: 6px !important;
    }

    .detail-header h3 {
        font-size: 0.95rem !important;
        margin: 0 !important;
    }

    .detail-body {
        padding: 0.5rem !important;
    }

    .detail-row {
        padding: 0.4rem 0 !important;
        font-size: 0.85rem !important;
    }

    .detail-label {
        font-size: 0.8rem !important;
    }

    .detail-value {
        font-size: 0.85rem !important;
    }

    /* Grafici - nascondi o riduci */
    .charts-container {
        display: none !important;
    }

    /* Alert/Disclaimer più compatto */
    .alert {
        padding: 0.75rem !important;
        margin: 0.75rem 0 !important;
        font-size: 0.8rem !important;
        border-radius: 6px !important;
        page-break-inside: avoid;
    }

    .alert-icon {
        font-size: 1rem !important;
    }

    .alert-title {
        font-size: 0.85rem !important;
    }

    .alert-message {
        font-size: 0.75rem !important;
    }

    /* Colori preservati */
    .summary-card.success::before {
        background: linear-gradient(180deg, #10b981 0%, #059669 100%) !important;
    }

    .summary-card.warning::before {
        background: linear-gradient(180deg, #f59e0b 0%, #d97706 100%) !important;
    }

    .summary-icon {
        background: #e8e9ff !important;
        color: #5b63f5 !important;
    }

    .summary-card.success .summary-icon {
        background: #d1fae5 !important;
        color: #10b981 !important;
    }

    .summary-card.warning .summary-icon {
        background: #fef3c7 !important;
        color: #f59e0b !important;
    }

    /* Colori detail headers */
    .detail-header.color-blue {
        background: linear-gradient(135deg, #dbeafe 0%, #bfdbfe 100%) !important;
        color: #1e40af !important;
        border-bottom: 2px solid #3b82f6 !important;
    }

    .detail-header.color-yellow {
        background: linear-gradient(135deg, #fef3c7 0%, #fde68a 100%) !important;
        color: #92400e !important;
        border-bottom: 2px solid #f59e0b !important;
    }

    .detail-header.color-green {
        background: linear-gradient(135deg, #d1fae5 0%, #a7f3d0 100%) !important;
        color: #065f46 !important;
        border-bottom: 2px solid #10b981 !important;
    }

    /* Forza interruzione pagina dopo prima pagina di dettagli */
    .detail-card:nth-child(4) {
        page-break-after: always;
    }

    /* Evita interruzioni indesiderate */
    h2,
    h3,
    h4 {
        page-break-after: avoid;
    }

    .summary-card,
    .detail-card,
    .alert {
        page-break-inside: avoid;
    }

    /* Margini pagina */
    @page {
        margin: 1.5cm;
        size: A4;
    }

    /* Titolo risultati con spacing corretto */
    .results-container>h2:first-of-type {
        margin-top: 0 !important;
        padding-top: 0 !important;
    }
}