/*
 * SCT SolarSuite 2.4.1
 * Calibrazione millimetrica sul master 1241 × 1754 px.
 * Questo foglio prevale su portal.css e contract-map.css.
 */

.sct-contract-master {
  width: 210mm;
  height: 297mm;
  aspect-ratio: auto;
}

/* Tipografia uniforme: niente font microscopici. */
.sct-contract-master .sct-pdf-field {
  color: #0b3a63;
  font-family: Arial, Helvetica, sans-serif;
  font-size: 2.28mm;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0;
  text-transform: uppercase;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: clip;
}

.sct-contract-master .pdf-text-normal { font-size: 2.28mm; }
.sct-contract-master .pdf-text-medium { font-size: 2.12mm; }
.sct-contract-master .pdf-text-long   { font-size: 1.96mm; }
.sct-contract-master .pdf-text-xlong  { font-size: 1.82mm; }

/* Coordinate principali espresse in millimetri. */
.sct-contract-master .protocol {
  left: 171.4mm;
  top: 34.55mm;
  width: 29.8mm;
  font-size: 2.55mm;
  font-weight: 900;
  text-align: center;
}

.sct-contract-master .client-name {
  left: 54.2mm;
  top: 43.00mm;
  width: 145.0mm;
}

.sct-contract-master .billing-address {
  left: 46.0mm;
  top: 54.55mm;
  width: 154.0mm;
}

.sct-contract-master .postal-code {
  left: 17.3mm;
  top: 60.30mm;
  width: 17.0mm;
  text-align: center;
}

.sct-contract-master .city {
  left: 45.0mm;
  top: 60.30mm;
  width: 124.0mm;
}

.sct-contract-master .province {
  left: 183.0mm;
  top: 60.30mm;
  width: 17.0mm;
  text-align: center;
}

.sct-contract-master .installation-address {
  left: 62.7mm;
  top: 66.10mm;
  width: 137.0mm;
}

.sct-contract-master .phone {
  left: 20.0mm;
  top: 71.85mm;
  width: 78.0mm;
}

.sct-contract-master .email {
  left: 113.0mm;
  top: 71.85mm;
  width: 87.0mm;
}

.sct-contract-master .system-power {
  left: 40.5mm;
  top: 87.55mm;
  width: 20.0mm;
  text-align: center;
}

.sct-contract-master .module-count {
  left: 132.0mm;
  top: 87.55mm;
  width: 14.0mm;
  text-align: center;
}

.sct-contract-master .module-brand {
  left: 172.5mm;
  top: 92.45mm;
  width: 28.0mm;
  text-align: center;
}

.sct-contract-master .inverter-brand {
  left: 43.8mm;
  top: 101.65mm;
  width: 31.5mm;
  text-align: left;
}

.sct-contract-master .inverter-power {
  left: 173.2mm;
  top: 101.65mm;
  width: 18.0mm;
  text-align: center;
}

.sct-contract-master .storage-capacity {
  left: 98.0mm;
  top: 113.20mm;
  width: 21.0mm;
  text-align: center;
}

.sct-contract-master .storage-brand {
  left: 167.8mm;
  top: 113.20mm;
  width: 32.0mm;
  text-align: right;
}

.sct-contract-master .accessories-other {
  left: 166.0mm;
  top: 130.10mm;
  width: 34.0mm;
  text-align: right;
  font-size: 1.88mm;
}

.sct-contract-master .net-price {
  left: 52.2mm;
  top: 145.65mm;
  width: 22.5mm;
  text-align: right;
  font-size: 2.35mm;
}

.sct-contract-master .vat-price {
  left: 52.2mm;
  top: 153.25mm;
  width: 22.5mm;
  text-align: right;
  font-size: 2.35mm;
}

.sct-contract-master .total-price {
  left: 51.5mm;
  top: 160.70mm;
  width: 23.2mm;
  text-align: right;
  color: #166534;
  font-size: 2.70mm;
  font-weight: 900;
}

.sct-contract-master .deposit-percent,
.sct-contract-master .install-percent,
.sct-contract-master .ready-percent {
  left: 113.2mm;
  width: 8.0mm;
  text-align: center;
  font-size: 2.28mm;
}

.sct-contract-master .deposit-percent { top: 145.65mm; }
.sct-contract-master .ready-percent   { top: 153.25mm; }
.sct-contract-master .install-percent { top: 160.70mm; }

.sct-contract-master .deposit-amount,
.sct-contract-master .install-amount,
.sct-contract-master .ready-amount {
  left: 128.7mm;
  width: 14.6mm;
  text-align: right;
  font-size: 2.35mm;
}

.sct-contract-master .deposit-amount { top: 145.65mm; }
.sct-contract-master .ready-amount   { top: 153.25mm; }
.sct-contract-master .install-amount { top: 160.70mm; }

