/* Stile dell'area «documento» (finestra di preventivo, ordine, DDT, proforma, fatture): si carica dopo app.css e può ritoccarlo.
   Ricalcato su Fattura24: misure rilevate a vista sulla finestra 1001x700 a 1366x768. Tutto riscritto qui, nessun file loro. */

/* ---------- testa: titolo, [id], libri, schede ---------- */
.fin.documento { background: #f8f8f8; }
.fin.documento .fin-testa { align-items: center; padding: 14px 24px 0; }
.fin.documento .fin-testa h2 { font: 400 30px/1.2 var(--font-titoli); }
.fin.documento .fin-testa h2 small { font: 400 20px var(--font-titoli); margin-left: 4px; }
.fin.documento .fin-id { font: 400 13px var(--font); color: #6b7378; align-self: flex-start; padding-top: 10px; }
.fin.documento .fin-libri { color: #6d6d6d; display: inline-flex; align-self: flex-start; padding-top: 6px; }
.fin.documento .fin-stato { align-self: flex-start; margin-top: 10px; }
.fin.documento .fin-schede { margin-top: 6px; margin-left: -24px; margin-right: -24px; }
.fin.documento .fin-schede { padding-left: 9px; }
.fin.documento .scheda-doc { padding: 0 15px; font-size: 13px; height: 32px; color: #6b7378; border-bottom: 2px solid transparent; }
.fin.documento .scheda-doc.attiva { color: #464d52; border-bottom-color: #464d52; }
.fin.documento .fin-corpo { padding: 21px 20px 16px; scrollbar-width: thin; scrollbar-color: #b9b9b7 transparent; border-top: .5px solid #e4e4e4; box-shadow: inset 0 3px 3px -3px rgba(0, 0, 0, .08); }

/* ---------- campi: bianchi se si possono scrivere, grigi se no ---------- */
.fin.documento input[type=text], .fin.documento select, .fin.documento textarea { background-color: #f0f1f2; border-color: #dadde0; font-size: 14px; }
.fin.documento input, .fin.documento select, .fin.documento output { font-size: 14px; }
.fin.documento input:disabled, .fin.documento select:disabled, .fin.documento textarea:disabled { background-color: #ebecee; color: #333; }
.fin.documento select.sel-ok {
  background-color: #4bb14d; color: #fff; border-color: #4bb14d;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6'%3E%3Cpath d='M0 0h10L5 6z' fill='%23fff'/%3E%3C/svg%3E");
}
.fin.documento select.sel-ok option { background: #fff; color: #000; }
.in-ic { position: relative; display: block; min-width: 0; }
.in-ic > input { padding-right: 30px; }
.in-ic .in-ic-svg { position: absolute; right: 9px; top: 50%; transform: translateY(-50%); color: #333; pointer-events: none; }
.in-ic .ic-giu { right: 2px; }
.in-ic > input:disabled + .in-ic-svg { color: #555; }
.in-az > input { padding-right: 108px; }
.pul-az {
  position: absolute; right: 5px; top: 50%; transform: translateY(-50%); height: 25px; min-width: 94px; padding: 0 9px;
  border: 0; border-radius: 4px; background: var(--verde); color: #fff; cursor: pointer;
  font: 500 11px/1 var(--font); text-transform: uppercase; letter-spacing: .02em;
  display: inline-flex; align-items: center; justify-content: center; gap: 6px;
}
.pul-az:hover { background: var(--verde-scuro); }
.et-info { display: inline-flex; vertical-align: -3px; margin-left: 6px; color: #6d6d6d; }

/* ---------- Dati: due colonne ---------- */
.fin.documento .dati-doc { grid-template-columns: 270px minmax(0, 1fr); gap: 0 15px; align-items: start; }
.fin.documento .dati-doc .col { gap: 11px; }
.fin.documento .col-sx .campo { grid-template-columns: 100px minmax(0, 1fr); column-gap: 6px; }
.fin.documento .col-dx .campo { grid-template-columns: 83px minmax(0, 1fr); column-gap: 6px; }
.fin.documento .col-sx .campo-aiuto { grid-column: 2; line-height: 1.2; }
.fin.documento .campo-et { font: 300 16px/1.2 var(--font-titoli); }
.fin.documento .in-riga { display: grid; gap: 8px; }
.fin.documento .r-ind { grid-template-columns: minmax(0, 1fr) 82px; }
.fin.documento .r-citta { grid-template-columns: 271fr 205fr 84fr; }
.fin.documento .r-piva { grid-template-columns: 269fr 299fr; gap: 7px; }
.fin.documento .r-sdi { grid-template-columns: 242fr 326fr; gap: 7px; }
.fin.documento .in-riga > * { flex: none; }
.fin.documento .dati-doc .causale { margin-top: 11px; }
.fin.documento .dati-doc .causale .campo { grid-template-columns: 100px minmax(0, 1fr); column-gap: 6px; }
.fin.documento .causale-riga { display: flex; gap: 6px; align-items: flex-start; }
.fin.documento .causale-riga .campo { flex: 1; min-width: 0; }
.fin.documento .causale textarea { min-height: 35px; height: 35px; resize: none; overflow: hidden; padding: 4px 7px; line-height: 1.3; }
.pul-agg { position: relative; flex: none; width: 212px; height: 36px; padding: 0; font-size: 12px; font-weight: 500; }
.pul-agg .conta {
  position: absolute; right: -6px; top: -8px; width: 18px; height: 18px; border-radius: 50%; background: #fff; border: .5px solid #7a99c4;
  color: #5a78a4; font: 500 11px/17px var(--font); text-align: center;
}

/* ---------- Beni/Servizi ---------- */
.fin.documento .beni-testa { display: flex; align-items: center; gap: 12px; margin: 34px 0 11px; }
.fin.documento .righe-azioni { display: flex; gap: 12px; padding: 14px 20px; }
.fin.documento .righe-azioni .pul { height: 36px; padding: 0 12px; font-size: 12px; font-weight: 500; letter-spacing: .02em; }
.fin.documento .beni-testa h3 { margin: 0 4px 0 0; padding: 0; border: 0; font: 400 26px/1.2 var(--font-titoli); color: var(--testo); }
.fin.documento .beni-testa .pul { height: 36px; padding: 0 12px; font-size: 12px; font-weight: 500; letter-spacing: .02em; }
.fin.documento .righe { margin: 0 -20px; border-top: 1px solid #e4e4e4; }
.fin.documento .righe-vuoto { padding: 18px 20px; }
.fin.documento .riga-doc {
  position: relative; display: grid; grid-template-columns: minmax(0, 1fr) 149px; grid-template-areas: "l1 tot" "l2 ." "desc .";
  gap: 10px 6px; align-items: start; padding: 20px 20px 20px; border-bottom: 1px solid #e4e4e4;
}
.fin.documento .riga-doc .cella { grid-area: auto; gap: 8px; }
.fin.documento .riga-doc .et { font: 300 13px/1.2 var(--font-titoli); min-height: 16px; }
.fin.documento .riga-doc .rd-sx { position: absolute; left: 3px; top: 44px; width: 16px; display: none; flex-direction: column; align-items: center; }
.fin.documento .riga-doc:hover .rd-sx, .fin.documento .riga-doc:focus-within .rd-sx { display: flex; }
.fin.documento .riga-doc .mani { grid-area: auto; align-self: auto; font-size: 18px; line-height: 20px; color: #6a737a; text-align: center; cursor: grab; }
.fin.documento .riga-doc .r-del { grid-area: auto; align-self: auto; width: 16px; height: 16px; min-width: 0; padding: 0; margin: 4px 0 0; font-size: 11px; }
.fin.documento .riga-doc .rd-l1 { grid-area: l1; display: grid; grid-template-columns: 143px 97px 101px 91px minmax(0, 1fr); gap: 6px; }
.fin.documento .riga-doc .rd-tot { grid-area: tot; }
.fin.documento .riga-doc .rd-l2 { grid-area: l2; display: grid; grid-template-columns: 203px 273px minmax(0, 1fr); gap: 4px; }
.fin.documento .riga-doc .rd-desc { grid-area: desc; }
.fin.documento .riga-doc textarea { min-height: 106px; padding: 6px 8px; font: 400 14px/1.35 var(--font); resize: vertical; }
.fin.documento .rd-agg { display: block; margin: 6px 0 0 auto; padding: 0; border: 0; background: none; cursor: pointer; color: #3a7bd5; font: 400 13px var(--font); text-decoration: underline; }
.fin.documento .riga-doc output { background: #f4f4f4; font-weight: 300; }
.fin.documento .riga-doc output.negativo, .fin.documento .riga-doc input.negativo { color: var(--rosso); }
.fin.documento .riga-doc input.negativo { background-color: #fdf1f0; }
.fin.documento .riga-doc output.negativo { background: #fbe9e8; }
.fin.documento .riga-doc.bloccata input.negativo { background-color: #fdf1f0; }
.fin.documento .riga-doc.bloccata .rd-sx { display: none !important; }
.in-suf { position: relative; display: block; min-width: 0; }
.in-suf > input { padding-right: 24px; }
.in-suf::after { content: attr(data-suf); position: absolute; right: 8px; top: 50%; transform: translateY(-50%); color: #464d52; font: 300 16px var(--font); pointer-events: none; }
.non-imp { display: flex; align-items: center; gap: 8px; margin: 8px 0 0 5px; font: 300 14px var(--font-titoli); color: var(--testo); }
.non-imp input { width: 15px; height: 15px; }
.fin.documento .r-centro { padding-right: 26px; }

/* ---------- Riepilogo conteggi ---------- */
.fin.documento .riepilogo { margin: 0 -20px; width: auto; }
.fin.documento .riepilogo h3 { margin: 0; padding: 30px 20px 12px; border: 0; border-bottom: 1px solid #e4e4e4; font: 400 26px/1.2 var(--font-titoli); }
.fin.documento .rt { width: 299px; margin: 0 20px 0 auto; padding: 18px 0 24px; }
.fin.documento .rt-gruppo { display: flex; flex-direction: column; gap: 9px; }
.fin.documento .rt-gruppo + .rt-gruppo { margin-top: 18px; padding-top: 18px; border-top: 1px solid #e4e4e4; }
.fin.documento .rt-riga { display: flex; align-items: center; justify-content: flex-end; gap: 8px; }
.fin.documento .rt-et { flex: 1; text-align: right; font: 300 16px var(--font-titoli); color: var(--testo); }
.fin.documento .rt-riga::after { content: '€'; flex: none; width: 14px; font: 300 14px var(--font); color: #464d52; }
.fin.documento .rt-val {
  flex: none; width: 150px; color: #222; height: 35px; padding: 0 8px; display: flex; align-items: center; justify-content: flex-end;
  background: #f5f5f5; border: .5px solid var(--bordo-campo); border-radius: 4px; font: 300 14px var(--font); font-variant-numeric: tabular-nums;
}
.fin.documento .rt-link { display: block; margin: 20px 0 0 auto; padding: 0; border: 0; background: none; cursor: pointer; color: #e8731a; font: 400 14px var(--font-titoli); text-decoration: underline; }
.fin.documento .rt .tab-iva { margin-top: 14px; }
.fin.documento .rt .nota { margin-top: 10px; text-align: right; }

/* ---------- piede: ingranaggio, Elimina, Esci, Azioni, Salva ---------- */
.fin.documento .fin-piede { background: #f8f8f8; padding: 12px 24px 12px 22px; gap: 8px; border-top: .5px solid #e4e4e4; box-shadow: 0 -2px 4px rgba(0, 0, 0, .04); flex-wrap: nowrap; }
.fin.documento .fin-piede .pul { min-width: 0; font-size: 14px; font-weight: 500; letter-spacing: .02em; }
.fin.documento .fin-piede .pul.ingranaggio { width: 36px; padding: 0; background: none; border: 0; color: #5e676c; }
.fin.documento .fin-piede .pul.ingranaggio:hover:not(:disabled) { color: var(--testo); background: rgba(0, 0, 0, .05); }
.fin.documento .fin-piede .pul.pericolo { padding: 0 10px; font-size: 12px; }
.fin.documento .fin-piede .pul.testo { padding: 0 8px; font-weight: 400; }
.fin.documento .fin-piede .pul.azioni { width: 100px; padding: 0; }
.fin.documento .fin-piede .pul.verde:not(.azioni) { min-width: 58px; padding: 0 8px; }

/* ---------- telefono: tutto in colonna, nessuno scorrimento laterale ---------- */
@media (max-width: 767px) {
  .fin.documento .fin-testa { padding: 10px 12px 0; }
  .fin.documento .fin-testa h2 { font-size: 22px; }
  .fin.documento .fin-schede { margin-left: -12px; margin-right: -12px; }
  .fin.documento .scheda-doc { padding: 0 12px; font-size: 13px; }
  .fin.documento .fin-corpo { padding: 14px 12px; }
  .fin.documento .dati-doc { grid-template-columns: minmax(0, 1fr); gap: 11px; }
  .fin.documento .col-sx .campo, .fin.documento .col-dx .campo, .fin.documento .dati-doc .causale .campo { grid-template-columns: minmax(0, 1fr); row-gap: 3px; }
  .fin.documento .col-sx .campo-aiuto { grid-column: 1; }
  .fin.documento .r-citta { grid-template-columns: 1fr 1fr 1fr; }
  .fin.documento .r-piva, .fin.documento .r-sdi { grid-template-columns: minmax(0, 1fr); }
  .fin.documento .causale-riga { flex-direction: column; align-items: stretch; }
  .pul-agg { width: 100%; }
  .fin.documento .beni-testa { flex-wrap: wrap; margin: 24px 0 10px; }
  .fin.documento .beni-testa h3 { flex: 0 0 100%; }
  .fin.documento .righe, .fin.documento .riepilogo { margin: 0 -12px; }
  .fin.documento .riga-doc, .fin.documento .riga-doc.bloccata {
    grid-template-columns: minmax(0, 1fr); grid-template-areas: "sx" "l1" "tot" "l2" "desc"; padding: 12px;
  }
  .fin.documento .riga-doc .rd-sx { flex-direction: row; justify-content: space-between; align-items: center; padding-top: 0; }
  .fin.documento .riga-doc .r-del { margin: 0; }
  .fin.documento .riga-doc .rd-l1 { grid-template-columns: 1fr 1fr; }
  .fin.documento .riga-doc .rd-l1 .c-iva { grid-column: 1 / -1; }
  .fin.documento .riga-doc .rd-l2 { grid-template-columns: minmax(0, 1fr); gap: 10px; }
  .fin.documento .riga-doc.bloccata .rd-sx { display: none !important; }
  .fin.documento .riepilogo h3 { padding: 22px 12px 10px; }
  .fin.documento .rt { width: auto; margin: 0 12px; }
  .fin.documento .fin-piede { padding: 8px 12px; gap: 6px; }
  .fin.documento .fin-piede .pul { flex: 1 1 auto; }
  .fin.documento .fin-piede .pul.ingranaggio { flex: none; }
  .fin.documento .fin-piede .pul.azioni { width: auto; }
}

/* le tendine delle righe riprendono la freccia (app.css la azzera con «background: #fff») */
.fin.documento .riga-doc select {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6'%3E%3Cpath d='M0 0h10L5 6z' fill='%23333'/%3E%3C/svg%3E");
  background-repeat: no-repeat; background-position: right 9px center;
}

/* ---------- acquisti: fattura arrivata da SDI (dati in sola lettura) ---------- */
.fin.documento .banner.sdi { background: #fff4e0; border-color: #f2c785; color: #8a5300; font-weight: 400; font-size: 13px; }
.fin.documento .fin-piede .abilita-importi { height: 30px; padding: 0 12px; font: 500 11px/1 var(--font); text-transform: uppercase; letter-spacing: .02em; }
.fin.documento .rt-riga.diverso .rt-et, .fin.documento .rt-riga.diverso .rt-val { color: #c62828; font-weight: 600; }
