/* 
Theme Name: Trattoria Zappatori
Theme URI: https://github.com/elementor/hello-theme-child/
Description: Tema child per trattoria zappatori
Author: Digiko Team
Author URI: https://digiko.it/
Template: hello-elementor
Version: 2.0.0
Text Domain: trattoriazappatori-child
License: GNU General Public License v3 or later.
License URI: https://www.gnu.org/licenses/gpl-3.0.html
Tags: flexible-header, custom-colors, custom-menu, custom-logo, editor-style, featured-images, rtl-language-support, threaded-comments, translation-ready
*/

/* Add your custom styles here */

/* ===== Acceptance checkbox – Elementor Form (layout fix + stile) ===== */
.elementor-field-group.elementor-field-type-acceptance {
  /* Variabili modificabili */
  --cb-size: 16px;                 /* lato del quadrato */
  --cb-border: 1px;                /* spessore bordo */
  --gap: 8px;                      /* spazio tra box e testo */
  --color-text: #FFFFFFC7;         /* colore label */
  --color-unchecked: #69727d;    /* sfondo non selezionata */
  --color-checked: #333;        /* sfondo selezionata */
  --check-color: #333;        /* colore spunta */
  --label-fs: 12px;                /* font-size label */
  --label-lh: 1.45;                /* line-height label (modificabile) */
}

/* Contenitore input+label in riga */
.elementor-field-group.elementor-field-type-acceptance .elementor-field-option {
  display: flex;
  align-items: flex-start;    /* allinea la label in alto rispetto al box */
  column-gap: var(--gap);
  row-gap: 0;
  margin-bottom: 24px;
}

/* Checkbox (quadrata e custom) */
.elementor-field-group.elementor-field-type-acceptance
  .elementor-acceptance-field[type="checkbox"] {
  /* fallback per browser senza CSS vars */
  width: 16px; height: 16px; border: 2px solid #FFFFFFC7; background-color: #FFFFFFC7;
  width: var(--cb-size);
  height: var(--cb-size);
  border: var(--cb-border) solid var(--color-unchecked);
  background-color: var(--color-unchecked);


  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;

  border-radius: 2px;          /* sempre quadrato */
  margin: 0;                 /* togli i margini che mandano a capo */
  cursor: pointer;
  position: relative;
  flex: 0 0 var(--cb-size);  /* dimensione fissa in flex */
  outline: none;
}

/* Stato selezionato (nero pieno) */
.elementor-field-group.elementor-field-type-acceptance
  .elementor-acceptance-field[type="checkbox"]:checked {
  background-color: var(--color-checked);
  border-color: var(--color-checked);
}

/* Spunta */
.elementor-field-group.elementor-field-type-acceptance
  .elementor-acceptance-field[type="checkbox"]:checked::after {
  content: "✔";
  color: var(--check-color);
  font-size: calc(var(--cb-size) * 0.75);
  line-height: 1;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -55%);
  pointer-events: none;
}

/* Focus accessibile da tastiera */
.elementor-field-group.elementor-field-type-acceptance
  .elementor-acceptance-field[type="checkbox"]:focus-visible {
  outline: 2px dotted var(--color-text);
  outline-offset: 2px;
}

/* Label (font ereditato, controllo line-height) */
.elementor-field-group.elementor-field-type-acceptance
  .elementor-field-option label {
  font-family: inherit !important;                /* usa Area Normal */
  font-size: var(--label-fs) !important;
  line-height: var(--label-lh) !important;       /* ora modificabile */
  color: var(--color-text) !important;
  margin: 0;                                     
  padding: 0 !important;                          /* reset del vecchio indent */
  text-indent: 0 !important;                      /* reset del vecchio indent */
  flex: 1 1 auto;                                 /* occupa lo spazio restante */
  min-width: 0;                                   /* evita overflow */
  white-space: normal;                            /* assicura l’andata a capo */
}

/* ===== Mobile friendly ===== */
@media (max-width: 768px) {
  .elementor-field-group.elementor-field-type-acceptance {
    --cb-size: 18px;   /* più comoda al tocco */
    --label-lh: 1.5;   /* un filo più ariosa */
  }
}

/* ===== Fallback minimo per vecchi IE/Edge legacy ===== */
.elementor-field-group.elementor-field-type-acceptance
  .elementor-acceptance-field[type="checkbox"]::-ms-check {
  color: var(--check-color);
  background: var(--color-checked);
  border: none;
}

.elementor-message.elementor-message-success.elementor-message-svg {
    display: none;
}
