/* Garanzia contratto: presentation only, 22/10/2026.
   No change to form fields, selected packages, calculations or actions. */
#garanzia { width:100%; min-width:0; max-width:100%; padding:22px 0 0; }
#garanzia.active { display:block !important; }
#garanzia #area-contenuto-principale,
#garanzia #tbgaranzia,
#garanzia #frmgaranzia_proprieta {
  display:block; width:100% !important; min-width:0; max-width:100%; margin:0;
}
#garanzia #frmgaranzia_proprieta > .container {
  width:100% !important; max-width:none; padding:0; margin:0;
}
#garanzia #frmgaranzia_proprieta > .container > .row {
  display:block; width:100%; margin:0 0 20px;
}
#garanzia #frmgaranzia_proprieta > .container > .row > div {
  width:100% !important; max-width:100%; margin:0 !important; min-width:0;
}
#garanzia .table-responsive { width:100%; max-width:100%; min-width:0; border:0; }
#garanzia table.table {
  width:100% !important; min-width:0 !important; max-width:100%; table-layout:fixed; margin:0;
  border:1px solid #dbe4ef; border-collapse:separate; border-spacing:0;
  border-radius:12px; overflow:hidden; background:#fff; color:#23364e;
}
#garanzia table.table td,
#garanzia table.table th {
  padding:10px 12px; border:0; border-bottom:1px solid #e1e8f1;
  vertical-align:middle; white-space:normal; overflow-wrap:anywhere;
}
#garanzia table.table tr:last-child td { border-bottom:0; }
#garanzia table.table tbody tr:nth-child(odd) td { background:#f6f8fc; }
#garanzia table.table tbody tr:nth-child(even) td { background:#fff; }
#garanzia table.table th {
  background:#285fb9; color:#fff; font-size:13px; font-weight:650;
  letter-spacing:.035em; text-transform:uppercase;
}
#garanzia #frmgaranzia_proprieta > .container > .row:first-child > div > .table-responsive td:first-child {
  width:48% !important;
}
#garanzia table.table td label { margin:0; font-size:13px !important; line-height:1.4; font-weight:600; }
#garanzia input:not([type=hidden]):not([type=checkbox]),
#garanzia select {
  width:100% !important; min-width:0 !important; max-width:100%; min-height:42px;
  padding:9px 11px; font-size:14px; line-height:1.4; border-radius:8px;
  border:1px solid #cad8e9; background:#fff; color:#20364f; box-sizing:border-box;
}
#garanzia input[readonly] { background:#eef3f9 !important; }
#garanzia input:focus,
#garanzia select:focus { outline:2px solid #719ee5; outline-offset:2px; }
#garanzia .tab_integrazioni th:nth-child(2),
#garanzia .tab_integrazioni td:nth-child(2) { width:100px; text-align:right; font-variant-numeric:tabular-nums; }
#garanzia .tab_integrazioni th:last-child,
#garanzia .tab_integrazioni td:last-child { width:56px; text-align:center; }
#garanzia .tab_integrazioni td { font-size:13px; line-height:1.45; }
#garanzia .tab_integrazioni input[type=checkbox] {
  width:21px !important; height:21px !important; min-width:21px; min-height:21px;
  margin:0; vertical-align:middle; accent-color:#285fb9;
}
#garanzia .form-group.mt10 { margin-top:0 !important; margin-bottom:0; min-width:0; }
#garanzia #totali { background:#eef3fa; }
#garanzia #totali tbody { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); }
#garanzia #totali tr { display:flex; flex-direction:column; min-width:0; padding:13px; }
#garanzia #totali td { display:block; width:100% !important; border:0; padding:3px 0 8px; background:transparent !important; }
#garanzia #totali input { font-size:21px !important; font-weight:650; font-variant-numeric:tabular-nums; }
#garanzia #totali tr:last-child { background:#e9f0fc; }
#garanzia #btnSalvaGaranzia,
#garanzia #btnAnnullaGaranzia { min-height:44px; border-radius:9px; padding:11px 20px; white-space:normal; }
@media (min-width:1200px) {
  #garanzia #frmgaranzia_proprieta > .container > .row:first-child > div {
    display:grid; grid-template-columns:minmax(250px,.8fr) minmax(340px,1.2fr);
    align-items:start; gap:22px;
  }
}
@media (max-width:767px) {
  #garanzia { padding-top:16px; }
  #garanzia #frmgaranzia_proprieta > .container > .row:first-child > div > .table-responsive { margin-bottom:16px; }
  #garanzia table.table td, #garanzia table.table th { padding:10px 8px; }
  #garanzia .tab_integrazioni th:nth-child(2), #garanzia .tab_integrazioni td:nth-child(2) { width:76px; }
  #garanzia .tab_integrazioni th:last-child, #garanzia .tab_integrazioni td:last-child { width:44px; }
  #garanzia #totali tbody { grid-template-columns:1fr; }
}
