/* =========================================================
   FORM COMPACT - pages.php
   ========================================================= */
.form-compact .divider.taller { margin: 10px 0 !important; }
.form-compact .divider.taller i { font-size: 14px !important; }

.form-compact h2.text-4-5 {
  font-size: 1.15rem !important;
  margin-top: 12px !important;
  margin-bottom: 10px !important;
  line-height: 1.2 !important;
}

/* riduce gli spazi bootstrap più “pesanti” */
.form-compact .mt-5 { margin-top: 18px !important; }
.form-compact .mt-3 { margin-top: 10px !important; }
.form-compact .mb-4 { margin-bottom: 12px !important; }
.form-compact .mb-3 { margin-bottom: 10px !important; }
.form-compact .pb-2 { padding-bottom: 6px !important; }

/* ---------- CHECKUP CARDS ---------- */
.form-compact .card-body.p-5 { padding: 14px 18px !important; }
.form-compact .card h4.text-5,
.form-compact .card h4.text-5.line-height-3 {
  font-size: 1.05rem !important;
  margin-bottom: 8px !important;
  line-height: 1.2 !important;
}

.form-compact .badge { padding: 4px 8px !important; font-size: 0.8rem !important; }

/* lista con icone più “stretta” */
.form-compact .list { margin-bottom: 6px !important; }
.form-compact .list li { margin-bottom: 4px !important; line-height: 1.2 !important; }
.form-compact .list li i { margin-top: 2px !important; }

/* i tuoi h2 dentro li aumentano molto l’altezza: comprimiamo */
.form-compact .card ul li h2 {
  font-size: 1rem !important;
  margin: 0 !important;
  line-height: 1.2 !important;
}

/* blocco radio sotto le card */
.form-compact .d-flex.align-items-center.mb-4.ms-5 {
  margin-bottom: 10px !important;
  margin-left: 14px !important;
}
.form-compact .form-check-label span.text-4 {
  font-size: 0.95rem !important;
}

/* ---------- INPUT / SELECT ---------- */
.form-compact .form-group { margin-bottom: 10px !important; }
.form-compact .form-control,
.form-compact .form-select {
  padding-top: 9px !important;
  padding-bottom: 9px !important;
  min-height: 40px !important;
  font-size: 0.95rem !important;
}

/* riduci spazio tra righe “dati utente” */
.form-compact .row.mb-3 { margin-bottom: 10px !important; }

/* ---------- BLOCCO FATTURA ---------- */
.form-compact #invoiceRequest .row { margin-top: 6px !important; }
.form-compact #invoiceRequest .mb-3 { margin-bottom: 10px !important; }
.form-compact #invoiceRequest small.form-text { font-size: 0.78rem !important; }

/* ---------- PAGAMENTO ---------- */
.form-compact img[alt="STRIPE"] { height: 36px !important; }
.form-compact .form-check-input.mt-3 { margin-top: 0 !important; }

/* ---------- BOTTONE ---------- */
.form-compact .btn.py-3 { padding-top: 10px !important; padding-bottom: 10px !important; }
.form-compact .btn.px-5 { padding-left: 22px !important; padding-right: 22px !important; }
.form-compact .btn.text-3 { font-size: 1rem !important; }

/* ---------- PARAGRAFO CONTATTI OFFICINA ---------- */
.form-compact p.text-3-5 {
  margin-top: 8px !important;
  margin-bottom: 0 !important;
  font-size: 0.95rem !important;
  line-height: 1.25 !important;
}
/* ====== FORM COMPATTO (Carsheriff) ====== */
.form-compact {
  --cs-gap-y: 10px;
}

/* riduce lo “spazio verticale” tra righe */
.form-compact .row {
  margin-top: 0 !important;
}

/* riduci margini grandi usati nelle intestazioni/sezioni */
.form-compact h2.mb-3 { margin-bottom: 10px !important; }
.form-compact h2.mt-3 { margin-top: 10px !important; }
.form-compact h2.mt-5 { margin-top: 18px !important; }

/* riduci i padding esagerati delle card (p-5) SOLO dentro il form */
.form-compact .card-body.p-5 {
  padding: 16px 18px !important;
}

/* riduci margini “grossi” di bootstrap dentro il form */
.form-compact .mb-4 { margin-bottom: 10px !important; }
.form-compact .mb-3 { margin-bottom: 10px !important; }
.form-compact .pb-2 { padding-bottom: 6px !important; }

/* riduci spaziature interne dei form-group */
.form-compact .form-group {
  margin-bottom: var(--cs-gap-y) !important;
}

