/* Aggiornamento operativo 20/07/2026 */

/* ---------------------------------------------------------
   Paginazione server: una sola barra, piccola e leggibile.
   --------------------------------------------------------- */
.server-pagination{
  display:grid!important;
  grid-template-columns:auto minmax(0,1fr) auto;
  align-items:center;
  column-gap:10px;
  row-gap:6px;
  margin:8px 0 10px!important;
  padding:6px 8px;
  border:1px solid #d9dde4;
  border-radius:8px;
  background:#f8f9fb;
  font-size:12px;
}
.server-pagination .pagination-info{
  margin:0!important;
  font-size:12px;
  white-space:nowrap;
}
.server-pagination>a,
.server-pagination>span.btn{
  min-width:28px!important;
  min-height:28px!important;
  padding:4px 7px!important;
  font-size:11px!important;
  line-height:18px!important;
  text-align:center;
}
.server-pagination .pagination-dots{padding:0 2px;font-size:11px}
.server-pagination .per-page-form{
  grid-column:3;
  grid-row:1;
  margin:0!important;
  white-space:nowrap;
}
.server-pagination .per-page-form label{display:flex;align-items:center;gap:5px;font-size:11px}
.server-pagination select{min-height:28px!important;padding:3px 22px 3px 6px!important;font-size:11px}

/* ---------------------------------------------------------
   Dismissioni e ritiri.
   --------------------------------------------------------- */
body:has(.scadenze-operativa) .main{max-width:none}
.scadenze-operativa .server-pagination{max-width:760px}
.scadenze-operativa .actions-cell{width:120px;min-width:120px}
.scadenze-operativa .actions-cell .inline-form{display:inline-block;margin:2px 2px 2px 0}
.scadenze-operativa .actions-cell .btn,
.scadenze-operativa .actions-cell button{width:auto!important;min-width:0!important;padding:5px 8px!important;font-size:11px!important}

/* ---------------------------------------------------------
   Consensi compatti: mandati e nuovo cliente.
   --------------------------------------------------------- */
.mandato-consensi-compact{padding:10px 12px!important}
.mandato-consensi-compact h3{margin:0 0 3px;font-size:16px}
.mandato-consensi-compact>p{margin:0 0 7px;font-size:11px;line-height:1.25}
.mandato-consensi-compact .consent-checks{
  display:grid!important;
  grid-template-columns:repeat(5,minmax(125px,1fr));
  gap:5px!important;
}
.mandato-consensi-compact .consent-checks>label{
  display:grid!important;
  grid-template-columns:auto minmax(0,1fr) auto;
  align-items:center;
  gap:5px;
  min-height:34px!important;
  margin:0!important;
  padding:4px 6px!important;
  border:1px solid #e1e4e9;
  border-radius:7px;
  background:#fff;
  font-size:11px!important;
  line-height:1.12;
}
.mandato-consensi-compact .consent-checks>label:first-child{grid-column:span 2}
.mandato-consensi-compact input[type=checkbox]{width:15px!important;height:15px!important;margin:0}
.mandato-consensi-compact .consent-open,
.mandato-consensi-compact .linklike{
  min-height:25px!important;
  padding:3px 6px!important;
  border-radius:5px!important;
  font-size:10px!important;
  line-height:16px!important;
}
.mandato-consensi-compact>a.btn{margin-top:7px;min-height:28px!important;padding:4px 8px!important;font-size:11px!important}

