/* MOBILE SECTIONS V2 — dedicated smartphone layouts; dashboard intentionally untouched. */
@media (max-width: 820px) {
  #view-bookings,#view-calendar,#view-cleanings,#view-prices,#view-events,#view-guide,#view-settings,#view-users{min-width:0}

  /* Prenotazioni */
  #view-bookings>.toolbar{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;align-items:end}
  #view-bookings>.toolbar label{width:100%;min-width:0}
  #view-bookings>.toolbar label:nth-of-type(3){grid-column:1/-1}
  #view-bookings>.toolbar button{width:100%;min-height:38px}
  #view-bookings #newBooking{grid-column:1/-1}
  #bookingsBody tr{padding:10px 11px}
  #bookingsBody td:nth-child(1){padding-bottom:7px}
  #bookingsBody td:nth-child(1) strong{font-size:14px}
  #bookingsBody td:nth-child(6) strong{font-size:14px;color:var(--olive)}
  #bookingsBody td:nth-child(7){align-items:center}

  /* Pulizie */
  #view-cleanings>.toolbar{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;align-items:end}
  #view-cleanings>.toolbar label{width:100%;min-width:0}
  #view-cleanings>.toolbar button{width:100%;min-height:38px}
  #view-cleanings #newCleaning{grid-column:1/-1}

  /* Calendario */
  #view-calendar>.toolbar{display:grid;grid-template-columns:38px minmax(0,1fr) 38px auto;gap:6px;align-items:center}
  #view-calendar>.toolbar h2{margin:0;text-align:center;font-size:17px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  #view-calendar>.toolbar button{width:38px;height:36px;padding:0}
  #view-calendar #calendarToday{width:auto;padding:0 10px}
  #view-calendar .calendar-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:6px!important}
  #view-calendar .cal-day{min-height:102px!important;padding:7px!important;border-radius:10px!important}
  #view-calendar .cal-number{font-size:10px!important;margin-bottom:4px!important}
  #view-calendar .cal-rate strong,#view-calendar .cal-price-large{font-size:15px!important}
  #view-calendar .cal-rate span,#view-calendar .cal-price-note{font-size:7.5px!important;line-height:1.22!important}
  #view-calendar .cal-event,#view-calendar .cal-booking{font-size:7.5px!important;line-height:1.2!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  #view-calendar .cal-booking{padding:3px 4px!important}
  #view-calendar .calendar-legend{font-size:8px;gap:7px}

  /* Prezzi */
  #view-prices .controls-panel{padding:11px}
  #view-prices .controls-panel h2{font-size:17px;margin-bottom:8px}
  #view-prices .form-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin-top:0}
  #view-prices .form-row label{min-width:0;width:100%}
  #view-prices #generatePrices{grid-column:1/-1;width:100%;min-height:40px}
  #pricesBody td:nth-child(4){font-weight:800;color:var(--olive)}
  #pricesBody td:nth-child(7){font-size:10px;line-height:1.35}

  /* Eventi Milano */
  #view-events>.toolbar{display:grid;grid-template-columns:1fr 1fr;gap:7px}
  #view-events>.toolbar button{width:100%;min-height:40px}
  #view-events #eventConfig{grid-column:1/-1;font-size:10px;line-height:1.35}
  #eventsBody td:nth-child(2){font-weight:800}
  #eventsBody td:nth-child(5),#eventsBody td:nth-child(6){font-weight:700;color:var(--olive)}

  /* Guida ospiti */
  #view-guide>.toolbar{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:7px;align-items:end}
  #view-guide>.toolbar label{grid-column:1/-1;width:100%}
  #view-guide>.toolbar button{min-height:38px}
  #view-guide #saveGuide{min-width:150px}
  #view-guide .guide-editors{display:grid;grid-template-columns:1fr;gap:9px}
  #view-guide .guide-card{padding:10px;border-radius:12px}
  #view-guide .guide-card h3{font-size:16px;margin-bottom:8px}
  #view-guide .guide-card label{font-size:10px;margin-bottom:7px}
  #view-guide .guide-card input,#view-guide .guide-card select,#view-guide .guide-card textarea{font-size:13px;padding:8px 9px}
  #view-guide .guide-card textarea{min-height:72px}
  #view-guide img,#view-guide video{max-width:100%;height:auto}

  /* Impostazioni */
  #view-settings #settingsForm{display:grid;grid-template-columns:1fr;gap:8px;padding:10px}
  #view-settings #settingsForm>label{grid-column:auto!important;background:#faf9f6;border:1px solid var(--line);border-radius:10px;padding:8px;font-size:10px}
  #view-settings #settingsForm>label input,#view-settings #settingsForm>label select{margin-top:2px;background:#fff}
  #view-settings #integrationStatus{grid-column:auto!important;margin:2px 2px 0;font-size:10px;line-height:1.35}
  #view-settings .settings-actions{grid-column:auto!important;display:grid;grid-template-columns:1fr;gap:7px;position:sticky;bottom:0;background:rgba(244,241,234,.96);padding:9px 0 2px;z-index:4}
  #view-settings .settings-actions button{width:100%;min-height:42px}
  #view-settings #syncStatus{font-size:10px;text-align:center}

  /* Utenti */
  #view-users>.toolbar{display:grid;grid-template-columns:1fr}
  #view-users #newUser{width:100%;min-height:40px}
  #usersBody td:nth-child(1){font-weight:800}
  #usersBody td:nth-child(2){word-break:break-word}

  /* Section tables: slightly denser than the dashboard cards. */
  #view-bookings table tbody,#view-cleanings table tbody,#view-prices table tbody,#view-events table tbody,#view-users table tbody{gap:7px}
  #view-bookings table tbody tr,#view-cleanings table tbody tr,#view-prices table tbody tr,#view-events table tbody tr,#view-users table tbody tr{border-radius:11px;box-shadow:0 3px 12px rgba(28,39,31,.045)}
}

@media (max-width: 430px) {
  #view-bookings>.toolbar,#view-cleanings>.toolbar,#view-events>.toolbar{grid-template-columns:1fr 1fr}
  #view-calendar>.toolbar{grid-template-columns:34px minmax(0,1fr) 34px}
  #view-calendar #calendarToday{grid-column:1/-1;width:100%;height:34px}
  #view-calendar .calendar-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}
  #view-calendar .cal-day{min-height:96px!important;padding:6px!important}
  #view-calendar .cal-rate strong,#view-calendar .cal-price-large{font-size:14px!important}
  #view-prices .form-row{grid-template-columns:1fr 1fr}
  #view-guide>.toolbar{grid-template-columns:1fr 1fr}
  #view-guide #loadGuide,#view-guide #saveGuide{width:100%;min-width:0}
}