/* input/select un po’ più bassi */
.form-compact .form-control,
.form-compact .form-select {
  padding-top: 10px !important;
  padding-bottom: 10px !important;
}

/* Checkup: lista più compatta */
.form-compact .list.list-icons li {
  margin-bottom: 6px !important;
}
.form-compact .list.list-icons h2 {
  margin: 0 !important;
  line-height: 1.2 !important;
}

/* radio area sotto le card: meno aria */
.form-compact .d-flex.align-items-center.mb-4 {
  margin-bottom: 10px !important;
}
.form-compact .ms-5 { margin-left: 12px !important; }

/* divider più piccolo */
.form-compact .divider.taller {
  margin: 12px 0 !important;
}
/* ===== CHECKUP: rendi le card davvero compatte ===== */
.form-compact .tabs-border-color.card{
  height: auto !important;        /* uccide height:100% inline? NO -> vedi punto 3 */
  min-height: 0 !important;
}

.form-compact .tabs-border-color.card .card-body{
  padding: 14px 16px !important;
}

.form-compact .tabs-border-color.card .card-body h4{
  margin-bottom: 8px !important;
}

.form-compact .tabs-border-color.card .list{
  margin-bottom: 8px !important;
}

.form-compact .tabs-border-color.card .list li{
  margin-bottom: 6px !important;
}

/* riduci spazi “sotto” dove sta la radio */
.form-compact .tabs-border-color.card > .d-flex{
  margin: 0 !important;
  padding: 0 16px 14px 16px !important;
}

/* testo radio più piccolo e più vicino */
.form-compact .tabs-border-color.card .form-check-label span{
  font-size: 0.95rem !important;
  margin-left: 8px !important;
}
.form-compact .checkup-card .text-3-4{
  font-size: 1rem !important;
  line-height: 1.2 !important;
}
.form-compact h2.text-4-5.mt-5{
  margin-top: 12px !important;
}
.form-compact .row.pb-2.mb-3{
  margin-bottom: 6px !important;
  padding-bottom: 0 !important;
}
/* --- FIX divider che si sovrappone ai bottoni sopra --- */
.form-compact .divider.divider-style-3.taller{
  margin-top: 26px !important;   /* sposta in basso */
  margin-bottom: 14px !important;
  position: relative;
  z-index: 1;                   /* non sopra ai bottoni */
  clear: both;
}

/* se il tema dà z-index strambi ai bottoni sopra */
.form-compact .btn,
.form-compact button{
  position: relative;
  z-index: 2;
}
/* --- CHECKUP: colonne stretch e card stessa altezza --- */
.form-compact .checkup-row > [class*="col-"]{
  display: flex;               /* la colonna diventa flex-container */
}

.form-compact .checkup-row article.card{
  flex: 1;                     /* la card riempie tutta l’altezza disponibile */
  display: flex;
  flex-direction: column;      /* body sopra, radio sotto */
}

/* body prende lo spazio, radio resta in basso */
.form-compact .checkup-row .card-body{
  flex: 1;
}

/* footer/radio compattato e “ancorato” in fondo */
.form-compact .checkup-row .d-flex.align-items-center{
  margin-top: auto;            /* spinge in basso */
  margin-bottom: 10px !important;
  padding: 0 18px 12px 18px;   /* coerente col padding della card */
}
.form-compact .card-body.p-5{ padding: 12px 16px !important; }
.form-compact .badge{ padding: 3px 7px !important; font-size: .78rem !important; }
.form-compact .card ul li{ margin-bottom: 2px !important; }
#startForm{
    height: 80px;
}
/* ===== CHECKUP: centra icona + testo ===== */

.form-compact .checkup-row .list{
  padding-left: 0 !important;
}

.form-compact .checkup-row .list li{
  display: flex !important;
  align-items: center;
  justify-content: start;     /* CENTRA ORIZZONTALMENTE */
  gap: 10px;
  text-align: center;
  margin-bottom: 6px !important;
}

.form-compact .checkup-row .list li i{
  position: static !important; /* rimuove posizionamento tema */
  margin: 0 !important;
  font-size: 14px;
}

.form-compact .checkup-line{
  display: inline-block;
  font-size: 0.98rem;
  font-weight: 600;
}

/* ---------- MOBILE: non schiacciare troppo ---------- */
@media (max-width: 768px) {
  .form-compact h2.text-4-5 { font-size: 1.1rem !important; }
  .form-compact .card-body.p-5 { padding: 14px !important; }
}
@media (min-width: 992px){
  .form-compact .tipologia-inline{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:16px;
  }
  .form-compact .tipologia-inline .mb-3{ margin-bottom: 0 !important; }
}