.sct-contract-master .financing-amount {
  left: 180.0mm;
  top: 151.1mm;
  width: 20.0mm;
  text-align: center;
}

.sct-contract-master .financing-months {
  left: 172.6mm;
  top: 157.35mm;
  width: 16.0mm;
  text-align: center;
}

.sct-contract-master .installation-date {
  left: 40.5mm;
  top: 177.65mm;
  width: 31.5mm;
  text-align: center;
}

.sct-contract-master .delivery-days {
  left: 38.8mm;
  top: 185.05mm;
  width: 12.0mm;
  text-align: center;
}

.sct-contract-master .signature-place {
  left: 31.5mm;
  top: 278.00mm;
  width: 29.0mm;
  text-align: center;
  font-size: 2.38mm;
}

.sct-contract-master .signature-date {
  left: 74.8mm;
  top: 278.00mm;
  width: 29.0mm;
  text-align: center;
  font-size: 2.38mm;
  font-weight: 800;
}

/* Codice fiscale: prime 16 caselle reali su una fila di 19. */
.sct-contract-master .sct-fiscal-code-boxes {
  display: none !important;
}

.sct-contract-master .sct-fiscal-code-cells {
  position: absolute;
  inset: 0;
  z-index: 4;
  pointer-events: none;
}

.sct-contract-master .sct-cf-char {
  position: absolute;
  top: 48.18mm;
  width: 4.05mm;
  height: 4.15mm;
  transform: translateX(-50%);
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0 0 .15mm;
  color: #0b3a63;
  font-family: Arial, Helvetica, sans-serif;
  font-size: 2.22mm;
  font-weight: 800;
  line-height: 1;
  text-align: center;
  text-transform: uppercase;
}

.sct-contract-master .sct-cf-char-1 { left: 46.366mm; }
.sct-contract-master .sct-cf-char-2 { left: 49.919mm; }
.sct-contract-master .sct-cf-char-3 { left: 53.473mm; }
.sct-contract-master .sct-cf-char-4 { left: 57.027mm; }
.sct-contract-master .sct-cf-char-5 { left: 60.580mm; }
.sct-contract-master .sct-cf-char-6 { left: 64.134mm; }
.sct-contract-master .sct-cf-char-7 { left: 67.687mm; }
.sct-contract-master .sct-cf-char-8 { left: 71.241mm; }
.sct-contract-master .sct-cf-char-9 { left: 74.795mm; }
.sct-contract-master .sct-cf-char-10 { left: 78.348mm; }
.sct-contract-master .sct-cf-char-11 { left: 81.902mm; }
.sct-contract-master .sct-cf-char-12 { left: 85.455mm; }
.sct-contract-master .sct-cf-char-13 { left: 89.009mm; }
.sct-contract-master .sct-cf-char-14 { left: 92.562mm; }
.sct-contract-master .sct-cf-char-15 { left: 96.116mm; }
.sct-contract-master .sct-cf-char-16 { left: 99.670mm; }

/* Check-box: coordinate indipendenti e simbolo centrato. */
.sct-contract-master .sct-pdf-check {
  width: 3.35mm;
  height: 3.35mm;
  transform: none;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0 0 .25mm;
  color: #0b3a63;
  font-family: Arial, Helvetica, sans-serif;
  font-size: 3.15mm;
  font-weight: 900;
  line-height: 1;
  overflow: visible;
}

.sct-contract-master .module-mono  { left: 36.3mm; top: 92.0mm; }
.sct-contract-master .module-poly  { left: 63.8mm; top: 92.0mm; }
.sct-contract-master .module-thin  { left: 89.2mm; top: 92.0mm; }
.sct-contract-master .module-other { left: 110.0mm; top: 92.0mm; }

.sct-contract-master .inverter-mono { left: 102.9mm; top: 101.2mm; }
.sct-contract-master .inverter-tri  { left: 123.8mm; top: 101.2mm; }

.sct-contract-master .storage-yes { left: 46.0mm; top: 112.8mm; }
.sct-contract-master .storage-no  { left: 59.1mm; top: 112.8mm; }

.sct-contract-master .roof-tiles   { left: 58.3mm; top: 123.9mm; }
.sct-contract-master .roof-sheet   { left: 77.2mm; top: 123.9mm; }
.sct-contract-master .roof-flat    { left: 99.3mm; top: 123.9mm; }
.sct-contract-master .roof-terrace { left: 122.5mm; top: 123.9mm; }
.sct-contract-master .roof-facade  { left: 143.9mm; top: 123.9mm; }
.sct-contract-master .roof-other   { left: 166.1mm; top: 123.9mm; }

.sct-contract-master .accessory-optimizers   { left: 39.1mm; top: 129.8mm; }
.sct-contract-master .accessory-wallbox-mono { left: 67.9mm; top: 129.8mm; }
.sct-contract-master .accessory-wallbox-tri  { left: 117.2mm; top: 129.8mm; }