.documento-easy-flow-compact,
.nuovo-cliente-consensi-compact{padding:11px 12px!important}
.documento-easy-flow-compact .documento-easy-heading{gap:9px;margin-bottom:7px}
.documento-easy-flow-compact .documento-easy-number{width:38px!important;height:38px!important;font-size:21px!important}
.documento-easy-flow-compact .documento-easy-heading h2{font-size:19px!important;margin:0 0 2px!important}
.documento-easy-flow-compact .documento-easy-heading p{font-size:12px!important;margin:0!important}
.documento-easy-flow-compact .documento-easy-progress{margin:7px 0!important;gap:6px!important}
.documento-easy-flow-compact .documento-easy-progress-step{min-height:34px!important;padding:4px 7px!important;font-size:11px!important}
.documento-easy-flow-compact .documento-action-card{min-height:158px!important;padding:10px!important}
.documento-easy-flow-compact .documento-easy-icon{font-size:25px!important}
.documento-easy-flow-compact .documento-action-card h3{font-size:16px!important;margin:3px 0!important}
.documento-easy-flow-compact .documento-action-card p{font-size:11px!important;line-height:1.25!important;margin-bottom:7px!important}
.documento-easy-flow-compact .documento-read-button{min-height:31px!important;padding:5px 9px!important;font-size:11px!important}
.documento-easy-flow-compact .documento-scan-status{padding:7px 9px!important;margin:7px 0!important;font-size:11px!important}
.documento-easy-flow-compact .documento-save-choice{padding:7px!important;margin-top:7px!important}
.documento-easy-flow-compact .documento-save-choice b{font-size:11px}
.documento-easy-flow-compact .documento-save-choice small,
.documento-easy-flow-compact .documento-privacy-note{font-size:10px!important}
.nuovo-cliente-consensi-compact h2{font-size:17px;margin:0 0 7px}
.nuovo-cliente-consensi-compact .quote-grid input{min-height:32px!important;padding:5px 7px!important}
.nuovo-cliente-consensi-compact .consent-checks{gap:4px!important}
.nuovo-cliente-consensi-compact .consent-checks>label{min-height:32px!important;padding:4px 6px!important;font-size:10.5px}
.nuovo-cliente-consensi-compact .consent-open,
.nuovo-cliente-consensi-compact .linklike{min-height:25px!important;padding:3px 6px!important;font-size:9.5px!important}
.nuovo-cliente-consensi-compact textarea{min-height:55px!important}

/* ---------------------------------------------------------
   Elenco clienti: larghezze rigide per colonna.
   Le classi sono applicate direttamente a TH/TD, quindi la resa
   non dipende dall'ordine del colgroup o da vecchi CSS caricati.
   --------------------------------------------------------- */
.clienti-operativa-leggera{
  width:100%!important;
  min-width:1040px!important;
  table-layout:fixed!important;
}
.clienti-operativa-leggera .col-cliente-head,
.clienti-operativa-leggera .client-main-cell{
  width:auto!important;
  min-width:300px!important;
  max-width:none!important;
}
.clienti-operativa-leggera .col-mandati-head,
.clienti-operativa-leggera .client-mandates-cell{
  width:120px!important;
  min-width:120px!important;
  max-width:120px!important;
  white-space:nowrap!important;
  line-height:1.35;
}
.clienti-operativa-leggera .client-mandates-cell div{font-size:12px;margin:1px 0}
.clienti-operativa-leggera .client-mandates-cell b{font-size:14px}
.clienti-operativa-leggera .col-contatti-head,
.clienti-operativa-leggera .client-contacts-cell{
  width:290px!important;
  min-width:290px!important;
  max-width:290px!important;
  overflow-wrap:anywhere;
}
.clienti-operativa-leggera .col-data-head,
.clienti-operativa-leggera .client-created-cell{
  width:115px!important;
  min-width:115px!important;
  max-width:115px!important;
  white-space:nowrap;
  font-size:12px;
}
.clienti-operativa-leggera .col-azioni-head,
.clienti-operativa-leggera .actions-cell-scheda-only{
  width:145px!important;
  min-width:145px!important;
  max-width:145px!important;
}
@media(max-width:900px){
  .clienti-operativa-leggera{min-width:900px!important}
  .clienti-operativa-leggera .col-cliente-head,
  .clienti-operativa-leggera .client-main-cell{min-width:250px!important}
  .clienti-operativa-leggera .col-contatti-head,
  .clienti-operativa-leggera .client-contacts-cell{width:250px!important;min-width:250px!important;max-width:250px!important}
}

/* ---------------------------------------------------------
   Categorie e sottocategorie.
   --------------------------------------------------------- */
