.spr-page-head .spr-filter-box{margin-top:22px}.spr-map-layout{display:grid;grid-template-columns:1fr 320px;gap:24px;margin:24px 0}.spr-map-layout .spr-map-box{height:560px}.spr-request-list{display:grid;gap:12px}.spr-request-list div{display:grid;grid-template-columns:1fr 2fr auto;gap:12px;padding:16px;border:1px solid var(--spr-border);border-radius:12px}.spr-request-list em{background:var(--spr-red-soft);color:var(--spr-red);border-radius:999px;padding:5px 10px;font-style:normal;font-weight:800}@media(max-width:980px){.spr-map-layout{grid-template-columns:1fr}.spr-map-layout .spr-map-box{height:360px}}


/* Step 43.3.4 - Esplora: filtri e toolbar realmente utilizzabili */
.spr-filter-chip-row a{
    min-height:44px;
    text-decoration:none;
    white-space:nowrap;
}
.spr-filter-chip-row a.spr-btn-light{
    background:var(--spr-btn-secondary-bg,#fff)!important;
    border-color:var(--spr-btn-secondary-border,var(--spr-border))!important;
    color:var(--spr-btn-secondary-text,#102033)!important;
}
.spr-filter-chip-row a.spr-btn-red,
.spr-filter-chip-row a.active{
    background:var(--spr-btn-primary-bg,var(--spr-red))!important;
    border-color:var(--spr-btn-primary-border,var(--spr-red))!important;
    color:var(--spr-btn-primary-text,#fff)!important;
}
.spr-explore-toolbar{
    display:flex;
    align-items:center;
    gap:14px;
    justify-content:space-between;
    flex-wrap:nowrap;
    margin:18px 0;
}
.spr-view-toggle{
    display:flex;
    align-items:center;
    gap:0;
    flex:0 0 auto;
}
.spr-view-toggle .spr-btn{
    border-radius:0;
    min-width:72px;
}
.spr-view-toggle .spr-btn:first-child{
    border-radius:9px 0 0 9px;
}
.spr-view-toggle .spr-btn:last-child{
    border-radius:0 9px 9px 0;
    margin-left:-1px;
}
.spr-explore-toolbar select{
    flex:1 1 auto;
    min-width:220px;
}
.spr-report-list-view{
    display:grid;
    grid-template-columns:1fr;
    gap:16px;
}
.spr-report-list-view .spr-report-card{
    display:grid;
    grid-template-columns:260px minmax(0,1fr);
}
.spr-report-list-view .spr-thumb{
    height:100%;
    min-height:170px;
}
@media(max-width:760px){
    .spr-explore-toolbar{
        flex-wrap:wrap;
    }
    .spr-view-toggle,
    .spr-explore-toolbar select{
        width:100%;
    }
    .spr-view-toggle .spr-btn{
        flex:1;
    }
    .spr-report-list-view .spr-report-card{
        grid-template-columns:1fr;
    }
    .spr-report-list-view .spr-thumb{
        height:170px;
    }
}

/* Banner contestuale non commerciale per card e dettaglio segnalazione */
.spr-context-banner{
    position:relative;
    overflow:hidden;
    display:grid;
    grid-template-columns:auto minmax(0,1fr) auto;
    gap:12px;
    align-items:center;
    margin-top:16px;
    padding:14px;
    border:1px solid #d9e6f3;
    border-radius:18px;
    background:linear-gradient(135deg,#ffffff 0%,#f7fbff 100%);
    box-shadow:0 14px 34px rgba(15,23,42,.08);
}
.spr-context-banner::before{
    content:"";
    position:absolute;
    inset:0 auto 0 0;
    width:5px;
    background:#1d4ed8;
}
.spr-context-banner-icon{
    width:42px;
    height:42px;
    border-radius:15px;
    display:flex;
    align-items:center;
    justify-content:center;
    background:#ffffff;
    border:1px solid rgba(15,23,42,.08);
    box-shadow:0 8px 18px rgba(15,23,42,.08);
    font-size:21px;
}
.spr-context-banner-body{
    min-width:0;
}
.spr-context-banner-body span{
    display:block;
    margin-bottom:4px;
    color:#475569;
    font-size:10px;
    font-weight:900;
    letter-spacing:.08em;
    line-height:1.1;
    text-transform:uppercase;
}
.spr-context-banner-body strong{
    display:block;
    color:#0f172a;
    font-size:14px;
    line-height:1.25;
}
.spr-context-banner-body p{
    margin:5px 0 0;
    color:#334155;
    font-size:12px;
    line-height:1.45;
}
.spr-context-banner-chips{
    display:flex;
    flex-wrap:wrap;
    gap:6px;
    margin-top:9px;
}
.spr-context-banner-chips em{
    display:inline-flex;
    align-items:center;
    min-height:22px;
    padding:3px 8px;
    border:1px solid rgba(15,23,42,.08);
    border-radius:999px;
    background:rgba(255,255,255,.72);
    color:#334155;
    font-size:10px;
    font-style:normal;
    font-weight:900;
}
.spr-context-banner-link{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:38px;
    padding:9px 13px;
    border-radius:12px;
    background:#0f172a;
    border:1px solid #0f172a;
    color:#ffffff;
    font-size:12px;
    font-weight:900;
    line-height:1.1;
    text-align:center;
    white-space:nowrap;
}
.spr-card-body .spr-context-banner{
    grid-template-columns:auto minmax(0,1fr);
    align-items:start;
    padding:13px 13px 14px;
    margin-top:15px;
}
.spr-card-body .spr-context-banner-link{
    grid-column:1 / -1;
    width:100%;
    min-height:34px;
}
.spr-card-body .spr-context-banner-body strong{
    font-size:13px;
}
.spr-card-body .spr-context-banner-body p{
    font-size:12px;
}
.spr-context-banner-animals{
    background:linear-gradient(135deg,#fff7ed 0%,#ffffff 72%);
    border-color:#fed7aa;
}
.spr-context-banner-animals::before{background:#f97316;}
.spr-context-banner-animals .spr-context-banner-link{background:#f97316;border-color:#f97316;color:#fff;}
.spr-context-banner-alert{
    background:linear-gradient(135deg,#fff1f2 0%,#ffffff 72%);
    border-color:#fecdd3;
}
.spr-context-banner-alert::before{background:#e11d48;}
.spr-context-banner-alert .spr-context-banner-link{background:#e11d48;border-color:#e11d48;color:#fff;}
.spr-context-banner-green{
    background:linear-gradient(135deg,#f0fdf4 0%,#ffffff 72%);
    border-color:#bbf7d0;
}
.spr-context-banner-green::before{background:#16a34a;}
.spr-context-banner-green .spr-context-banner-link{background:#16a34a;border-color:#16a34a;color:#fff;}
.spr-context-banner-community{
    background:linear-gradient(135deg,#eff6ff 0%,#ffffff 72%);
    border-color:#bfdbfe;
}
.spr-context-banner-community::before{background:#2563eb;}
.spr-context-banner-community .spr-context-banner-link{background:#2563eb;border-color:#2563eb;color:#fff;}
.spr-context-banner-territory{
    background:linear-gradient(135deg,#f8fafc 0%,#ffffff 72%);
    border-color:#cbd5e1;
}
.spr-context-banner-territory::before{background:#475569;}
.spr-context-banner-territory .spr-context-banner-link{background:#334155;border-color:#334155;color:#fff;}
@media(max-width:760px){
    .spr-context-banner{
        grid-template-columns:auto minmax(0,1fr);
    }
    .spr-context-banner-link{
        grid-column:1 / -1;
        width:100%;
    }
}

/* Step card segnalazioni: meta dashicons, excerpt e banner integrato */
.spr-report-card{
    display:flex;
    flex-direction:column;
    height:100%;
}
.spr-report-card .spr-thumb{
    flex:0 0 auto;
}
.spr-report-card .spr-card-body{
    display:flex;
    flex-direction:column;
    flex:1 1 auto;
    min-height:0;
    padding:16px;
}
.spr-report-card .spr-card-main{
    flex:0 0 auto;
}
.spr-report-card h3{
    min-height:42px;
    margin-bottom:9px;
}
.spr-report-card .spr-report-excerpt{
    display:-webkit-box;
    min-height:58px;
    margin:0;
    overflow:hidden;
    -webkit-box-orient:vertical;
    -webkit-line-clamp:3;
    color:var(--spr-muted);
    line-height:1.45;
}
.spr-card-meta-wrap{
    margin-top:14px;
}
.spr-card-icon-meta{
    color:var(--spr-muted);
    font-size:12px;
}
.spr-card-icon-meta-primary{
    display:grid;
    gap:7px;
    margin-top:0;
}
.spr-card-icon-meta span{
    display:inline-flex;
    align-items:center;
    gap:6px;
    min-width:0;
    line-height:1.35;
}
.spr-card-icon-meta .dashicons{
    flex:0 0 auto;
    width:16px;
    height:16px;
    color:var(--spr-report-icon-color, #334155);
    font-size:16px;
    line-height:16px;
}
.spr-card-icon-meta-inline{
    display:flex;
    flex-wrap:wrap;
    gap:10px;
    margin-top:0;
}
.spr-card-bottom{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:10px;
    margin-top:12px;
    padding-bottom:4px;
}
.spr-card-bottom .spr-status{
    flex:0 0 auto;
    margin-top:0;
}
.spr-card-body .spr-context-banner{
    display:grid;
    grid-template-columns:auto minmax(0,1fr);
    gap:10px 12px;
    align-items:start;
    margin-top:auto;
    padding:16px 0 0;
    border:0;
    border-top:1px solid var(--spr-border);
    border-radius:0;
    background:transparent;
    box-shadow:none;
}
.spr-card-body .spr-context-banner::before{
    display:none;
}
.spr-card-body .spr-context-banner-icon{
    width:36px;
    height:36px;
    border-radius:12px;
    background:#f8fafc;
    box-shadow:none;
}
.spr-card-body .spr-context-banner-icon .dashicons{
    width:20px;
    height:20px;
    color:var(--spr-report-icon-color, #334155);
    font-size:20px;
    line-height:20px;
}
.spr-card-body .spr-context-banner-body span{
    margin-bottom:3px;
}
.spr-card-body .spr-context-banner-body strong{
    font-size:13px;
    line-height:1.25;
}
.spr-card-body .spr-context-banner-body p{
    display:-webkit-box;
    margin-top:5px;
    overflow:hidden;
    -webkit-box-orient:vertical;
    -webkit-line-clamp:2;
    font-size:12px;
}
.spr-card-body .spr-context-banner-chips{
    margin-top:8px;
}
.spr-card-body .spr-context-banner-link{
    grid-column:1 / -1;
    width:100%;
    min-height:34px;
    margin-top:2px;
    border-radius:12px;
}
.spr-report-list-view .spr-report-card{
    height:auto;
}
.spr-report-list-view .spr-card-body .spr-context-banner{
    margin-top:18px;
}
.spr-context-banner-icon .dashicons{
    width:22px;
    height:22px;
    font-size:22px;
    line-height:22px;
}
.spr-detail .spr-meta .dashicons{
    width:16px;
    height:16px;
    color:var(--spr-report-icon-color, #334155);
    font-size:16px;
    line-height:16px;
    vertical-align:-3px;
}
@media(max-width:760px){
    .spr-card-bottom{
        align-items:flex-start;
        flex-direction:column;
    }
    .spr-card-icon-meta-inline{
        width:100%;
    }
    .spr-report-card h3,
    .spr-report-card .spr-report-excerpt{
        min-height:0;
    }
}


/* Step card segnalazioni: titolo troncato, hover e meta compatta */
.spr-report-card h3 a{
    color:var(--spr-text);
    font-weight:700;
    text-decoration:none;
    text-underline-offset:3px;
}
.spr-report-card h3 a:hover,
.spr-report-card h3 a:focus-visible{
    text-decoration:underline;
}
.spr-card-icon-meta strong{
    color:var(--spr-text);
    font-weight:800;
}
.spr-card-icon-meta-primary{
    grid-template-columns:repeat(2, minmax(0, auto));
    align-items:center;
    justify-content:start;
    column-gap:14px;
    row-gap:7px;
}
.spr-card-icon-meta-primary > span{
    min-width:0;
}
.spr-card-icon-meta-inline{
    align-items:center;
}
.spr-card-icon-meta-inline > span{
    min-width:auto;
}
@media(max-width:520px){
    .spr-card-icon-meta-primary{
        grid-template-columns:1fr;
    }
}

/* Fix: i pulsanti contestuali dentro le card devono seguire CTA / Bottoni del BO */
.spr-buttons-frontend .spr-context-banner .spr-context-banner-link{
    background:var(--spr-btn-primary-bg,var(--spr-red))!important;
    border-color:var(--spr-btn-primary-border,var(--spr-red))!important;
    color:var(--spr-btn-primary-text,#fff)!important;
    border-radius:var(--spr-btn-radius,12px);
    font-weight:var(--spr-btn-font-weight,900);
    text-transform:var(--spr-btn-text-transform,none);
}
.spr-buttons-frontend .spr-context-banner .spr-context-banner-link:hover{
    filter:brightness(.96);
}


/* Step paginazione esplora segnalazioni */
.spr-pagination{
    display:flex;
    flex-direction:column;
    align-items:center;
    gap:14px;
    margin:28px 0 6px;
}
.spr-pagination-summary{
    color:var(--spr-muted);
    font-size:13px;
    font-weight:800;
    text-align:center;
}
.spr-pagination-links{
    display:flex;
    flex-wrap:wrap;
    justify-content:center;
    gap:10px;
}
.spr-page-link{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-width:42px;
    min-height:42px;
    padding:10px 14px;
    border:1px solid var(--spr-pagination-bg,var(--spr-explore-pagination-bg,var(--spr-btn-primary-bg,var(--spr-red))));
    border-radius:10px;
    background:var(--spr-pagination-bg,var(--spr-explore-pagination-bg,var(--spr-btn-primary-bg,var(--spr-red))));
    color:var(--spr-pagination-text,#fff)!important;
    font-size:14px;
    font-weight:900;
    line-height:1;
    text-align:center;
    box-shadow:0 10px 20px rgba(229,9,20,.16);
}
.spr-page-link:hover,
.spr-page-link:focus-visible{
    filter:brightness(.94);
}
.spr-page-link.is-current{
    background:#fff;
    color:var(--spr-pagination-bg,var(--spr-explore-pagination-bg,var(--spr-btn-primary-bg,var(--spr-red))))!important;
    cursor:default;
}
@media(max-width:520px){
    .spr-pagination-links{
        gap:8px;
    }
    .spr-page-link{
        min-width:38px;
        min-height:38px;
        padding:9px 11px;
        font-size:13px;
    }
}


/* Spazio pubblicitario tra card Esplora */
.spr-explore-ad-slot{
    grid-column:1 / -1;
    width:100%;
    min-width:0;
}
.spr-explore-ad-slot .spr-ad-slot{
    width:100%;
    max-width:100%;
    margin-left:0;
    margin-right:0;
}
.spr-explore-ad-slot .spr-ad-slot-content{
    width:100%;
    overflow:hidden;
}
@media(max-width:980px){
    .spr-explore-ad-slot{
        grid-column:1 / -1;
    }
}

/* Step 55 surgical: dettaglio interno rubriche/articoli del portale */
.spr-rubric-detail-thumb{position:relative;display:block;overflow:hidden;border-radius:22px;background:#eef2f7;border:1px solid var(--spr-border)}
.spr-rubric-detail-thumb img{display:block;width:100%;height:auto;max-height:520px;object-fit:cover}
.spr-rubric-detail-thumb .spr-badge{position:absolute;left:18px;top:18px}
.spr-rubric-detail-excerpt{font-size:1.08rem;line-height:1.75;color:var(--spr-muted);font-weight:700;margin:12px 0 22px}
.spr-rubric-detail-content{font-size:1rem;line-height:1.8;color:var(--spr-text)}
.spr-rubric-detail-content p{margin:0 0 18px}
.spr-rubric-detail-content img{max-width:100%;height:auto;border-radius:16px}
.spr-rubric-detail-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px;padding-top:22px;border-top:1px solid var(--spr-border)}
@media (max-width: 780px){.spr-rubric-detail-actions{display:grid}.spr-rubric-detail-thumb img{max-height:none}.spr-rubric-detail-excerpt{font-size:1rem}}

/* Step 60 - dettaglio rubrica editoriale: testata più leggibile e pill non attaccata all'immagine */
.spr-rubric-detail-titlebox{
    display:block;
    margin:0 0 22px;
    padding:0 0 18px;
    border-bottom:1px solid var(--spr-border);
}
.spr-rubric-kicker-detail{
    display:inline-flex;
    width:auto;
    max-width:100%;
    margin:0 0 14px;
    border-radius:7px;
    padding:7px 10px;
    line-height:1;
}
.spr-rubric-detail-titlebox h1{
    margin:0 0 12px;
    font-size:clamp(32px,4vw,52px);
    line-height:1.05;
    color:#071523;
    letter-spacing:-.04em;
}
.spr-rubric-detail-titlebox .spr-meta{
    margin:0;
}
.spr-rubric-detail-gallery{
    margin:0 0 28px;
}
.spr-rubric-detail-thumb{
    border-radius:18px;
}
.spr-rubric-detail-excerpt{
    margin:18px 0 0;
}
.spr-rubric-detail .spr-rubric-kicker{
    border-radius:7px;
}
@media (max-width:780px){
    .spr-rubric-detail-titlebox{
        margin-bottom:18px;
        padding-bottom:16px;
    }
    .spr-rubric-detail-titlebox h1{
        font-size:32px;
        letter-spacing:-.02em;
    }
}

.spr-rubric-sidebar-topic{
    margin:14px 0 18px;
    padding:14px;
    border:1px solid rgba(15,23,42,.08);
    border-radius:14px;
    background:#fff7f7;
}
.spr-rubric-sidebar-topic-label{
    display:block;
    margin:0 0 8px;
    color:#64748b;
    font-size:12px;
    font-weight:900;
    text-transform:uppercase;
    letter-spacing:.04em;
}
.spr-rubric-sidebar-topic-pill{
    display:inline-flex;
    align-items:center;
    border-radius:7px;
    padding:7px 10px;
    background:var(--spr-red,#ed0012);
    color:#fff;
    text-decoration:none;
    font-size:13px;
    font-weight:900;
}
.spr-rubric-sidebar-topic-pill:hover{
    background:#c70010;
    color:#fff;
}
.spr-rubric-sidebar-topic-link{
    display:block;
    margin-top:10px;
    color:var(--spr-red,#ed0012);
    font-size:13px;
    font-weight:800;
    text-decoration:none;
}
.spr-rubric-sidebar-topic-link:hover{
    text-decoration:underline;
}

/* Step 66 - approfondimenti rubriche collegati al tema della segnalazione */
.spr-related-rubrics{
    margin:28px 0;
    padding:18px;
    border:1px solid var(--spr-border);
    border-radius:18px;
    background:#fff;
    box-shadow:0 14px 36px rgba(15,23,42,.06);
}
.spr-related-rubrics-head{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:12px;
    margin:0 0 14px;
}
.spr-related-rubrics-head span{
    font-size:18px;
    font-weight:900;
    color:#071523;
}
.spr-related-rubrics-head a{
    color:var(--spr-red,#ed0012);
    font-size:13px;
    font-weight:900;
    text-decoration:none;
}
.spr-related-rubrics-head a:hover{text-decoration:underline}
.spr-related-rubrics-list{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:12px;
}
.spr-related-rubric-card{
    display:flex;
    flex-direction:column;
    gap:8px;
    padding:14px;
    border:1px solid rgba(15,23,42,.08);
    border-radius:14px;
    background:#f8fafc;
    color:#071523;
    text-decoration:none;
}
.spr-related-rubric-card:hover{
    border-color:rgba(237,0,18,.35);
    background:#fff7f7;
}
.spr-related-rubric-card span{
    width:max-content;
    max-width:100%;
    border-radius:7px;
    padding:6px 9px;
    background:var(--spr-red,#ed0012);
    color:#fff;
    font-size:11px;
    line-height:1;
    font-weight:900;
    text-transform:uppercase;
}
.spr-related-rubric-card strong{
    font-size:15px;
    line-height:1.25;
}
.spr-related-rubric-card em{
    color:#64748b;
    font-size:13px;
    line-height:1.45;
    font-style:normal;
}
.spr-sidebar-related-rubrics{
    margin:18px 0;
    padding:14px;
    border:1px solid rgba(15,23,42,.08);
    border-radius:14px;
    background:#fff7f7;
}
.spr-sidebar-related-rubrics h3{margin-top:0}
@media(max-width:900px){
    .spr-related-rubrics-list{grid-template-columns:1fr}
    .spr-related-rubrics-head{align-items:flex-start;flex-direction:column}
}

/* Step 67 - rifinitura responsive rubrica e approfondimenti collegati */
.spr-rubric-detail-page{
    align-items:start;
}
.spr-rubric-detail-sidebar{
    position:sticky;
    top:96px;
}
.spr-rubric-detail-titlebox .spr-meta{
    display:flex;
    flex-wrap:wrap;
    gap:6px 8px;
    align-items:center;
}
.spr-rubric-detail-content h2,
.spr-rubric-detail-content h3,
.spr-rubric-detail-content h4{
    color:#071523;
    line-height:1.18;
    margin:28px 0 12px;
}
.spr-rubric-detail-content a{
    color:var(--spr-red,#ed0012);
    font-weight:800;
    text-decoration:underline;
    text-underline-offset:3px;
}
.spr-rubric-detail-content blockquote{
    margin:24px 0;
    padding:16px 18px;
    border-left:4px solid var(--spr-red,#ed0012);
    border-radius:0 14px 14px 0;
    background:#fff7f7;
    color:#334155;
}
.spr-rubric-detail-sidebar .spr-btn,
.spr-rubric-sidebar-topic-link{
    min-height:42px;
}
.spr-related-rubric-card{
    min-height:100%;
}
@media(max-width:980px){
    .spr-rubric-detail-page{
        gap:18px;
    }
    .spr-rubric-detail-sidebar{
        position:static;
        order:2;
    }
    .spr-rubric-detail-titlebox h1{
        font-size:clamp(30px,8vw,42px);
    }
    .spr-rubric-detail-actions{
        display:grid;
        grid-template-columns:1fr;
    }
    .spr-rubric-detail-actions .spr-btn{
        width:100%;
    }
    .spr-rubric-sidebar-topic{
        margin-bottom:14px;
    }
}
@media(max-width:560px){
    .spr-rubric-detail-head{
        padding-top:22px;
    }
    .spr-rubric-detail-titlebox{
        padding-bottom:14px;
    }
    .spr-rubric-kicker-detail,
    .spr-rubric-sidebar-topic-pill,
    .spr-related-rubric-card span{
        border-radius:7px;
    }
    .spr-rubric-detail-titlebox h1{
        font-size:30px;
        line-height:1.08;
    }
    .spr-rubric-detail-excerpt{
        font-size:15px;
        line-height:1.65;
    }
    .spr-rubric-detail-content{
        font-size:15px;
        line-height:1.75;
    }
    .spr-related-rubrics{
        padding:14px;
        border-radius:16px;
    }
}

/* Step 73 - uniforma pill dettaglio rubrica/approfondimenti: meno arrotondati */
.spr-rubric-kicker-detail,
.spr-rubric-detail .spr-rubric-kicker,
.spr-rubric-sidebar-topic-pill,
.spr-related-rubric-card span{
    border-radius:8px!important;
}
.spr-rubric-sidebar-topic-pill,
.spr-rubric-sidebar-topic-pill:visited,
.spr-rubric-sidebar-topic-pill:hover,
.spr-rubric-sidebar-topic-pill:focus{
    color:#fff!important;
    text-decoration:none!important;
}


/* Rubriche: commenti moderati */
.spr-rubric-comments {
    margin-top: 34px;
    padding: 26px;
    border: 1px solid rgba(15, 23, 42, 0.12);
    border-radius: 18px;
    background: #fff;
    box-shadow: 0 16px 36px rgba(15, 23, 42, 0.08);
}

.spr-rubric-comments-head h2 {
    margin: 4px 0 8px;
    font-size: clamp(1.45rem, 2.2vw, 2rem);
}

.spr-rubric-comments-head p {
    margin: 0 0 10px;
    color: #475569;
}

.spr-rubric-comments-kicker {
    display: inline-flex;
    align-items: center;
    margin: 0 0 8px;
    padding: 6px 11px;
    border-radius: 8px;
    background: rgba(185, 28, 28, 0.1);
    color: #991b1b;
    font-size: 0.75rem;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.spr-rubric-comments-note,
.spr-rubric-comment-alert {
    padding: 12px 14px;
    border-radius: 12px;
    background: rgba(245, 158, 11, 0.12);
    color: #78350f;
    font-weight: 700;
}

.spr-rubric-comment-alert {
    margin: 16px 0;
    background: rgba(22, 163, 74, 0.1);
    color: #14532d;
}

.spr-rubric-comment-list {
    display: grid;
    gap: 12px;
    margin: 20px 0;
}

.spr-rubric-comment {
    padding: 16px;
    border: 1px solid rgba(15, 23, 42, 0.1);
    border-radius: 14px;
    background: #f8fafc;
}

.spr-rubric-comment strong {
    display: block;
    color: #0f172a;
}

.spr-rubric-comment time {
    display: block;
    margin-top: 2px;
    color: #64748b;
    font-size: 0.85rem;
}

.spr-rubric-comment p {
    margin: 10px 0 0;
    color: #334155;
}

.spr-rubric-comments-empty {
    margin: 18px 0;
    color: #64748b;
    font-weight: 700;
}

.spr-rubric-comment-form {
    display: grid;
    gap: 14px;
    margin-top: 20px;
}

.spr-rubric-comment-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
}

.spr-rubric-comment-form label {
    display: grid;
    gap: 7px;
    color: #0f172a;
    font-weight: 800;
}

.spr-rubric-comment-form input[type="text"],
.spr-rubric-comment-form input[type="email"],
.spr-rubric-comment-form textarea {
    width: 100%;
    border: 1px solid rgba(15, 23, 42, 0.16);
    border-radius: 12px;
    padding: 11px 12px;
    color: #0f172a;
    background: #fff;
}

.spr-rubric-comment-form small {
    color: #64748b;
    font-weight: 600;
}

.spr-rubric-comment-privacy {
    display: flex !important;
    grid-template-columns: none;
    align-items: flex-start;
    gap: 10px !important;
    padding: 12px;
    border-radius: 12px;
    background: #f8fafc;
    color: #475569 !important;
    font-weight: 600 !important;
}

.spr-rubric-comment-privacy input {
    margin-top: 3px;
}

.spr-rubric-comment-hp {
    position: absolute;
    left: -9999px;
    height: 1px;
    overflow: hidden;
}

@media (max-width: 760px) {
    .spr-rubric-comments {
        padding: 20px;
        border-radius: 16px;
    }

    .spr-rubric-comment-grid {
        grid-template-columns: 1fr;
    }
}


/* Step 79 - aggiornamenti comunità segnalazioni */
.spr-community-updates {
    margin-top: 34px;
    padding: 26px;
    border: 1px solid rgba(15, 23, 42, 0.12);
    border-radius: 18px;
    background: #fff;
    box-shadow: 0 16px 36px rgba(15, 23, 42, 0.08);
}

.spr-community-updates-head h2 {
    margin: 4px 0 8px;
    font-size: clamp(1.45rem, 2.2vw, 2rem);
}

.spr-community-updates-head p {
    margin: 0 0 10px;
    color: #475569;
}

.spr-community-updates-kicker {
    display: inline-flex;
    align-items: center;
    margin: 0 0 8px;
    padding: 6px 11px;
    border-radius: 8px;
    background: rgba(185, 28, 28, 0.1);
    color: #991b1b;
    font-size: 0.75rem;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.spr-community-updates-note,
.spr-community-update-alert {
    padding: 12px 14px;
    border-radius: 12px;
    background: rgba(245, 158, 11, 0.12);
    color: #78350f;
    font-weight: 700;
}

.spr-community-update-alert {
    margin: 16px 0;
    background: rgba(22, 163, 74, 0.1);
    color: #14532d;
}

.spr-community-update-list {
    display: grid;
    gap: 12px;
    margin: 20px 0;
}

.spr-community-update {
    padding: 16px;
    border: 1px solid rgba(15, 23, 42, 0.1);
    border-radius: 14px;
    background: #f8fafc;
}

.spr-community-update-type {
    display: inline-flex;
    align-items: center;
    width: fit-content;
    margin-bottom: 8px;
    padding: 5px 9px;
    border-radius: 8px;
    background: #ed0012;
    color: #fff;
    font-size: 0.72rem;
    font-weight: 900;
    letter-spacing: 0.06em;
    text-transform: uppercase;
}

.spr-community-update strong {
    display: block;
    color: #0f172a;
}

.spr-community-update time {
    display: block;
    margin-top: 2px;
    color: #64748b;
    font-size: 0.85rem;
}

.spr-community-update p {
    margin: 10px 0 0;
    color: #334155;
}

.spr-community-updates-empty {
    margin: 18px 0;
    color: #64748b;
    font-weight: 700;
}

.spr-community-update-form {
    display: grid;
    gap: 14px;
    margin-top: 20px;
}

.spr-community-update-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
}

.spr-community-update-form label {
    display: grid;
    gap: 7px;
    color: #0f172a;
    font-weight: 800;
}

.spr-community-update-form input[type="text"],
.spr-community-update-form input[type="email"],
.spr-community-update-form select,
.spr-community-update-form textarea {
    width: 100%;
    border: 1px solid rgba(15, 23, 42, 0.16);
    border-radius: 12px;
    padding: 11px 12px;
    color: #0f172a;
    background: #fff;
}

.spr-community-update-form small {
    color: #64748b;
    font-weight: 600;
}

.spr-community-update-privacy {
    display: flex !important;
    grid-template-columns: none;
    align-items: flex-start;
    gap: 10px !important;
    padding: 12px;
    border-radius: 12px;
    background: #f8fafc;
    color: #475569 !important;
    font-weight: 600 !important;
}

.spr-community-update-privacy input {
    margin-top: 3px;
}

.spr-community-update-hp {
    position: absolute;
    left: -9999px;
    height: 1px;
    overflow: hidden;
}

@media (max-width: 760px) {
    .spr-community-updates {
        padding: 20px;
        border-radius: 16px;
    }

    .spr-community-update-grid {
        grid-template-columns: 1fr;
    }
}

/* Step 81 - rubriche lunghe: indice articolo e immagini/didascalie più leggibili */
.spr-rubric-reading-index{
    margin:0 0 18px;
    padding:18px;
    border:1px solid var(--spr-border);
    border-radius:14px;
    background:#fff;
    box-shadow:0 14px 34px rgba(15,23,42,.07);
}
.spr-rubric-reading-index h3{margin:0 0 6px}
.spr-rubric-reading-index p{margin:0 0 12px;color:var(--spr-muted);font-size:.92rem;line-height:1.45}
.spr-rubric-reading-index ol{margin:0;padding-left:18px;display:grid;gap:8px}
.spr-rubric-reading-index li{font-weight:800;color:var(--spr-text)}
.spr-rubric-reading-index li.is-level-3{margin-left:12px;font-weight:700;font-size:.94rem}
.spr-rubric-reading-index a{color:var(--spr-text);text-decoration:none}
.spr-rubric-reading-index a:hover{color:var(--spr-red);text-decoration:underline}
.spr-rubric-detail-content h2[id],
.spr-rubric-detail-content h3[id]{scroll-margin-top:96px}
.spr-rubric-detail-content.is-gallery-enhanced figure,
.spr-rubric-detail-content.is-gallery-enhanced .wp-caption{
    max-width:100%;
    margin:26px auto;
    border-radius:16px;
}
.spr-rubric-detail-content.is-gallery-enhanced figure img,
.spr-rubric-detail-content.is-gallery-enhanced .wp-caption img{
    display:block;
    width:100%;
    height:auto;
    border-radius:16px;
}
.spr-rubric-detail-content.is-gallery-enhanced figcaption,
.spr-rubric-detail-content.is-gallery-enhanced .wp-caption-text{
    margin:8px 4px 0;
    color:var(--spr-muted);
    font-size:.88rem;
    line-height:1.45;
    font-style:normal;
}
.spr-rubric-detail-content.is-gallery-enhanced .gallery,
.spr-rubric-detail-content.is-gallery-enhanced .wp-block-gallery{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:12px;
    margin:26px 0;
}
.spr-rubric-detail-content.is-gallery-enhanced .gallery-item{margin:0!important;width:auto!important;max-width:none!important}
.spr-rubric-detail-content.is-gallery-enhanced .gallery-icon img,
.spr-rubric-detail-content.is-gallery-enhanced .wp-block-gallery img{
    width:100%;
    height:220px;
    object-fit:cover;
    border-radius:14px;
}
.spr-rubric-detail-content.is-gallery-enhanced .gallery-caption{
    margin-top:7px;
    color:var(--spr-muted);
    font-size:.84rem;
    line-height:1.35;
}
@media (max-width: 780px){
    .spr-rubric-reading-index{padding:14px;border-radius:12px}
    .spr-rubric-detail-content.is-gallery-enhanced .gallery,
    .spr-rubric-detail-content.is-gallery-enhanced .wp-block-gallery{grid-template-columns:1fr}
    .spr-rubric-detail-content.is-gallery-enhanced .gallery-icon img,
    .spr-rubric-detail-content.is-gallery-enhanced .wp-block-gallery img{height:auto}
}

/* Step 83 - rubriche lunghe: box lettura rapida */
.spr-rubric-quick-read{
    margin:0 0 18px;
    padding:18px;
    border:1px solid var(--spr-border);
    border-radius:14px;
    background:#fff;
    box-shadow:0 14px 34px rgba(15,23,42,.07);
}
.spr-rubric-quick-read h3{margin:0 0 10px}
.spr-rubric-quick-read p{margin:12px 0 0;color:var(--spr-muted);font-size:.94rem;line-height:1.55;font-weight:650}
.spr-rubric-quick-read-stats{display:flex;flex-wrap:wrap;gap:8px}
.spr-rubric-quick-read-stats span{
    display:inline-flex;
    align-items:center;
    gap:5px;
    padding:7px 10px;
    border-radius:10px;
    background:#f8fafc;
    border:1px solid rgba(15,23,42,.08);
    color:var(--spr-text);
    font-size:.86rem;
    font-weight:750;
}
.spr-rubric-quick-read-stats b{color:var(--spr-red)}
@media (max-width: 780px){.spr-rubric-quick-read{padding:14px;border-radius:12px}}
