
.cr-pagina {
  --cr-testo: var(--dp-fg, #ededf0);
  --cr-muto: var(--dp-muted, #a1a1aa);
  --cr-bordo: var(--dp-border, rgba(255, 255, 255, 0.1));
  --cr-vetro: rgba(24, 24, 26, 0.62);
  display: grid; gap: 14px; max-width: 1280px; min-width: 0; color: var(--cr-testo);
}
.cr-pagina :focus-visible { outline: 2px solid #fff; outline-offset: 2px; }
.cr-muto { margin: 0; color: var(--cr-muto); font-size: 0.875rem; }
.cr-filtri { display: grid; gap: 12px; padding: 14px 16px; border: 1px solid var(--cr-bordo); border-radius: 16px; background: var(--cr-vetro); box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.07); }
.cr-riga-filtri { display: flex; flex-wrap: wrap; align-items: flex-end; gap: 10px 16px; }
.cr-campo { display: grid; gap: 4px; }
.cr-campo label { font-size: 0.8125rem; color: var(--cr-muto); }
.cr-data, .cr-utente-sel { min-height: 40px; min-width: 150px; }
.cr-chips { display: flex; flex-wrap: wrap; gap: 8px; }
.cr-chip { display: inline-flex; align-items: center; gap: 6px; min-height: 36px; padding: 6px 14px; border: 1px solid var(--cr-bordo); border-radius: 999px; background: transparent; color: var(--cr-testo); font: inherit; font-size: 0.875rem; cursor: pointer; }
.cr-chip:hover { border-color: #fff; }
.cr-chip.is-on { background: #f4f4f5; border-color: #f4f4f5; color: #0a0a0b; font-weight: 600; }
.cr-conto { margin: 0 0 4px; color: var(--cr-muto); font-size: 0.875rem; }
.cr-errore { margin: 0; padding: 12px 14px; border: 1px solid rgba(239, 68, 68, 0.5); border-radius: 12px; }
.cr-vuoto { display: grid; justify-items: start; gap: 8px; padding: 18px; border: 1px dashed rgba(255, 255, 255, 0.28); border-radius: 14px; }
.cr-vuoto__titolo { margin: 0; font-weight: 600; }
.cr-linea { position: relative; margin: 0; padding: 0 0 0 22px; list-style: none; display: grid; gap: 8px; }
.cr-linea::before { content: ""; position: absolute; left: 7px; top: 4px; bottom: 4px; width: 2px; background: var(--cr-bordo); }
.cr-mese { position: relative; padding-top: 12px; }
.cr-mese h3 { margin: 0; font-size: 0.8125rem; font-weight: 700; letter-spacing: 0.1em; text-transform: uppercase; color: var(--cr-muto); }
.cr-mese::before { content: ""; position: absolute; left: -20px; top: 17px; width: 12px; height: 12px; border-radius: 50%; border: 2px solid #71717a; background: #0a0a0b; }
.cr-voce { position: relative; }
.cr-voce::before { content: ""; position: absolute; left: -18px; top: 20px; width: 8px; height: 8px; border-radius: 50%; background: #71717a; }
.cr-oggi { position: relative; display: flex; align-items: center; gap: 10px; padding: 8px 12px; border: 1px solid #fff; border-radius: 12px; background: rgba(255, 255, 255, 0.08); scroll-margin-top: 80px; }
.cr-oggi__pallino { position: absolute; left: -22px; width: 14px; height: 14px; border-radius: 50%; background: #fff; box-shadow: 0 0 0 4px rgba(255, 255, 255, 0.2); }
.cr-evento { display: flex; gap: 12px; align-items: flex-start; padding: 12px 14px; border: 1px solid var(--cr-bordo); border-radius: 14px; background: var(--cr-vetro); color: inherit; text-decoration: none; transition: border-color 160ms ease-out, background 160ms ease-out; }
.cr-evento--apribile { width: 100%; text-align: left; font: inherit; cursor: pointer; }
.cr-evento--apribile:hover, .cr-evento--apribile[aria-expanded="true"] { border-color: rgba(255, 255, 255, 0.5); background: rgba(255, 255, 255, 0.06); }
.cr-evento--apribile:focus-visible { outline: 2px solid #fff; outline-offset: 2px; }
.cr-evento__nota { margin-left: 8px; cursor: inherit; }
.cr-dettaglio { margin: 6px 0 0 14px; padding: 12px 14px; border-left: 2px solid rgba(255, 255, 255, 0.5); display: grid; gap: 10px; justify-items: start; }
.cr-dettaglio__nota { margin: 0; white-space: pre-wrap; overflow-wrap: anywhere; line-height: 1.5; }
.cr-evento.is-oggi { border-color: #fff; }
.cr-evento__icona { flex: none; display: grid; place-items: center; width: 32px; height: 32px; border-radius: 10px; border: 1px solid var(--cr-bordo); color: #f4f4f5; }
.cr-evento__corpo { display: grid; gap: 4px; min-width: 0; flex: 1; }
.cr-evento__riga { display: flex; flex-wrap: wrap; align-items: baseline; justify-content: space-between; gap: 4px 12px; }
.cr-evento__titolo { overflow-wrap: break-word; min-width: 0; font-weight: 600; }
.cr-evento__importo { font-variant-numeric: tabular-nums; font-weight: 600; white-space: nowrap; }
.cr-evento__sotto { display: flex; flex-wrap: wrap; align-items: center; gap: 4px 12px; color: var(--cr-muto); font-size: 0.8125rem; }
.cr-evento__chi { display: inline-flex; align-items: center; gap: 6px; }
.cr-evento__progetto { padding: 1px 8px; border: 1px solid var(--cr-bordo); border-radius: 999px; }
.cr-utente { display: inline-block; flex: none; width: 10px; height: 10px; border-radius: 50%; background: var(--cr-colore, #a1a1aa); box-shadow: 0 0 0 1px rgba(255, 255, 255, 0.25); }
.cr-utente--nessuno { background: transparent; }
.cr-registro { margin: 0; padding: 0; list-style: none; display: grid; gap: 6px; }
.cr-reg { display: grid; grid-template-columns: 130px 1fr auto; gap: 4px 12px; align-items: baseline; padding: 10px 12px; border: 1px solid var(--cr-bordo); border-radius: 12px; background: var(--cr-vetro); color: inherit; text-decoration: none; }
a.cr-reg:hover { border-color: rgba(255, 255, 255, 0.5); }
.cr-reg__quando { color: var(--cr-muto); font-size: 0.8125rem; font-variant-numeric: tabular-nums; }
.cr-reg__testo { display: inline-flex; flex-wrap: wrap; align-items: center; gap: 4px; overflow-wrap: anywhere; }
.cr-reg__cosa { overflow-wrap: anywhere; }
@media (max-width: 640px) {
  .cr-riga-filtri { align-items: stretch; flex-direction: column; }
  .cr-data, .cr-utente-sel { width: 100%; }
  .cr-evento { padding: 10px 12px; }
  .cr-reg { grid-template-columns: 1fr; }
}
@media (prefers-reduced-motion: reduce) { .cr-evento { transition: none; } }
@media print { .cr-filtri { display: none; } }
.cr-storia__aiuto { margin: 0 0 12px; }
.cr-storia__barra { display: flex; flex-wrap: wrap; gap: 10px; align-items: center; margin-bottom: 16px; }
.cr-storia__filtro { width: auto; min-width: 200px; }
.cr-storia__lista { display: grid; gap: 12px; }
.cr-storia { --cr-colore: #a1a1aa; padding: 14px 16px; border: 1px solid var(--cr-bordo); border-left: 4px solid var(--cr-colore); border-radius: 14px; background: var(--cr-vetro); }
.cr-storia__testa { display: flex; flex-wrap: wrap; align-items: center; gap: 6px 12px; font-size: 12px; color: var(--dp-muted, #a1a1aa); }
.cr-storia__chi { display: inline-flex; align-items: center; gap: 6px; color: var(--dp-fg, #fff); }
.cr-storia__tipo { display: inline-flex; align-items: center; gap: 4px; }
.cr-storia__az { margin-left: auto; display: inline-flex; gap: 2px; }
.cr-storia__titolo { margin: 8px 0 4px; font-size: 15px; line-height: 1.35; }
.cr-storia__testo { margin: 0; white-space: pre-wrap; overflow-wrap: anywhere; line-height: 1.55; }
.cr-storia__sotto { margin: 8px 0 0; font-size: 12px; color: var(--dp-muted, #a1a1aa); }
@media (max-width: 640px) { .cr-storia__az { margin-left: 0; } .cr-storia__filtro { width: 100%; } }
.cr-filtri[hidden] { display: none; }
.cr-azioni { display: flex; flex-wrap: wrap; gap: 8px 10px; }
.cr-colonne { display: grid; grid-template-columns: minmax(0, 1fr); gap: 24px; align-items: start; min-width: 0; }
.cr-col { display: grid; gap: 12px; min-width: 0; }
.cr-col__titolo { margin: 0; font-size: 1.125rem; }
.cr-col--piano { padding: 16px; border: 1px solid var(--cr-bordo); border-radius: 18px; background: rgba(255, 255, 255, 0.02); }
.cr-col--piano[hidden] { display: none; }
@media (min-width: 1100px) {
  .cr-colonne { grid-template-columns: minmax(0, 3fr) minmax(0, 2fr); }
  .cr-col--piano { position: sticky; top: 12px; max-height: calc(100vh - 120px); overflow-y: auto; overscroll-behavior: contain; }
}
.cr-viste { display: flex; flex-wrap: wrap; gap: 8px; }
.cr-vista { display: inline-flex; align-items: center; gap: 6px; min-height: 40px; padding: 6px 14px; border: 1px solid var(--cr-bordo); border-radius: 12px; background: transparent; color: var(--cr-testo); font: inherit; font-size: 0.9375rem; cursor: pointer; }
.cr-vista:hover { border-color: #fff; }
.cr-vista.is-on { background: #f4f4f5; border-color: #f4f4f5; color: #0a0a0b; font-weight: 600; }
.cr-vista--socio { border-style: dashed; margin-left: 4px; }
.cr-vista--socio.is-on { border-style: solid; }
.cr-vista--socio.is-on .cr-utente { box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.45); }
.cr-google { text-decoration: none; }
@media (max-width: 640px) {
  .cr-azioni > .dp-btn { flex: 1 1 100%; justify-content: center; }
  .cr-vista { flex: 1 1 auto; justify-content: center; }
  .cr-col--piano { padding: 12px; }
  .cr-data, .cr-utente-sel { min-width: 0; }
}
.dps-spese__barra { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 10px 16px; }
.dps-spese__modo, .dps-spese__rapidi { display: flex; flex-wrap: wrap; gap: 8px; }
.dps-spese__modo .dps-spese__pill { min-height: 40px; padding: 6px 16px; font-size: 0.9375rem; }
.dps-spese__barra .dps-spese__pill[aria-pressed="true"] { background: #f4f4f5; border-color: #f4f4f5; color: #0a0a0b; font-weight: 600; }
.dps-spese__tutte tbody tr[data-voce] { cursor: pointer; }
.dps-spese__tutte tbody tr[data-voce]:hover { background: rgba(255, 255, 255, 0.05); }
.dps-spese__progetto { display: inline-flex; align-items: center; gap: 4px; min-height: 32px; padding: 2px 10px; border: 1px solid var(--dp-border, rgba(255, 255, 255, 0.1)); border-radius: 999px; background: transparent; color: inherit; font: inherit; cursor: pointer; text-align: left; }
.dps-spese__progetto:hover { border-color: var(--dp-fg, #ededf0); }
.dps-spese__progetto:focus-visible { outline: 2px solid var(--dp-fg, #ededf0); outline-offset: 2px; }
.dps-cl__contatto { display: inline-flex; align-items: center; min-height: 32px; color: var(--dp-fg, #ededf0); text-decoration: underline; text-underline-offset: 3px; overflow-wrap: anywhere; }
.dps-cl__contatto:hover { text-decoration-thickness: 2px; }
.dps-cl__contatto:focus-visible { outline: 2px solid var(--dp-fg, #ededf0); outline-offset: 2px; border-radius: 4px; }
.dps-cl__ricorda { margin-top: 8px; }
