/* Fix tema dark/light per i campi form "nudi" (senza .theme-form/.dark-form),
   non coperti dalle regole dark-only del template vendor. */
body.dark-only .page-wrapper .form-control,
body.dark-only .page-wrapper .form-select {
  background-color: var(--white);
  color: var(--body-font-color);
  border-color: var(--recent-border);
}
body.dark-only .page-wrapper .form-control::placeholder {
  color: var(--body-font-color);
  opacity: .5;
}
body.dark-only .page-wrapper .form-control:disabled,
body.dark-only .page-wrapper .form-control[readonly] {
  background-color: var(--light-bg);
  opacity: .7;
}
body.dark-only .page-wrapper .form-control:focus,
body.dark-only .page-wrapper .form-select:focus {
  background-color: var(--white);
  color: var(--body-font-color);
}
body.dark-only .page-wrapper .col-form-label,
body.dark-only .page-wrapper label {
  color: var(--body-font-color);
}

/* Leggibilita' menu laterale: testo piu' grande, piu' marcato e nero invece del grigio/viola chiaro di default. */
body:not(.dark-only) .sidebar-wrapper .sidebar-main .sidebar-links li a.sidebar-link span,
body:not(.dark-only) .sidebar-wrapper .sidebar-main .sidebar-links li .sidebar-submenu li a {
  color: #000 !important;
  font-weight: 600;
  font-size: 15px;
  letter-spacing: 0.3px;
}
body:not(.dark-only) .sidebar-wrapper .sidebar-main .sidebar-links li .sidebar-submenu li a.active {
  color: var(--theme-deafult) !important;
}

/* Leggibilita' nome/cognome socio nelle tabelle elenco (soci, docenti, personale, ecc.). */
#sociTable a.f-w-500 {
  color: #000 !important;
  font-weight: 700;
  font-size: 1rem;
}

/* Paginazione DataTables: i numeri di pagina sono attaccati l'uno all'altro (nessun css base
   di DataTables e' caricato, solo queste override di style.css), difficili da cliccare singolarmente. */
.dataTables_wrapper .dataTables_paginate {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 4px;
  border: none !important;
  padding: 4px 0 !important;
}
.dataTables_wrapper .dataTables_paginate .paginate_button,
.dataTables_wrapper .dataTables_paginate .ellipsis {
  display: inline-block;
  min-width: 34px;
  padding: 6px 10px !important;
  margin: 0 !important;
  text-align: center;
  border: 1px solid #e8e8e8 !important;
  border-radius: 4px;
  cursor: pointer;
}
.dataTables_wrapper .dataTables_paginate .ellipsis {
  border: none !important;
  cursor: default;
  padding: 6px 4px !important;
}
.dataTables_wrapper .dataTables_paginate .paginate_button.disabled {
  cursor: default;
  opacity: .5;
}
.dataTables_wrapper .dataTables_paginate .paginate_button.previous,
.dataTables_wrapper .dataTables_paginate .paginate_button.next,
.dataTables_wrapper .dataTables_paginate .paginate_button.first,
.dataTables_wrapper .dataTables_paginate .paginate_button.last {
  font-size: 16px;
  font-weight: 700;
  line-height: 1.4;
}

/* Intestazioni di sezione per raggruppare visivamente form lunghi (es. anagrafica socio). */
.form-section-title {
  font-size: 12px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: .05em;
  color: var(--theme-deafult);
  border-bottom: 1px solid var(--recent-border);
  padding-bottom: 10px;
  margin: 28px 0 16px;
}
.form-section-title:first-child {
  margin-top: 0;
}
