/* Dossier delle entrate (/dossier/<ente>): stili propri, sopra scheda.css.
   Solo classi sc-, niente Bootstrap. */

.sc-dossier-corpo { padding-top: 32px; }
.sc-dossier .sc-pannello-tab { min-width: 0; }
.sc-dossier .sc-pannello-tab[hidden] { display: none; }

/* Schede interne: focus visibile anche da tastiera */
.sc-dossier .sc-tab [role="tab"]:focus-visible { box-shadow: var(--fuoco); border-radius: 4px 4px 0 0; }

/* Grafico piccolo per gli indicatori di salute */
.sc-grafico.mini { height: 170px; }
.sc-fonte { font-size: 0.78rem; color: var(--testo-tenue); margin-top: 4px !important; }

/* Legenda testuale dei gruppi di confronto */
.sc-legenda-chiara { display: flex; flex-wrap: wrap; gap: 6px 20px; font-size: 0.86rem; color: var(--testo-tenue); margin-bottom: 16px !important; }
.sc-legenda-chiara span { display: inline-flex; align-items: center; gap: 7px; }
.sc-legenda-chiara i { width: 12px; height: 12px; border-radius: 2px; background: var(--c); display: inline-block; }

/* Pannelli uno sotto l'altro nelle schede */
.sc-dossier .sc-pannello-tab > .sc-pannello + .sc-pannello,
.sc-dossier .sc-pannello-tab > .sc-griglia2 + .sc-pannello,
.sc-dossier .sc-pannello-tab > .sc-pannello + .sc-griglia2,
.sc-dossier .sc-pannello-tab > .sc-avviso + .sc-pannello { margin-top: 20px; }
.sc-dossier .sc-sottosezione:first-of-type { margin-top: 8px !important; }
.sc-dossier .sc-pannello.sc-tabella h3 { margin-bottom: 8px; }
.sc-dossier .sc-pannello .sc-nota { margin-bottom: 8px; }
.sc-nota-su { margin: -6px 0 14px !important; }
.sc-dossier .sc-sottosezione small.sc-neutro { background: var(--carta); color: var(--testo-tenue); font-weight: 500; }

/* Tessere dei titoli di entrata: quante ne servono, a capo da sole */
.sc-tessere.sc-titoli { grid-template-columns: repeat(auto-fill, minmax(230px, 1fr)); }
.sc-tessere.sc-titoli .sc-tessera span { min-height: 2.6em; }
.sc-tessere.sc-titoli .sc-bollino { vertical-align: middle; margin-left: 4px; }

