/* Profili professionali dello staff e pagina della palestra, nel gestionale (viste/app/profilo.php,
   vetrina_impostazioni.php): sopra a app-base.css, con le variabili del tema. Prefisso pf-. */

.pf-griglia { display: grid; gap: 16px; grid-template-columns: repeat(auto-fit, minmax(min(320px, 100%), 1fr)); margin-bottom: 16px; max-width: 760px }
.pf-griglia .card { margin: 0 }
.pf-mostra p { margin: 0 0 12px; line-height: 1.5 }
.pf-foto-riga { display: flex; gap: 16px; align-items: flex-start; flex-wrap: wrap }
.pf-foto { flex: none; width: 96px; height: 96px; border-radius: 22px; object-fit: cover; background: var(--brand-soft) }
.pf-iniziali { display: grid; place-items: center; font-size: 30px; font-weight: 800; color: var(--brand-primary) }
.pf-foto-az { flex: 1 1 200px; min-width: 0; display: flex; flex-direction: column; gap: 8px }
.pf-carica { display: flex; flex-direction: column; gap: 6px }
.pf-carica input[type=file] { width: 100%; max-width: 100% }
.pf-foto-az .btn { align-self: flex-start; min-height: 44px }
.gx .btn.pf-togli { color: var(--ko) }
.pf-form { margin-bottom: 16px }
.pf-sugg { display: flex; flex-wrap: wrap; gap: 6px; margin: 8px 0 0 }
.pf-chip { min-height: 32px; padding: 0 12px; border-radius: 999px; border: 1px dashed var(--line); background: var(--surface); color: var(--ink-2);
  font: inherit; font-size: 13px; font-weight: 600; cursor: pointer; transition: border-color .15s, background .15s }
.pf-chip:hover { border-color: var(--brand-primary); color: var(--brand-primary) }
.pf-chip.usata { border-style: solid; border-color: var(--brand-primary); background: var(--brand-soft); color: var(--brand-primary) }
.pf-albo, .pf-formazione { margin-top: 18px }
.pf-righe { display: grid; gap: 10px }
.pf-riga { display: grid; grid-template-columns: 84px minmax(0, 1.6fr) minmax(0, 1fr); gap: 0 10px; padding: 8px 10px 10px; border-radius: 12px; background: var(--bg) }
.pf-riga label { font-size: 12.5px; margin-top: 0 }
.gx .pf-riga input { width: 100% }
@media (max-width: 640px) {
  .pf-riga { grid-template-columns: 84px minmax(0, 1fr) }
  .pf-riga > div:last-child { grid-column: 1 / -1 }
}
.pf-verifica { max-width: 760px }
.pf-verifica p { line-height: 1.5 }

/* the page of the gym (settings) */
.pf-indirizzo { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 12px; margin: 0 0 16px; padding: 12px 14px; border-radius: 12px; background: var(--brand-soft) }
.pf-indirizzo a { font-weight: 700; overflow-wrap: anywhere }

/* an activity's «Sulla pagina della palestra» (corsi_gruppo.php) */
.cg-foto { display: block; width: 120px; height: 120px; margin: 4px 0 8px; border-radius: 14px; object-fit: cover }
.cg-togli { margin-top: 10px }
/* the tick of the person's consent and of the gym's authorization (22/10/2026) */
.pf-consenso, .pf-autorizza { display: flex; flex-direction: column; gap: 10px; margin-bottom: 12px }
.pf-spunta { display: flex; gap: 10px; align-items: flex-start; font-size: 14px; line-height: 1.45; cursor: pointer }
.pf-spunta input { flex: none; width: 20px; height: 20px; margin: 1px 0 0; accent-color: var(--brand-primary) }
.pf-consenso .btn, .pf-autorizza .btn { align-self: flex-start; min-height: 44px }
.pf-consenso .lz-nota { margin: 0 }
