/* Step 38 - stabilizzazione finale frontend/card: anti-overflow e coerenza responsive */
.spr-site,
.spr-site *{
    min-width:0;
}
.spr-site img,
.spr-site video,
.spr-site iframe,
.spr-site embed,
.spr-site object{
    max-width:100%;
}
.spr-card,
.spr-report-card,
.spr-rubric-card,
.spr-category-card{
    min-width:0;
    overflow:hidden;
}
.spr-report-grid,
.spr-report-grid-2,
.spr-report-grid-3,
.spr-report-grid-cols-2,
.spr-report-grid-cols-3,
.spr-report-grid-cols-4{
    min-width:0;
}
.spr-report-grid-2,
.spr-report-grid-cols-2{
    grid-template-columns:repeat(2,minmax(0,1fr));
}
.spr-report-grid-3,
.spr-report-grid-cols-3{
    grid-template-columns:repeat(3,minmax(0,1fr));
}
.spr-report-grid-cols-4{
    grid-template-columns:repeat(4,minmax(0,1fr));
}
.spr-report-card .spr-card-body,
.spr-report-card .spr-card-main,
.spr-card-meta-wrap,
.spr-card-icon-meta,
.spr-card-icon-meta span,
.spr-context-banner,
.spr-context-banner-body,
.spr-context-banner-chips{
    min-width:0;
}
.spr-report-card h3,
.spr-report-card h3 a,
.spr-report-card .spr-report-excerpt,
.spr-card-icon-meta,
.spr-context-banner-body strong,
.spr-context-banner-body p,
.spr-pagination-summary{
    overflow-wrap:anywhere;
    word-break:normal;
}
.spr-report-card .spr-thumb{
    width:100%;
    max-width:100%;
}
.spr-report-list-view .spr-report-card{
    grid-template-columns:minmax(220px,260px) minmax(0,1fr);
    min-width:0;
}
.spr-report-list-view .spr-thumb{
    min-width:0;
}
.spr-pagination,
.spr-pagination-links,
.spr-page-link{
    max-width:100%;
}
.spr-page-link{
    text-decoration:none;
}
.spr-explore-toolbar,
.spr-filter-chip-row,
.spr-chip-row{
    min-width:0;
    max-width:100%;
}
.spr-filter-chip-row,
.spr-chip-row{
    overflow-wrap:anywhere;
}
.spr-map-layout,
.spr-two-col,
.spr-section-head{
    min-width:0;
}
@media(max-width:980px){
    .spr-report-grid,
    .spr-report-grid-2,
    .spr-report-grid-3,
    .spr-report-grid-cols-2,
    .spr-report-grid-cols-3,
    .spr-report-grid-cols-4,
    .spr-report-list-view,
    .spr-report-list-view .spr-report-card,
    .spr-map-layout,
    .spr-two-col{
        grid-template-columns:1fr!important;
    }
    .spr-report-list-view .spr-thumb{
        height:var(--spr-card-thumb-height,220px);
        min-height:0;
    }
    .spr-section-head,
    .spr-explore-toolbar{
        align-items:stretch;
        flex-direction:column;
    }
}
@media(max-width:620px){
    .spr-report-card .spr-card-body{
        padding:14px;
    }
    .spr-card-icon-meta-primary,
    .spr-card-icon-meta-inline{
        grid-template-columns:1fr!important;
        width:100%;
    }
    .spr-card-icon-meta-inline{
        gap:8px;
    }
    .spr-pagination-links{
        width:100%;
    }
    .spr-page-link{
        flex:1 1 auto;
        min-width:38px;
    }
}

/* Step 39 - fix select native: evita opzioni invisibili se il colore globale BO è chiaro */
.spr-site select,
.spr-site select option,
.spr-site select optgroup,
.spr-filter-box select,
.spr-filter-box select option,
.spr-form select,
.spr-form select option,
.spr-register-form select,
.spr-register-form select option,
.spr-toolbar select,
.spr-toolbar select option,
.spr-partner-panel select,
.spr-partner-panel select option{
    background-color:#ffffff;
    color:#071523;
}
.spr-site select:disabled,
.spr-site select option:disabled,
.spr-filter-box select:disabled,
.spr-form select:disabled,
.spr-register-form select:disabled{
    background-color:#f8fafc;
    color:#94a3b8;
}
.spr-site select option:checked,
.spr-site select option:hover,
.spr-filter-box select option:checked,
.spr-filter-box select option:hover,
.spr-form select option:checked,
.spr-form select option:hover,
.spr-register-form select option:checked,
.spr-register-form select option:hover{
    background-color:#2563eb;
    color:#ffffff;
}

/* Step 54 - dettaglio segnalazione: immagine interna più leggibile e cliccabile */
.spr-detail .spr-gallery-main{
    height:420px;
    min-height:360px;
}
.spr-detail .spr-gallery-main-link{
    cursor:zoom-in;
    overflow:hidden;
}
.spr-detail .spr-status-block{
    margin-top:20px;
}
@media(max-width:980px){
    .spr-detail .spr-gallery-main{
        height:300px;
        min-height:260px;
    }
}
