/* ODCECEN - card documenti uniformi */
:root {
  --odcecen-primary: var(--e-global-color-primary, var(--mc-color-accent, #8b1e2d));
  --odcecen-card-border: 1px solid #d4d8dd;
  --odcecen-card-radius: 8px;
  --odcecen-card-shadow-hover: 0 8px 20px rgba(0,0,0,.13);
}

/* Solo le categorie della navigazione interna di Normativa vengono nascoste.
   Nessuna regola globale su ul/li del sito. */
.odcec-normativa > nav,
.odcec-normativa > nav ul { display: none !important; }

/* Tutte le liste documentali gestite dal plugin: due colonne desktop. */
.ordini-moduli-list,
.odcec-normativa .odcec-norme-list,
.odcec-document-cards,
.mc-albo-files,
.mc-report-file-list {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 12px 20px !important;
  list-style: none !important;
  margin: 1rem 0 2rem !important;
  padding: 0 !important;
}

.ordini-moduli-list > li,
.odcec-normativa .odcec-norme-list > li,
.odcec-document-cards > li,
.mc-albo-files > li,
.mc-report-file-list > li,
.odcecen-file-card {
  box-sizing: border-box !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  background: #fff !important;
  border: var(--odcecen-card-border) !important;
  border-radius: var(--odcecen-card-radius) !important;
  box-shadow: none !important;
  overflow: hidden !important;
  transition: box-shadow .2s ease, transform .2s ease, border-color .2s ease !important;
}

.ordini-moduli-list > li:hover,
.odcec-normativa .odcec-norme-list > li:hover,
.odcec-document-cards > li:hover,
.mc-albo-files > li:hover,
.mc-report-file-list > li:hover,
.odcecen-file-card:hover {
  box-shadow: var(--odcecen-card-shadow-hover) !important;
  transform: translateY(-2px) !important;
  border-color: #bcc2c9 !important;
}

/* Una sola riga: icona + titolo. */
.ordini-moduli-list > li > a,
.odcec-normativa .odcec-norme-list > li > a,
.odcec-document-cards > li > a,
.mc-albo-files > li > a,
.mc-report-file-list > li > a,
.odcecen-file-card > a,
.odcecen-file-link {
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  flex-wrap: nowrap !important;
  gap: .75rem !important;
  width: 100% !important;
  min-width: 0 !important;
  min-height: 64px !important;
  box-sizing: border-box !important;
  padding: .85rem 1.15rem !important;
  background: #fff !important;
  color: #20252a !important;
  font-size: 18px !important;
  font-weight: 700 !important;
  line-height: 1.25 !important;
  text-decoration: none !important;
}

.ordini-moduli-list > li > a > *,
.odcec-normativa .odcec-norme-list > li > a > *,
.odcec-document-cards > li > a > *,
.mc-albo-files > li > a > *,
.mc-report-file-list > li > a > *,
.odcecen-file-card > a > * {
  margin: 0 !important;
  padding: 0 !important;
  font-size: inherit !important;
  font-weight: inherit !important;
  line-height: inherit !important;
}

/* I titoli lunghi vanno a capo anche su schermi stretti. */
.ordini-moduli-list > li > a,
.odcec-normativa .odcec-norme-list > li > a,
.odcec-document-cards > li > a,
.mc-albo-files > li > a,
.mc-report-file-list > li > a,
.odcecen-file-link { white-space: normal !important; overflow-wrap: anywhere !important; }

/* Definizione standard "solo per screen reader" (identica a quella già
   stampata da mc_share_html per il blocco di condivisione): qui viene
   ridichiarata perché le liste documentali gestite da document-cards.js
   possono comparire anche in pagine dove quel blocco non è presente, e lo
   span aggiunto dallo script per descrivere formato/nuova finestra deve
   restare invisibile a schermo ma leggibile dagli screen reader ovunque. */
.screen-reader-text {
  border: 0 !important;
  clip: rect(1px, 1px, 1px, 1px) !important;
  clip-path: inset(50%) !important;
  height: 1px !important;
  margin: -1px !important;
  overflow: hidden !important;
  padding: 0 !important;
  position: absolute !important;
  width: 1px !important;
  word-wrap: normal !important;
  white-space: nowrap !important;
}

.odcecen-file-link > .screen-reader-text { white-space: normal !important; }

/* Nasconde badge/testi separati che riportano PDF, ZIP, ecc. */
.ordini-moduli-list > li small,
.ordini-moduli-list > li .file-type,
.odcec-normativa .odcec-norme-list > li small,
.odcec-normativa .odcec-norme-list > li .file-type,
.odcec-document-cards > li small,
.odcec-document-cards > li .file-type,
.mc-albo-files > li small,
.mc-albo-files > li .file-type,
.mc-report-file-list > li small,
.mc-report-file-list > li .file-type,
.odcecen-file-card small,
.odcecen-file-card .file-type { display: none !important; }

/* Icone Font Awesome: forma determinata dall'estensione, colore primario del sito. */
.ordini-moduli-list > li > a > .odcecen-file-icon,
.odcec-normativa .odcec-norme-list > li > a > .odcecen-file-icon,
.odcec-document-cards > li > a > .odcecen-file-icon,
.mc-albo-files > li > a > .odcecen-file-icon,
.mc-report-file-list > li > a > .odcecen-file-icon,
.odcecen-file-card > a > .odcecen-file-icon {
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  flex:0 0 1.55rem !important;
  width:1.55rem !important;
  height:1.55rem !important;
  margin:0 !important;
  padding:0 !important;
  color:var(--odcecen-primary) !important;
  font-size:1.45rem !important;
  line-height:1 !important;
  background:none !important;
  -webkit-mask:none !important;
  mask:none !important;
}

@media (max-width: 767px) {
  .ordini-moduli-list,
  .odcec-normativa .odcec-norme-list,
  .odcec-document-cards,
  .mc-albo-files,
  .mc-report-file-list { grid-template-columns: 1fr !important; }
}

/* Navigazione istituzionale: distinta dalle liste di file. */
.odcec-navigation-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;list-style:none!important;padding:0!important;margin:0!important}
.odcec-navigation-cards>li{display:flex;min-width:0;list-style:none!important;margin:0;padding:0}
.odcec-navigation-cards>li>a{display:flex;flex-direction:column;justify-content:center;gap:8px;box-sizing:border-box;width:100%;min-width:0;padding:22px;background:#fff;border:1px solid #d4d8dd;border-radius:8px;text-decoration:none;color:var(--mc-color-text,#303030);white-space:normal;overflow-wrap:anywhere;transition:box-shadow .2s ease}
.odcec-navigation-cards>li>a>h2{margin:0;font-size:18px;font-weight:700;line-height:1.35}
.odcec-navigation-cards>li>a>small{display:block;font-size:15px;font-weight:400;line-height:1.5}
.odcec-navigation-cards>li>a:hover{box-shadow:var(--odcecen-card-shadow-hover)}
.odcec-navigation-cards a:focus-visible,.odcecen-file-link:focus-visible{outline:3px solid var(--odcecen-primary);outline-offset:2px}
@media(max-width:767px){.odcec-navigation-cards{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){.odcecen-file-card,.odcec-navigation-cards>li>a{transition:none!important}.odcecen-file-card:hover{transform:none!important}}
