/* Gestionale sul telefono: la versione semplificata (body.mobile-simple), quella che si
   apre di default sotto gli 820px. Mostra meno cose, con gli stessi dati e le stesse
   operazioni; «Mostra tutte le funzioni» toglie la classe e torna la vista completa.
   Il resto del comportamento da telefono (barra in basso, una colonna, finestre a pagina
   intera, tabelle a schede, comandi da 44px) sta in styles.css, che vale per entrambe.
   Qui si usano solo le variabili di tokens.css, e niente scende sotto --fs-xs (13px). */
@media (max-width:820px) {
  .workspace,.view-host,.view,.panel { min-width:0; }
  /* niente doppio tocco per ingrandire su pulsanti e campi: il tocco arriva subito */
  button,input,select,textarea,a { touch-action:manipulation; }

  /* --- Home --- */
  .mobile-simple .page-heading>div>p:not(.eyebrow) { display:none; }
  .mobile-simple #dashboardView .heading-actions { display:none; }
  .mobile-simple .dashboard-capacity,.mobile-simple .dashboard-summary { display:none; }
  .mobile-simple .dashboard-main-grid { display:flex; flex-direction:column; gap:var(--s3); }
  .mobile-simple .dashboard-main-grid>.panel { height:auto; margin:0; }
  .mobile-simple .dashboard-quick { order:-1; }
  .mobile-simple .quick-grid { grid-template-columns:repeat(2,minmax(0,1fr)); padding:var(--s3); gap:var(--s3); }
  .mobile-simple .quick-grid button { min-height:56px; font-size:var(--fs); }
  .mobile-simple [data-quick="deadline"],.mobile-simple [data-quick="movement"] { display:none; }
  .mobile-simple.mobile-instructor [data-quick="payment"],.mobile-simple.mobile-instructor [data-quick="client"] { display:none; }
  .mobile-simple .kpi-row { grid-template-columns:repeat(3,minmax(0,1fr)); gap:var(--s2); }
  .mobile-simple .kpi { height:auto; min-height:80px; padding:var(--s3) var(--s2); }
  .mobile-simple .kpi>i,.mobile-simple .kpi>small,.mobile-simple .kpi:nth-child(2),.mobile-simple .kpi:nth-child(4) { display:none; }
  .mobile-simple .kpi:nth-child(5) { grid-column:auto; }
  .mobile-simple .kpi span { font-size:var(--fs-xs); line-height:1.3; }
  .mobile-simple .dense-list { height:auto; max-height:none; overflow:visible; padding:var(--s1) var(--s3); }

  /* --- Agenda: un giorno alla volta, scelto dalla striscia in alto --- */
  .mobile-simple #agendaView .page-heading h1 { font-size:var(--fs-l); }
  .mobile-simple #editDayButton,.mobile-simple #exportDayButton,.mobile-simple #agendaNewBooking,.mobile-simple #agendaLegend { display:none; }
  .mobile-simple #agendaView .heading-actions { display:grid; grid-template-columns:var(--h-tocco) 1fr var(--h-tocco) 1.4fr; gap:var(--s2); }
  .mobile-simple .agenda-filter-row { flex-direction:column; align-items:stretch; }
  .mobile-simple .week-label { font-size:var(--fs-s); }
  .mobile-simple .day-strip { position:static; margin-top:var(--s3); gap:var(--s2); }
  .mobile-simple .day-chip { min-width:68px; padding:var(--s2) var(--s1); min-height:68px; }
  .mobile-simple .day-chip b { font-size:var(--fs); }
  .mobile-simple .day-chip span { font-size:var(--fs-xs); }
  .mobile-simple .day-chip em { display:none; }
  .mobile-simple .day-chip.sel { background:var(--sand); color:var(--su-sabbia); border-color:var(--sand); }
  .mobile-simple .day-chip.sel span { color:var(--su-sabbia); }
  .mobile-simple .calendar-grid { display:block; height:auto; overflow:visible; }
  .mobile-simple .day-column { min-width:0; width:100%; max-height:none; }
  .mobile-simple .day-column:not(.selected-day) { display:none; }
  .mobile-simple .day-head { position:static; height:auto; padding:var(--s3); }
  .mobile-simple .day-head strong { font-size:var(--fs-m); }
  .mobile-simple .day-head span { font-size:var(--fs-s); }
  .mobile-simple .day-head [data-edit-day],.mobile-simple .edit-day-link { display:none; }
  .mobile-simple .day-slots { overflow:visible; padding:var(--s3); }
  .mobile-simple .calendar-slot { padding:var(--s4) var(--s4) var(--s4) var(--s5); margin-bottom:var(--s3); }
  .mobile-simple .calendar-slot time { font-size:var(--fs); }
  .mobile-simple .calendar-slot h3 { font-size:var(--fs-m); }
  .mobile-simple .calendar-slot p { font-size:var(--fs-s); }
  .mobile-simple .calendar-slot-footer { margin-top:var(--s3); }
  .mobile-simple #slotDialogEditDay,.mobile-simple #slotDialogExport { display:none; }

  /* --- Clienti: schede a due colonne con le sole informazioni del banco --- */
  .mobile-simple #clientsView .table-card { border:0; background:transparent; overflow:visible; }
  .mobile-simple #clientsView table,.mobile-simple #clientsTable { display:block; width:100%; }
  .mobile-simple #clientsView thead { display:none; }
  .mobile-simple #clientsTable tr { display:grid; grid-template-columns:1fr 1fr; gap:var(--s2); margin-bottom:var(--s3);
    border:1px solid var(--line); border-radius:var(--r); background:var(--panel); padding:var(--s4); }
  .mobile-simple #clientsTable td { display:block; border:0; padding:0; white-space:normal; font-size:var(--fs-s); overflow-wrap:anywhere; text-align:left; }
  .mobile-simple #clientsTable td:first-child { grid-column:1/-1; font-size:var(--fs-m); padding-bottom:var(--s2); margin:0; }
  .mobile-simple #clientsTable td:nth-child(2),.mobile-simple #clientsTable td:nth-child(5),.mobile-simple #clientsTable td:nth-child(6),.mobile-simple #clientsTable td.vai { display:none; }
  .mobile-simple #clientsTable td:nth-child(3)::before { content:"Certificato"; display:block; max-width:none; color:var(--muted); font-size:var(--fs-xs); margin-bottom:var(--s1); }
  .mobile-simple #clientsTable td:nth-child(4)::before { content:"Pacchetto"; display:block; max-width:none; color:var(--muted); font-size:var(--fs-xs); margin-bottom:var(--s1); }
  .mobile-simple.mobile-instructor #newClientButton { display:none; }
}
@media (max-width:360px) {
  .mobile-simple #agendaView .heading-actions { grid-template-columns:var(--h-tocco) 1fr var(--h-tocco); }
  .mobile-simple #requestsButton { grid-column:1/-1; }
}
