/* FARMO Organizer V12.2
   Fix navigazione popup + Assistenze coerenti con le altre viste app. */

/* La vista Assistenze ha gia il titolo nell'header della pagina: niente doppio header interno. */
body.fo-app-mode #ticketsPopupPage .fo-assistance-duplicate-title{
  display:none!important;
}
body.fo-app-mode #ticketsPopupPage .fo-assistance-list-page{
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  overflow:visible!important;
}
body.fo-app-mode #ticketsPopupPage .fo-assistance-header-actions{
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  gap:8px!important;
  min-width:0!important;
}
body.fo-app-mode #ticketsPopupPage #openTicketPageBtnPopup{
  min-height:40px!important;
  margin:0!important;
  border:1px solid #061b49!important;
  border-radius:10px!important;
  background:#fff!important;
  color:#061b49!important;
  box-shadow:none!important;
  font-weight:900!important;
}
body.fo-app-mode #ticketsPopupPage .filters{
  margin:0 0 14px!important;
  padding:12px!important;
  border:1px solid #dbe3ee!important;
  border-radius:13px!important;
  background:#fff!important;
  box-shadow:0 4px 14px rgba(6,27,73,.04)!important;
}
body.fo-app-mode #ticketsPopupPage .ticket-section:first-child .ticket-group-title{
  margin-top:0!important;
}
body.fo-app-mode #ticketsPopupPage .ticket-group-title{
  margin:14px 0 9px!important;
}