/* Tabelle */
.sc-dossier .sc-tabella th { vertical-align: bottom; }
.sc-dossier .sc-tabella th small { text-transform: none; letter-spacing: 0; font-weight: 400; }
.sc-dossier .sc-tabella th.sc-sx { text-align: left; }
.sc-dossier .sc-tabella td { white-space: nowrap; }
.sc-dossier .sc-tabella td:first-child, .sc-dossier .sc-tabella td.sc-desc { white-space: normal; min-width: 9em; }
.sc-dossier .sc-tabella .sc-bollino { margin-left: 6px; font-size: 0.66rem; padding: 2px 6px; }
.sc-tabella tr.sc-evidenza td { background: #F3F6FB; }
.sc-tabella tr.sc-evidenza td:first-child { box-shadow: inset 3px 0 0 var(--blu-medio); }
.sc-tabella tr.sc-riga-gruppo td { background: var(--carta); color: var(--blu); font-weight: 700; font-size: 0.8rem; letter-spacing: 0.06em; text-transform: uppercase; }
.sc-tabella tr.sc-subtotale td { font-weight: 700; color: var(--blu); border-top: 1px solid var(--linea-forte); }
.sc-tabella tr.sc-riepilogo td { font-weight: 700; color: var(--blu); background: #F7F5EF; }
.sc-tabella tr.sc-altro td { color: #4A4B4D; }
.sc-tabella tr.sc-sub td { font-size: 0.82rem; color: var(--testo-tenue); background: #FBFAF6; }
.sc-tabella td.sc-rientro { padding-left: 18px; }
.sc-tabella td.sc-rientro2 { padding-left: 34px; }
.sc-tabella .sc-tenue, .sc-tenue { color: var(--testo-tenue); }
.sc-tabella table.sc-gruppi th.sc-centro { text-align: center; }
.sc-tabella table.sc-gruppi .sc-bordo { border-left: 1px solid var(--linea-forte); }

/* Pulsante che apre le sottovoci */
.sc-apri { margin-left: 8px; font: inherit; font-size: 0.76rem; font-weight: 600; color: var(--blu-medio); background: var(--bianco); border: 1px solid var(--linea-forte); border-radius: 999px; padding: 1px 9px; cursor: pointer; }
.sc-apri::after { content: " +"; }
.sc-apri[aria-expanded="true"]::after { content: " \2212"; }
.sc-apri:hover { border-color: var(--oro); }
.sc-nascosto { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }

/* Blocchi apribili: serie storica, rendiconti per anno, voci tributarie */
details.sc-apribile { margin-top: 20px; background: var(--bianco); border: 1px solid var(--linea); border-radius: 10px; padding: 6px 18px 10px; }
.sc-rendiconti { display: grid; gap: 10px; margin-top: 20px; }
details.sc-rendiconto { background: var(--bianco); border: 1px solid var(--linea); border-radius: 10px; padding: 0 18px; }
details.sc-rendiconto > summary { cursor: pointer; display: flex; flex-wrap: wrap; align-items: center; gap: 8px 14px; padding: 14px 0; list-style: none; }
details.sc-rendiconto > summary::-webkit-details-marker { display: none; }
details.sc-rendiconto > summary::before { content: "\25B8"; color: var(--oro); font-size: 0.9rem; transition: transform 0.15s; }
details.sc-rendiconto[open] > summary::before { transform: rotate(90deg); }
details.sc-rendiconto[open] > summary { border-bottom: 1px solid var(--linea); }
details.sc-rendiconto > .sc-tabella { padding: 8px 0 14px; }
.sc-rendiconto-anno { font-weight: 700; color: var(--blu); font-size: 1rem; }
.sc-riassunto { font-size: 0.9rem; color: var(--testo); font-variant-numeric: tabular-nums; }
details.sc-rendiconto summary .sc-bollino, .sc-riassunto .sc-bollino { font-size: 0.7rem; }
details.sc-rendiconto summary:focus-visible, details.sc-apribile summary:focus-visible { box-shadow: var(--fuoco); border-radius: 4px; }

/* Avviso informativo (non di attenzione) */
.sc-avviso.sc-info { background: #EAF0F8; color: #1F3558; margin-top: 24px; }

@media (max-width: 700px) {
  .sc-dossier .sc-tabella table { font-size: 0.84rem; }
  .sc-dossier .sc-tabella th, .sc-dossier .sc-tabella td { padding: 7px 8px; }
  .sc-grafico.mini { height: 180px; }
  details.sc-rendiconto, details.sc-apribile { padding-inline: 12px; }
}

/* Nelle griglie le celle partono allineate (scheda.css spazia i pannelli fratelli) */
.sc-dossier .sc-griglia2 > .sc-pannello { margin-top: 0; }
/* Tabelle larghe: grafico sopra, tabella sotto, a tutta larghezza */
.sc-dossier .sc-griglia2.sc-impila { grid-template-columns: minmax(0, 1fr); }
/* Tessere con stato: il bollino resta in linea, non a blocco */
.sc-dossier .sc-tessera .sc-bollino { display: inline-block; margin-top: 0; font-size: 0.68rem; color: inherit; }
.sc-dossier .sc-tessera .sc-bollino.alto { color: #9C2F2A; }
.sc-dossier .sc-tessera .sc-bollino.medio { color: #8A5210; }
.sc-dossier .sc-tessera .sc-bollino.basso { color: #1F5E3C; }
/* I blocchi apribili non si allargano oltre la pagina: la tabella scorre dentro */
.sc-rendiconti { grid-template-columns: minmax(0, 1fr); }
details.sc-rendiconto, details.sc-apribile { min-width: 0; max-width: 100%; }
.sc-dossier .sc-tabella tr.sc-subtotale td { white-space: normal; }