.category-create-grid{
  display:grid;
  grid-template-columns:140px minmax(240px,1fr) minmax(240px,1fr) auto;
  gap:10px;
  align-items:end;
}
.category-create-grid label{margin:0}
.category-create-grid .btn{min-height:40px}
.categorie-table{min-width:1180px}
.categorie-table col.cat-code{width:7%}
.categorie-table col.cat-name{width:17%}
.categorie-table col.cat-parent{width:15%}
.categorie-table col.cat-count{width:7%}
.categorie-table col.cat-edit{width:25%}
.categorie-table col.cat-delete{width:22%}
.categorie-table col.cat-stock{width:7%}
.categorie-table tr.is-subcategory td:nth-child(2){padding-left:22px;background:#fffaf3}
.category-edit-form{display:grid;grid-template-columns:75px minmax(140px,1fr) minmax(130px,1fr) auto;gap:5px;align-items:end}
.category-edit-form input,.category-edit-form select{min-width:0;min-height:32px!important;padding:4px 6px!important;font-size:11px}
.category-delete-form{display:grid;grid-template-columns:minmax(160px,1fr) auto;gap:6px;align-items:end}
.category-delete-form label{margin:0;font-size:10px}
.category-delete-form select{min-height:32px!important;padding:4px 6px!important;font-size:11px}

/* ---------------------------------------------------------
   Menu laterale a fisarmonica.
   --------------------------------------------------------- */
.side-nav-accordion{display:block!important;padding-bottom:8px}
.side-nav-group{margin:0 7px 7px;border:1px solid rgba(255,255,255,.10);border-radius:9px;overflow:hidden;background:rgba(0,0,0,.12)}
.side-nav-group>summary{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:8px;
  padding:9px 10px;
  color:#a9d5d7;
  font-size:10px;
  font-weight:900;
  letter-spacing:.75px;
  text-transform:uppercase;
  cursor:pointer;
  list-style:none;
  user-select:none;
}
.side-nav-group>summary::-webkit-details-marker{display:none}
.side-nav-group .group-arrow{font-size:16px;line-height:1;transition:transform .15s ease}
.side-nav-group[open] .group-arrow{transform:rotate(180deg)}
.side-nav-links{padding:0 4px 5px}
.side-nav-links>a{margin:4px 0!important;min-height:40px!important}
.side-nav-group:not([open]) .side-nav-links{display:none}

/* ---------------------------------------------------------
   Mandato: popup articolo e stampa etichette multiple.
   --------------------------------------------------------- */
.mandato-bulk-actions{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:0 0 8px;padding:7px 9px;border:1px solid #dde2ea;border-radius:8px;background:#f8f9fb}
.label-select-col{width:68px;text-align:center!important}
.label-select-col input{width:18px;height:18px}
.admin-dialog{
  width:min(880px,calc(100vw - 28px));
  max-height:calc(100vh - 28px);
  padding:0;
  border:0;
  border-radius:16px;
  box-shadow:0 28px 80px rgba(0,0,0,.38);
  background:#fff;
  overflow:auto;
}
.admin-dialog::backdrop{background:rgba(8,15,26,.68);backdrop-filter:blur(2px)}
.articolo-dialog-form{padding:18px!important;margin:0!important}
.dialog-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;border-bottom:1px solid #e3e6eb;padding-bottom:10px;margin-bottom:3px}
.dialog-heading h2{margin:1px 0 0}
.dialog-close{width:38px!important;height:38px!important;min-width:38px!important;padding:0!important;border-radius:50%!important;background:#343434!important;color:#fff!important;font-size:25px!important;line-height:1!important}
.dialog-actions{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end;margin-top:5px}

/* ---------------------------------------------------------
   Miscellaneous responsive rules.
   --------------------------------------------------------- */
@media(max-width:1200px){
  .mandato-consensi-compact .consent-checks{grid-template-columns:repeat(3,minmax(125px,1fr))}
  .category-create-grid{grid-template-columns:110px 1fr 1fr}.category-create-grid>button{grid-column:1/-1}
}
@media(max-width:800px){
  .server-pagination{grid-template-columns:1fr auto}
  .server-pagination .pagination-info{grid-column:1/-1}
  .server-pagination .per-page-form{grid-column:2;grid-row:2}
  .mandato-consensi-compact .consent-checks{grid-template-columns:repeat(2,minmax(120px,1fr))}
  .mandato-consensi-compact .consent-checks>label:first-child{grid-column:1/-1}
  .category-create-grid{grid-template-columns:1fr}
  .category-create-grid>button{grid-column:auto}
  .dialog-actions .btn{width:100%;text-align:center}
  .mandato-bulk-actions{align-items:stretch;flex-direction:column}
  .mandato-bulk-actions .btn{width:100%;text-align:center}
}
@media(max-width:520px){
  .mandato-consensi-compact .consent-checks{grid-template-columns:1fr}
  .nuovo-cliente-top-grid{gap:9px!important}
  .documento-acquisition-grid{gap:7px!important}
}
.server-pagination .pagination-controls{display:flex;align-items:center;gap:4px;min-width:0;flex-wrap:wrap}
.server-pagination .pagination-controls>a,.server-pagination .pagination-controls>span.btn{min-width:28px!important;min-height:28px!important;padding:4px 7px!important;font-size:11px!important;line-height:18px!important;text-align:center}
@media(max-width:800px){.server-pagination .pagination-controls{grid-column:1;grid-row:2}}
.scadenze-operativa .actions-cell{width:190px;min-width:190px}
.scadenze-row-actions{display:flex;align-items:center;gap:4px;flex-wrap:wrap}
.scadenze-row-actions .inline-form{display:contents!important}
.scadenze-row-actions .btn,.scadenze-row-actions button{min-height:28px!important;padding:4px 7px!important;font-size:10.5px!important;white-space:nowrap}
.clienti-operativa-leggera{table-layout:fixed;width:100%}
.clienti-operativa-leggera td{overflow-wrap:anywhere}


/* Ordinamento SQL cliccabile per Clienti, Mandati e Articoli. */
.sortable-th>a{display:inline-flex;align-items:center;gap:4px;color:inherit;text-decoration:none;font-weight:800;white-space:nowrap}
.sortable-th>a:hover,.sortable-th>a:focus{text-decoration:underline;color:var(--theme-primary,#333)}
.sortable-th .sub-sort{display:block;margin-top:3px;font-size:10px;font-weight:600;opacity:.82}
.sortable-th .sub-sort a{color:inherit;text-decoration:none}
.sortable-admin-table thead th,.clienti-operativa-leggera thead th{vertical-align:bottom}
.mandati-list-table{min-width:1280px}
.articoli-list-table{min-width:1480px}
@media(max-width:760px){
  .sortable-th>a{min-height:28px}
  .clienti-table-wrap-leggera{overflow-x:auto!important;-webkit-overflow-scrolling:touch}
  .clienti-operativa-leggera th,.clienti-operativa-leggera td{padding:7px!important}
}

/* Operazioni massive articoli riservate al superadmin */
.superadmin-bulk-head{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:18px}
.superadmin-bulk-head h2{margin:.2rem 0 0}
.superadmin-bulk-head p{max-width:620px;margin:0}
.superadmin-bulk-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.superadmin-bulk-card{display:flex;flex-direction:column;gap:14px;padding:18px;border:1px solid rgba(120,70,20,.22);border-radius:16px;background:rgba(255,255,255,.72)}
.superadmin-bulk-card>div{display:flex;align-items:baseline;gap:10px}
.superadmin-bulk-card>div b{font-size:2rem;line-height:1}
.superadmin-bulk-card>div span{font-weight:800}
.superadmin-bulk-card p{margin:0;min-height:3.6em}
.bulk-confirm-check{display:flex;align-items:flex-start;gap:9px;font-weight:800}
.bulk-confirm-check input{width:20px;height:20px;flex:0 0 auto;margin-top:1px}
.superadmin-bulk-card button{align-self:flex-start}
.superadmin-bulk-card button:disabled{opacity:.45;cursor:not-allowed}
@media(max-width:850px){.superadmin-bulk-grid{grid-template-columns:1fr}.superadmin-bulk-head{display:block}.superadmin-bulk-head p{margin-top:10px}.superadmin-bulk-card p{min-height:0}}
