/* Lo stile del pannello contab, in un file servito dall'app: la CSP di nginx
   (`default-src 'self'`) blocca `<style>` scritto nella pagina, non un <link>
   allo stesso sito. Qui sta TUTTO lo stile che prima era inline nei template. */

html, body { height: 100%; }
body { margin: 0; display: flex; flex-direction: column; height: 100dvh; }

.barra { flex: 0 0 auto; display: flex; flex-wrap: wrap; gap: .6rem 1rem; align-items: center;
         padding: .5rem .9rem; border-bottom: 1px solid var(--bs-border-color); }
.barra .zona { font-weight: 600; }
.barra nav { display: flex; flex-wrap: wrap; gap: .5rem; align-items: center; }
.barra nav a { text-decoration: none; }

.pannello { flex: 1 1 auto; display: flex; min-height: 0; }
.pannello #pagina { flex: 1 1 auto; min-width: 0; overflow-y: auto; padding: 1rem; }
.pannello .chat { flex: 0 0 42%; min-width: 0; border-left: 1px solid var(--bs-border-color); }
.pannello .chat iframe { display: block; width: 100%; height: 100%; border: 0; }

.importo { font-variant-numeric: tabular-nums; text-align: right; white-space: nowrap; }

/* la causale della fattura: gli a capo del testo arrivano dall'XML e si vedono */
.causale { white-space: pre-line; }
.errore { background: var(--bs-danger-bg-subtle); color: var(--bs-danger-text-emphasis);
          padding: .5rem .8rem; border-radius: var(--bs-border-radius); margin-bottom: 1rem; }

/* il modulo di login (prima aveva uno `style` inline) */
.modulo-login { max-width: 24rem; }

/* lo stato in evidenza nella pagina della catena */
.stato-ok { color: var(--bs-success-text-emphasis); font-weight: 600; }
.stato-ko { color: var(--bs-danger-text-emphasis); font-weight: 600; }

.filtri { margin-bottom: 1rem; }

@media (max-width: 48rem) {
  body { height: auto; }
  .pannello { flex-direction: column; }
  .pannello .chat { flex: 0 0 auto; height: 60vh; border-left: 0; border-top: 1px solid var(--bs-border-color); }
}