@media(max-width:820px){
  /* Importante: ticketsPopupPage e' una pagina dell'app, non una modal full-screen legacy. */
  body.fo-app-mode #ticketsPopupPage.fo-app-view{
    position:static!important;
    inset:auto!important;
    z-index:auto!important;
    width:100%!important;
    height:auto!important;
    min-height:0!important;
    max-height:none!important;
    padding:0!important;
    overflow:visible!important;
    background:transparent!important;
  }
  body.fo-app-mode #ticketsPopupPage.fo-app-view>.modal-popup-style,
  body.fo-app-mode #ticketsPopupPage.fo-app-view>.fo-view-panel{
    position:static!important;
    inset:auto!important;
    width:100%!important;
    min-width:0!important;
    max-width:none!important;
    height:auto!important;
    min-height:0!important;
    max-height:none!important;
    margin:0!important;
    padding:0!important;
    overflow:visible!important;
    border:0!important;
    border-radius:0!important;
    background:transparent!important;
    box-shadow:none!important;
  }
  body.fo-app-mode #ticketsPopupPage.fo-app-view .popup-modal-body{
    width:100%!important;
    max-width:none!important;
    height:auto!important;
    min-height:0!important;
    max-height:none!important;
    padding:0!important;
    overflow:visible!important;
    background:transparent!important;
  }

  /* Header uguale alle altre pagine: titolo + azioni, con Indietro sempre disponibile. */
  body.fo-app-mode #ticketsPopupPage .popup-modal-header{
    flex-wrap:nowrap!important;
    align-items:center!important;
    gap:8px!important;
  }
  body.fo-app-mode #ticketsPopupPage .popup-modal-title{
    flex:1 1 auto!important;
    min-width:0!important;
    font-size:20px!important;
  }
  body.fo-app-mode #ticketsPopupPage .fo-assistance-header-actions{
    flex:0 0 auto!important;
    gap:6px!important;
  }
  body.fo-app-mode #ticketsPopupPage .fo-back-btn{
    display:inline-flex!important;
    flex:0 0 auto!important;
  }
  body.fo-app-mode #ticketsPopupPage #openTicketPageBtnPopup{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    gap:5px!important;
    min-height:38px!important;
    padding:0 10px!important;
    font-size:12px!important;
    white-space:nowrap!important;
  }

  body.fo-app-mode #ticketsPopupPage .filters{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:9px!important;
    margin:0 0 12px!important;
    padding:10px!important;
    border-radius:12px!important;
  }
  body.fo-app-mode #ticketsPopupPage .filters input,
  body.fo-app-mode #ticketsPopupPage .filters select{
    width:100%!important;
    min-height:46px!important;
    font-size:16px!important;
  }

  /* Gruppi Assistenze come sezioni dell'app. */
  body.fo-app-mode #ticketsPopupPage .ticket-section{
    width:100%!important;
    margin:0 0 12px!important;
    padding:0!important;
    border:0!important;
    background:transparent!important;
  }
  body.fo-app-mode #ticketsPopupPage .ticket-group-title{
    min-height:50px!important;
    margin:10px 0 8px!important;
    padding:10px 12px!important;
    gap:8px!important;
    border:1px solid #dbe3ee!important;
    border-radius:12px!important;
    background:#f7f9fc!important;
    color:#061b49!important;
    font-size:15px!important;
    box-shadow:none!important;
  }
  body.fo-app-mode #ticketsPopupPage .ticket-group-icon{
    width:24px!important;
    height:24px!important;
  }
  body.fo-app-mode #ticketsPopupPage .ticket-group-count{
    padding:4px 9px!important;
    font-size:11px!important;
  }
  body.fo-app-mode #ticketsPopupPage .ticket-section-body{
    width:100%!important;
    max-width:100%!important;
    padding:0!important;
    overflow:visible!important;
  }

  /* Ogni assistenza diventa una card, come Task/Utenti/Clienti. */
  body.fo-app-mode #ticketsPopupPage .main-tickets-table,
  body.fo-app-mode #ticketsPopupPage .main-tickets-unified-table,
  body.fo-app-mode #ticketsPopupPage .main-ticket-inner-table,
  body.fo-app-mode #ticketsPopupPage .main-ticket-unified-row,
  body.fo-app-mode #ticketsPopupPage .main-ticket-unified-cell{
    display:block!important;
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    overflow:visible!important;
  }
  body.fo-app-mode #ticketsPopupPage .main-tickets-header-row{
    display:none!important;
  }
  body.fo-app-mode #ticketsPopupPage .main-ticket-unified-row{
    margin:0 0 10px!important;
    padding:0!important;
    border:0!important;
    background:transparent!important;
  }
  body.fo-app-mode #ticketsPopupPage .main-ticket-unified-box{
    width:100%!important;
    max-width:100%!important;
    margin:0!important;
    padding:0!important;
    overflow:hidden!important;
    border:1px solid #dbe3ee!important;
    border-radius:14px!important;
    background:#fff!important;
    box-shadow:0 4px 14px rgba(6,27,73,.05)!important;
  }
  body.fo-app-mode #ticketsPopupPage .ticket-creator-band-detail-style{
    margin:0!important;
    padding:7px 11px!important;
    min-height:32px!important;
    border-radius:0!important;
    background:#f4f7fb!important;
    color:#64748b!important;
    border-bottom:1px solid #e8edf4!important;
    gap:6px!important;
  }
  body.fo-app-mode #ticketsPopupPage .ticket-creator-band-detail-style span,
  body.fo-app-mode #ticketsPopupPage .ticket-creator-band-detail-style strong{
    color:#64748b!important;
    font-size:10px!important;
  }
  body.fo-app-mode #ticketsPopupPage .ticket-creator-date{
    margin-left:auto!important;
  }
  body.fo-app-mode #ticketsPopupPage .main-ticket-inner-table,
  body.fo-app-mode #ticketsPopupPage .main-ticket-inner-table .main-ticket-row{
    display:block!important;
    width:100%!important;
    min-width:0!important;
  }
  body.fo-app-mode #ticketsPopupPage .main-ticket-cell{
    position:static!important;
    left:auto!important;
    z-index:auto!important;
    display:grid!important;
    grid-template-columns:minmax(92px,32%) minmax(0,1fr)!important;
    gap:10px!important;
    align-items:start!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    min-height:0!important;
    padding:10px 12px!important;
    border:0!important;
    border-right:0!important;
    border-bottom:1px solid #edf1f6!important;
    background:#fff!important;
    box-shadow:none!important;
    text-align:left!important;
    overflow:visible!important;
  }
  body.fo-app-mode #ticketsPopupPage .main-ticket-cell::before{
    content:attr(data-label)!important;
    display:block!important;
    margin:0!important;
    color:#64748b!important;
    font-size:10px!important;
    line-height:1.3!important;
    font-weight:950!important;
    text-transform:uppercase!important;
    letter-spacing:.04em!important;
  }
  body.fo-app-mode #ticketsPopupPage .main-ticket-cell.ticket-client-sticky{
    position:static!important;
    display:block!important;
    padding:12px!important;
    background:#061b49!important;
    color:#fff!important;
    box-shadow:none!important;
  }
  body.fo-app-mode #ticketsPopupPage .main-ticket-cell.ticket-client-sticky::before{
    display:none!important;
  }
  body.fo-app-mode #ticketsPopupPage .ticket-client-sticky .ticket-label-line,
  body.fo-app-mode #ticketsPopupPage .ticket-client-sticky .ticket-value-line{
    color:#fff!important;
  }
  body.fo-app-mode #ticketsPopupPage .ticket-client-sticky .ticket-label-line{
    opacity:.88!important;
  }
  body.fo-app-mode #ticketsPopupPage .ticket-client-sticky .ticket-value-line{
    opacity:1!important;
  }
  body.fo-app-mode #ticketsPopupPage .main-ticket-cell:last-child{
    display:block!important;
    border-bottom:0!important;
    padding:10px!important;
  }
  body.fo-app-mode #ticketsPopupPage .main-ticket-cell:last-child::before{
    margin-bottom:7px!important;
  }
  body.fo-app-mode #ticketsPopupPage .description-cell{
    width:100%!important;
    max-width:none!important;
    min-height:0!important;
    -webkit-line-clamp:3!important;
  }
  body.fo-app-mode #ticketsPopupPage .actions{
    display:grid!important;
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    gap:7px!important;
    width:100%!important;
    min-height:0!important;
  }
  body.fo-app-mode #ticketsPopupPage .actions button{
    width:100%!important;
    min-width:0!important;
    height:42px!important;
    min-height:42px!important;
    padding:0 8px!important;
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    gap:6px!important;
    border-width:1px!important;
    border-radius:9px!important;
    font-size:12px!important;
  }
  body.fo-app-mode #ticketsPopupPage .actions button svg{
    width:18px!important;
    height:18px!important;
  }
  body.fo-app-mode #ticketsPopupPage .actions button[data-action="edit-ticket"]::after{
    content:'Modifica';font-weight:900!important;color:#0057c8!important;
  }
  body.fo-app-mode #ticketsPopupPage .actions button[data-action="close-ticket"]::after{
    content:'Chiudi';font-weight:900!important;color:#008a45!important;
  }
  body.fo-app-mode #ticketsPopupPage .actions button[data-action="delete-ticket"]::after{
    content:'Elimina';font-weight:900!important;color:#d80000!important;
  }

  body.dark-mode.fo-app-mode #ticketsPopupPage .filters,
  body.dark-mode.fo-app-mode #ticketsPopupPage .main-ticket-unified-box,
  body.dark-mode.fo-app-mode #ticketsPopupPage .main-ticket-cell{
    background:#111827!important;
    border-color:#334155!important;
  }
  body.dark-mode.fo-app-mode #ticketsPopupPage .ticket-group-title,
  body.dark-mode.fo-app-mode #ticketsPopupPage .ticket-creator-band-detail-style{
    background:#172033!important;
    border-color:#334155!important;
  }
  body.dark-mode.fo-app-mode #ticketsPopupPage .ticket-creator-band-detail-style span,
  body.dark-mode.fo-app-mode #ticketsPopupPage .ticket-creator-band-detail-style strong,
  body.dark-mode.fo-app-mode #ticketsPopupPage .main-ticket-cell::before{
    color:#9fb0ca!important;
  }
}

@media(max-width:460px){
  body.fo-app-mode #ticketsPopupPage #openTicketPageBtnPopup span:last-child{
    display:none!important;
  }
  body.fo-app-mode #ticketsPopupPage #openTicketPageBtnPopup{
    width:38px!important;
    min-width:38px!important;
    padding:0!important;
    font-size:18px!important;
  }
  body.fo-app-mode #ticketsPopupPage .actions{
    grid-template-columns:1fr!important;
  }
}
