.elementor-42 .elementor-element.elementor-element-151ce30{--display:flex;}body.elementor-page-42{margin:0px 0px 0px 0px;}/* Start custom CSS for shortcode, class: .elementor-element-57d40b9 *//* ————————————————————————————
   AREA GUIDA — stile coerente con Elementor
   Colori principali:
   Rosso #D72222 | Verde hover #008C45 | Grigio testo #7A7A7A
   Font: Montserrat 400–600
———————————————————————————— */

.assoguide-dashboard {
  font-family: 'Montserrat', sans-serif;
  color: #7A7A7A;
  line-height: 1.5;
}

/* Titoli e separatori */
.assoguide-dashboard h3 {
  color: #D72222;
  font-weight: 600;
  margin-top: 1.5em;
  margin-bottom: 0.6em;
  border-left: 4px solid #D72222;
  padding-left: 10px;
}
.assoguide-dashboard hr {
  border: none;
  border-top: 1px solid #e2e2e2;
  margin: 30px 0;
}

/* Messaggi di stato */
.assoguide-dashboard .notice {
  border-radius: 6px;
  margin-bottom: 1em;
  padding: 10px 14px;
  font-weight: 500;
}
.notice-success { background: #e7f7ec; border-left: 4px solid #008C45; color: #008C45; }
.notice-warning { background: #fff5e6; border-left: 4px solid #ff9900; color: #b35b00; }
.notice-error   { background: #ffeaea; border-left: 4px solid #D72222; color: #b31919; }

/* Link di logout e tabs principali */
.assoguide-tabs {
  font-weight: 500;
  color: #54595F;
}
.assoguide-tabs a {
  color: #D72222;
  text-decoration: none;
}
.assoguide-tabs a:hover {
  color: #008C45;
}

/* Tabelle (richieste, disponibilità, ecc.) */
.assoguide-dashboard table {
  border-collapse: collapse;
  width: 100%;
  margin-top: 10px;
  font-size: 15px;
}
.assoguide-dashboard table th {
  background: #f5f5f5;
  color: #54595F;
  font-weight: 600;
  padding: 10px;
  border-bottom: 2px solid #e2e2e2;
}
.assoguide-dashboard table td {
  padding: 10px;
  border-bottom: 1px solid #eee;
}
.assoguide-dashboard table tr:nth-child(even) {
  background-color: #fafafa;
}
.assoguide-dashboard .req-actions-row td {
  background: #fdfdfd;
}

/* Pulsanti generici */
.assoguide-dashboard .button,
.assoguide-dashboard button,
.acf-button.button-primary {
  background-color: #D72222 !important;
  border: none !important;
  color: #fff !important;
  font-family: 'Montserrat', sans-serif;
  font-weight: 600;
  border-radius: 6px;
  padding: 8px 18px;
  cursor: pointer;
  transition: all 0.2s ease;
  text-decoration: none;
  display: inline-block;
}
.assoguide-dashboard .button:hover,
.assoguide-dashboard button:hover,
.acf-button.button-primary:hover {
  background-color: #008C45 !important;
  transform: translateY(-1px);
}
.assoguide-dashboard .button.button-small {
  font-size: 13px;
  padding: 6px 12px;
}

/* Tabs interni: Calendario / Elenco / Operazioni massive */
.assoguide-disp-tabs {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-bottom: 16px;
}
.assoguide-disp-tabs .button {
  background: #f2f2f2;
  color: #54595F;
  border: 1px solid #ddd !important;
}
.assoguide-disp-tabs .button.is-active {
  background: #D72222 !important;
  color: #fff !important;
  border-color: #D72222 !important;
}

/* Toolbar “Fascia attiva” */
.assoguide-toolbar {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  align-items: center;
  margin-bottom: 12px;
}
.assoguide-toolbar-title {
  font-weight: 600;
  color: #54595F;
}
.assoguide-fasce {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}
.assoguide-fasce .fascia-label {
  display: flex;
  align-items: center;
  gap: 6px;
  padding: 5px 10px;
  border: 1px solid #ddd;
  border-radius: 6px;
  cursor: pointer;
}
.assoguide-fasce input[type="radio"] { accent-color: #D72222; }
.chip {
  display: inline-block;
  width: 14px;
  height: 14px;
  border-radius: 3px;
}
.chip-mattina { background: #ffff66; }
.chip-pomeriggio { background: #ff9933; }
.chip-intera { background: #ff3333; }

/* Form operazioni massive */
[data-assoguide-bulk] label {
  color: #54595F;
  font-weight: 500;
}
[data-assoguide-bulk] input[type="text"] {
  width: 100%;
  max-width: 380px;
  padding: 8px 10px;
  border: 1px solid #ddd;
  border-radius: 4px;
}
[data-assoguide-bulk] button {
  margin-top: 8px;
}

/* Spinner del form ACF */
.acf-form-submit .acf-spinner {
  margin-left: 10px;
  vertical-align: middle;
}

/* Mobile ottimizzazione */
@media (max-width: 768px) {
  .assoguide-dashboard table th, .assoguide-dashboard table td {
    padding: 8px 6px;
    font-size: 14px;
  }
  .assoguide-fasce {
    flex-direction: column;
  }
  .assoguide-toolbar {
    flex-direction: column;
    align-items: flex-start;
  }
}/* End custom CSS */