.sct-contract-master .financing-yes { left: 178.0mm; top: 144.55mm; }
.sct-contract-master .financing-no  { left: 195.0mm; top: 144.55mm; }
.sct-contract-master .rate-standard { left: 166.8mm; top: 162.4mm; }
.sct-contract-master .rate-zero     { left: 190.0mm; top: 162.4mm; }

.sct-contract-master .service-design        { left: 77.7mm; top: 176.4mm; }
.sct-contract-master .service-gse           { left: 77.7mm; top: 180.7mm; }
.sct-contract-master .service-edistribution { left: 77.7mm; top: 185.0mm; }
.sct-contract-master .service-municipality  { left: 77.7mm; top: 189.3mm; }
.sct-contract-master .service-conformity    { left: 141.7mm; top: 176.4mm; }
.sct-contract-master .service-register-gse  { left: 141.7mm; top: 180.7mm; }
.sct-contract-master .service-testing       { left: 141.7mm; top: 185.0mm; }
.sct-contract-master .service-training      { left: 141.7mm; top: 189.3mm; }

/* Griglia tecnica ogni 5 mm, soltanto in anteprima amministratore. */
.sct-calibration-notice {
  max-width: 210mm;
  margin: 0 auto 10px;
  padding: 10px 14px;
  border: 1px solid #d4af37;
  border-radius: 8px;
  background: #fff8df;
  color: #6f5600;
  font-weight: 800;
}

.sct-contract-master.is-calibration-mode .sct-calibration-grid {
  position: absolute;
  inset: 0;
  z-index: 20;
  pointer-events: none;
  background-image:
    linear-gradient(to right, rgba(220,0,0,.18) 1px, transparent 1px),
    linear-gradient(to bottom, rgba(220,0,0,.18) 1px, transparent 1px),
    linear-gradient(to right, rgba(0,70,180,.28) 1px, transparent 1px),
    linear-gradient(to bottom, rgba(0,70,180,.28) 1px, transparent 1px);
  background-size:
    5mm 5mm,
    5mm 5mm,
    50mm 50mm,
    50mm 50mm;
}

.sct-contract-master.is-calibration-mode .sct-pdf-field,
.sct-contract-master.is-calibration-mode .sct-cf-char,
.sct-contract-master.is-calibration-mode .sct-pdf-check {
  outline: .25mm solid rgba(255,0,0,.55);
  background: rgba(255,255,0,.14);
}

.sct-calibration-axis {
  position: absolute;
  z-index: 21;
  color: #b00020;
  font-size: 2mm;
  font-weight: 900;
  pointer-events: none;
}

.sct-calibration-axis.axis-x {
  left: 2mm;
  top: 1mm;
}

.sct-calibration-axis.axis-y {
  left: 1mm;
  top: 4mm;
  line-height: 50mm;
}

@media print {
  .sct-calibration-notice,
  .sct-calibration-grid,
  .sct-calibration-axis {
    display: none !important;
  }

  .sct-contract-master .sct-pdf-field {
    color: #0b3a63 !important;
  }
}


/* SCT SolarSuite 2.4.2 — Rifinitura su stampa crt 4 */
.sct-contract-master .client-name { top: 43.35mm; }
.sct-contract-master .installation-address { top: 66.45mm; }

.sct-contract-master .system-power,
.sct-contract-master .module-count,
.sct-contract-master .inverter-power,
.sct-contract-master .storage-capacity {
  font-size: 2.35mm;
  font-weight: 800;
  line-height: 1;
}

.sct-contract-master .inverter-brand {
  left: 44.5mm;
  width: 31.0mm;
  font-size: 1.95mm;
}

.sct-contract-master .storage-brand {
  left: 166.0mm;
  width: 34.0mm;
  font-size: 1.95mm;
}

.sct-contract-master .accessories-other {
  left: 169.0mm;
  top: 130.25mm;
  width: 30.5mm;
  padding: 0;
  font-size: 1.82mm;
  font-weight: 700;
  text-align: right;
}

.sct-contract-master .net-price,
.sct-contract-master .deposit-percent,
.sct-contract-master .deposit-amount { top: 145.90mm; }

.sct-contract-master .vat-price,
.sct-contract-master .ready-percent,
.sct-contract-master .ready-amount { top: 153.50mm; }

.sct-contract-master .total-price,
.sct-contract-master .install-percent,
.sct-contract-master .install-amount { top: 160.95mm; }

.sct-contract-master .signature-date {
  left: 76.0mm;
  top: 278.25mm;
  width: 27.5mm;
}

.sct-contract-master .sct-cf-char {
  top: 48.05mm;
  font-size: 2.12mm;
}
