/* Report e Dashboard: riquadri, tabelle e grafici (SVG). Stile come Fattura24. */
.dash-home { height: 100%; display: flex; flex-direction: column; min-height: 0; background: #fff; border: .5px solid var(--bordo-pannello); border-radius: 0 4px 0 0; overflow: hidden; }
.dash-home[hidden] { display: none; }
.dash-home > .rp-vista { flex: 1; border: 0; }
.dash-home > .avviso-ddt, .dash-home > div:first-child:not(.rp-vista) { flex: none; }

.rp-vista { height: 100%; display: flex; flex-direction: column; min-height: 0; background: #fff; border: .5px solid var(--bordo-pannello); border-radius: 0 4px 0 0; overflow: hidden; }
.rp-barra { display: flex; gap: 8px; align-items: center; flex-wrap: wrap; padding: 11px 15px 12px; flex: none; }
.rp-barra .el-spazio { flex: 1; min-width: 4px; }
.rp-corpo { flex: 1; min-height: 0; overflow: auto; position: relative; border-top: .5px solid var(--bordo); }
.rp-vista.sta-caricando .rp-corpo { opacity: .55; transition: opacity .15s; }
.rp-vista .el-stato { margin: 12px 15px; }
.rp-conta[hidden] { display: none; }
.rp-conta { min-width: 130px; height: 43px; }
.rp-conta .rp-conta-sotto { color: var(--rosso-testo); }
.rp-data { width: 140px; height: 36px; font-size: 14px; }
.rp-data[hidden] { display: none; }

/* scelta e pulsanti-scelta */
.rp-sel {
  appearance: none; -webkit-appearance: none; height: 36px; width: auto; max-width: 100%; padding: 0 30px 0 14px; border: .5px solid var(--bordo-campo); border-radius: 4px; cursor: pointer;
  background: #fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' fill='none' stroke='%236d6d6d' stroke-width='2'/%3E%3C/svg%3E") no-repeat right 11px center;
  color: #6d6d6d; font: 400 14px/1 var(--font);
}
.rp-sel.verde, .rp-sel.azzurro {
  color: #fff; text-transform: uppercase; letter-spacing: .01em;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' fill='none' stroke='%23ffffff' stroke-width='2'/%3E%3C/svg%3E");
}
.rp-sel.verde { background-color: var(--verde); border-color: var(--verde); }
.rp-sel.azzurro { background-color: var(--azzurro); border-color: var(--azzurro); }
.rp-sel option { color: #333; background: #fff; text-transform: none; }
.pul.arancio { background: #fff; color: #6d6d6d; }
.pul.arancio.attivo { background: var(--arancio); border-color: var(--arancio); color: #fff; }
.rp-modi { display: inline-flex; gap: 6px; }
.rp-modo { width: 34px; height: 34px; border: 0; border-radius: 4px; background: #eceff1; color: #6d6d6d; cursor: pointer; display: inline-flex; align-items: center; justify-content: center; }
.rp-modo.attivo { background: var(--arancio); color: #fff; }

/* dashboard: riquadri */
.rp-dash .rp-corpo { background: #f6f7fb; padding: 12px 15px 20px; }
.rp-griglia { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); gap: 12px; align-items: stretch; }
.rp-griglia > * { grid-column: span 3; }
.rp-griglia > .terzo { grid-column: span 4; }
.rp-tile { border-radius: 3px; padding: 9px 11px 8px; min-height: 84px; color: #fff; box-shadow: 0 1px 3px rgba(4, 26, 55, .2); display: flex; flex-direction: column; }
.rp-tile-testa { font: 500 13px/1.2 var(--font); letter-spacing: .01em; }
.rp-tile-val { font: 500 28px/1.1 var(--font); text-align: center; margin: auto 0; padding: 4px 0 2px; white-space: nowrap; }
.rp-tile small { font: 400 11px/1.2 var(--font); text-align: center; opacity: .92; }
.rp-tile.verde { background: #7cc47f; }
.rp-tile.arancio { background: #ffb74d; }
.rp-tile.blu { background: #64b5f6; }
.rp-tile.viola { background: #7986e0; }
.rp-tile.verde-sc { background: #57b05c; }
.rp-tile.arancio-sc { background: #fb9231; }
.rp-tile.bianco { background: #fff; color: var(--testo); border: .5px solid #ddd; }
.rp-tile.bianco .rp-tile-testa { color: #7a7a7a; }
.rp-tile.bianco .rp-tile-val { color: #6d6d6d; }
.rp-tile.bianco small { color: var(--muto); opacity: 1; }
.rp-card { background: #fff; border: .5px solid #ddd; border-radius: 3px; padding: 9px 11px 8px; box-shadow: 0 1px 3px rgba(4, 26, 55, .12); min-width: 0; display: flex; flex-direction: column; }
.rp-card-testa { font: 500 13px/1.2 var(--font); color: #6d6d6d; letter-spacing: .01em; margin-bottom: 6px; }
.rp-card-sotto { display: block; font: 400 11px/1.2 var(--font); color: var(--muto); margin: -3px 0 4px; }
.rp-card small { font: 400 11px/1.2 var(--font); color: var(--muto); }
.rp-iva-riga { display: flex; justify-content: space-between; font: 400 12px/1.2 var(--font); color: #6d6d6d; padding: 3px 0; }
.rp-iva-tot { font: 500 28px/1.15 var(--font); color: #858585; text-align: center; margin: 4px 0 0; white-space: nowrap; }
.rp-iva small { text-align: center; display: block; margin-top: -2px; }
.rp-indice { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 10px; align-items: center; }
.rp-indice .rp-iva-tot { text-align: left; font-size: 30px; margin: 0; }
.rp-indice small { display: block; margin-top: 2px; }
.rp-indice-graf { min-width: 0; }

/* grafici */
.rp-graf { width: 100%; min-width: 0; }
.rp-svg { display: block; overflow: visible; }
.rp-griglia-l { stroke: #e6e8eb; stroke-width: 1; }
.rp-zero { stroke: #b9c0c6; stroke-width: 1; }
.rp-asse { font: 400 10px var(--font); fill: #7a7a7a; }
.rp-et { font-size: 10px; }
.rp-punto { stroke: #fff; stroke-width: 1; }
.rp-legenda { display: flex; gap: 16px; justify-content: center; flex-wrap: wrap; padding: 4px 0 8px; font: 400 11px var(--font); color: #6d6d6d; }
.rp-legenda i, .rp-torta-leg i { display: inline-block; width: 12px; height: 8px; margin-right: 5px; border-radius: 1px; }
.rp-grafico-pieno { padding: 14px 15px 0; max-width: 1000px; }
.rp-torta { display: flex; gap: 24px; padding: 16px 15px; flex-wrap: wrap; align-items: center; }
.rp-torta .rp-graf { flex: 1 1 300px; max-width: 420px; }
.rp-torta-leg { list-style: none; margin: 0; padding: 0; flex: 1 1 260px; max-width: 420px; }
.rp-torta-leg li { display: flex; align-items: center; gap: 4px; padding: 5px 0; border-bottom: .5px solid #eceff1; font-size: 13px; color: #6d6d6d; }
.rp-torta-leg li span { flex: 1; }
.rp-torta-leg i { width: 11px; height: 11px; border-radius: 50%; margin-right: 6px; }

/* tabelle */
.rp-scorri { background: #fff; }
.rp-tab { width: 100%; min-width: 540px; border-collapse: collapse; font: 400 12px/1.3 var(--font); color: var(--testo); }
.rp-tab th { text-align: left; font: 500 12px/1.2 var(--font); height: 44px; padding: 0 10px; border-bottom: .5px solid var(--bordo); white-space: nowrap; background: #fff; position: sticky; top: 0; z-index: 1; user-select: none; }
.rp-tab th.ord { cursor: pointer; }
.rp-tab th.ord:hover { background: #f3f5f7; }
.rp-tab th.d, .rp-tab td.d { text-align: right; white-space: nowrap; }
.rp-tab td { height: 42px; padding: 0 10px; border-bottom: .5px solid #eceff1; }
.rp-tab tbody tr:nth-child(even) td { background: var(--riga-alt); }
.rp-tab tr.cliccabile { cursor: pointer; }
.rp-tab tr.cliccabile:hover td { background: #eaf1f8; }
.rp-tab tr.sub td { background: #eef1f5 !important; font-weight: 500; }
.rp-tab tr.rp-tot td { font-weight: 500; background: #f0f2f4 !important; border-top: .5px solid var(--bordo); }
.rp-freccia { margin-left: 4px; color: var(--muto); }
.rp-vuoto { padding: 28px 15px; text-align: center; color: var(--muto); font-size: 13px; }
.rp-rosso { color: var(--rosso); font-weight: 500; }
.rp-muto { color: var(--muto); }
.rp-verde { color: #43a047; }
.rp-nota { padding: 8px 15px 14px; font-size: 12px; color: var(--muto); }
.rp-titolino { font: 500 13px var(--font); color: #6d6d6d; padding: 14px 10px 4px; text-transform: uppercase; }

/* grafico a sinistra, tabella a destra */
.rp-diviso { display: flex; gap: 14px; align-items: flex-start; padding: 12px 15px; }
.rp-diviso-graf { flex: 1 1 0; min-width: 0; }
.rp-diviso-tab { flex: 1 1 0; min-width: 0; border: .5px solid var(--bordo); overflow-x: auto; }
.rp-diviso-tab .rp-tab { min-width: 400px; }
.rp-diviso.inv .rp-diviso-graf { flex: 2 1 0; }
.rp-diviso .rp-nota { padding: 8px 10px; }
.rp-pannello { flex: 0 0 280px; border: .5px solid var(--bordo); background: #f6f7fb; }
.rp-pann-testa { background: #4d5867; color: #fff; text-align: center; font: 500 13px/1.2 var(--font); padding: 9px 8px; }
.rp-pann-riga { display: flex; flex-direction: column; align-items: flex-end; padding: 7px 12px; font: 400 12px/1.3 var(--font); color: #6d6d6d; border-bottom: .5px solid #e3e6ea; }
.rp-pann-riga b { font-weight: 500; font-size: 11px; color: #555; }
.rp-pann-nota { display: block; padding: 9px 12px; font-size: 11px; color: var(--muto); }

/* bolli */
.rp-bolli-tile { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 10px; padding: 0 15px 12px; }
.rp-bollo { display: flex; align-items: center; gap: 8px; height: 50px; padding: 0 12px; border: .5px solid #ddd; border-radius: 5px; background: #fff; color: #7a7a7a; cursor: pointer; text-align: left; box-shadow: 0 1px 3px rgba(4, 26, 55, .16); min-width: 0; }
.rp-bollo.pieno { background: #7cc47f; border-color: #7cc47f; color: #fff; }
.rp-bollo.scelto { outline: 2px solid var(--azzurro); outline-offset: 1px; }
.rp-bollo-t { flex: 1; min-width: 0; line-height: 1.15; }
.rp-bollo-t small { display: block; font: 400 10px/1.25 var(--font); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.rp-bollo-n { font: 300 22px/1 var(--font); white-space: nowrap; }

/* telefono */
@media (max-width: 900px) {
  .rp-griglia > * { grid-column: span 6; }
  .rp-griglia > .terzo { grid-column: span 12; }
  .rp-bolli-tile { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .rp-diviso { flex-direction: column; }
  .rp-diviso > * { width: 100%; flex: none !important; }
  .rp-pannello { flex: none; }
}
@media (max-width: 480px) {
  .rp-tile-val { font-size: 22px; }
  .rp-iva-tot { font-size: 24px; }
  .rp-indice { grid-template-columns: minmax(0, 1fr); }
  .rp-barra { padding: 10px 10px 10px; }
  .rp-corpo { -webkit-overflow-scrolling: touch; }
  .rp-dash .rp-corpo { padding: 10px 10px 16px; }
  .rp-diviso { padding: 10px; }
}
@media print {
  .rp-barra { display: none; }
}

/* pulsanti della barra: VENDITE verde con menu, ALTRO azzurro, periodo arancio, libreria */
.rp-origine { min-width: 108px; }
.rp-periodo { height: 36px; }
.rp-libreria { margin-left: 2px; padding: 0 0 0 2px; color: #6e7a81; }
.rp-libreria:disabled { opacity: .55; }
.rp-ricerca { height: 36px; min-width: 240px; padding: 0 10px; border: .5px solid var(--bordo-campo); border-radius: 4px; font: 400 14px var(--font); color: #6d6d6d; }
.rp-filtri { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; padding: 0 15px 12px; flex: none; }
.rp-filtri[hidden] { display: none; }
.rp-tab td.rp-ellissi { max-width: 170px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.rp-tab td.rp-ellissi span { display: block; overflow: hidden; text-overflow: ellipsis; }

/* sottovoci del menu (IVA) */
.menu-voce-nav.con-sotto .sotto-freccia { display: inline-flex; transition: transform .15s; color: #6e7a81; }
.menu-voce-nav.con-sotto[aria-expanded="true"] .sotto-freccia { transform: rotate(90deg); }
.menu-sotto { list-style: none; margin: 0; padding: 0 0 2px 14px; }
.menu-sotto[hidden] { display: none; }
.menu-sotto .menu-voce-nav { height: 27px; font-size: 12.5px; }
@media (max-width: 480px) {
  .rp-ricerca { min-width: 0; width: 100%; }
  .rp-filtri { padding: 0 10px 10px; }
  .rp-filtri .rp-data { flex: 1; min-width: 0; }
}
