/* Azioni sempre visibili prima dei dati */
.cliente-operativo .cliente-layout{
    grid-template-columns:320px minmax(0,1fr) !important;
    gap:16px !important;
    align-items:start !important;
}
.cliente-operativo .cliente-side-actions{
    grid-column:1 !important;
    grid-row:1 !important;
    order:-1 !important;
}
.cliente-operativo .cliente-main{
    grid-column:2 !important;
    grid-row:1 !important;
    min-width:0 !important;
}
.cliente-operativo .cliente-side-actions::before{
    content:'Azioni cliente';
    display:block;
    font-size:18px;
    font-weight:900;
    color:#222;
    padding:0 2px 4px;
}
.cliente-operativo .side-action.primary{
    background:linear-gradient(180deg,#fff7ef,#ffffff) !important;
    border-left:6px solid #155e63 !important;
}
.cliente-operativo .side-action b{
    font-size:16px !important;
}

/* Nelle tabelle la colonna Azioni/Azione viene spostata in prima posizione via JS
   e resta bloccata a sinistra quando la tabella scorre. */
table.azioni-prime-table th:first-child,
table.azioni-prime-table td:first-child{
    position:sticky;
    left:0;
    z-index:3;
    background:#fff;
    box-shadow:3px 0 5px rgba(0,0,0,.08);
    min-width:130px;
}
table.azioni-prime-table th:first-child{
    z-index:5;
    background:#303030;
    color:#fff;
}
table.azioni-prime-table td:first-child .btn,
table.azioni-prime-table td:first-child a.btn,
table.azioni-prime-table td:first-child button.btn{
    margin:2px 3px 2px 0;
    white-space:nowrap;
}

@media(max-width:1100px){
    .cliente-operativo .cliente-layout{
        grid-template-columns:1fr !important;
    }
    .cliente-operativo .cliente-side-actions,
    .cliente-operativo .cliente-main{
        grid-column:auto !important;
        grid-row:auto !important;
    }
    .cliente-operativo .cliente-side-actions{
        order:-1 !important;
        position:static !important;
        display:grid !important;
        grid-template-columns:repeat(2,minmax(0,1fr)) !important;
        gap:9px !important;
    }
    .cliente-operativo .cliente-side-actions::before{
        grid-column:1 / -1;
    }
}

@media(max-width:700px){
    .cliente-operativo .cliente-side-actions{
        grid-template-columns:1fr !important;
    }
    table.azioni-prime-table th:first-child,
    table.azioni-prime-table td:first-child{
        min-width:115px;
    }
}


/* Fix reale mobile + logo trasparente */
@media (max-width: 980px){
  .side .brand.brand-with-logo{padding:6px 0 8px !important;margin:0 auto 10px !important;display:flex !important;justify-content:center !important;align-items:center !important}
  .side .brand.brand-with-logo img{width:min(148px,56vw) !important;max-width:148px !important;height:auto !important;display:block !important;background:transparent !important;filter:drop-shadow(0 6px 14px rgba(0,0,0,.18)) !important}
  .mobile-topbar .mobile-brand{gap:10px !important;min-width:0 !important;flex:1 1 auto !important}
  .mobile-topbar .mobile-brand img{height:50px !important;width:auto !important;max-width:92px !important;background:transparent !important;display:block !important}
  .mobile-topbar .mobile-brand span{font-size:18px !important;line-height:1.1 !important;white-space:nowrap !important;overflow:hidden !important;text-overflow:ellipsis !important}

  .cliente-operativo .cliente-toolbar,
  .cliente-operativo .cliente-comandi-operativi{display:block !important;padding:14px !important}
  .cliente-operativo .cliente-toolbar .cliente-actions-title,
  .cliente-operativo .cliente-comandi-operativi .cliente-actions-title,
  .cliente-operativo .cliente-toolbar .cliente-actions-help,
  .cliente-operativo .cliente-comandi-operativi .cliente-actions-help{display:block !important;margin-bottom:12px !important}
  .cliente-operativo .cliente-actions-grid{display:grid !important;grid-template-columns:repeat(2,minmax(0,1fr)) !important;gap:10px !important;width:100% !important}

  .cliente-operativo .cliente-subtoolbar,
  .cliente-operativo .cliente-azioni-secondarie{display:block !important;padding:14px !important}
  .cliente-operativo .cliente-subtoolbar .cliente-actions-title,
  .cliente-operativo .cliente-azioni-secondarie .cliente-actions-title,
  .cliente-operativo .cliente-subtoolbar .cliente-actions-help,
  .cliente-operativo .cliente-azioni-secondarie .cliente-actions-help{display:block !important;margin-bottom:12px !important}
  .cliente-operativo .cliente-secondary-grid{display:grid !important;grid-template-columns:1fr !important;gap:10px !important;width:100% !important}
  .cliente-operativo .cliente-secondary-grid > a,
  .cliente-operativo .cliente-secondary-grid > button,
  .cliente-operativo .cliente-secondary-grid > .btn,
  .cliente-operativo .cliente-secondary-grid > .inline-form{width:100% !important;min-width:0 !important;max-width:100% !important;margin:0 !important;display:block !important}
  .cliente-operativo .cliente-secondary-grid > .inline-form > button,
  .cliente-operativo .cliente-secondary-grid > a.btn,
  .cliente-operativo .cliente-secondary-grid > button.btn,
  .cliente-operativo .cliente-secondary-grid > .btn{width:100% !important;min-height:58px !important;padding:12px 14px !important;display:flex !important;align-items:center !important;justify-content:center !important;text-align:center !important;white-space:normal !important;line-height:1.2 !important;font-size:18px !important}
  .cliente-operativo .cliente-meta-line{display:block !important;width:100% !important;margin-top:12px !important}
}
@media (max-width: 640px){
  .mobile-topbar .mobile-brand img{height:44px !important;max-width:78px !important}
  .mobile-topbar .mobile-brand span{font-size:17px !important}
  .cliente-operativo .cliente-actions-grid{grid-template-columns:1fr 1fr !important}
}
@media (max-width: 420px){
  .cliente-operativo .cliente-actions-grid{grid-template-columns:1fr !important}
}


/* Fix finale menu mobile + scheda cliente */
@media (max-width: 980px){
  .side .brand.brand-with-logo{margin:8px auto 12px !important;padding:0 !important;display:flex !important;justify-content:center !important;align-items:center !important}
  .side .brand.brand-with-logo img{width:110px !important;max-width:110px !important;max-height:88px !important;height:auto !important;display:block !important;background:transparent !important;object-fit:contain !important;filter:drop-shadow(0 4px 10px rgba(0,0,0,.18)) !important}
  .side .brand.brand-with-logo span{display:none !important}
  .mobile-topbar .mobile-brand img{height:40px !important;max-width:64px !important;width:auto !important;object-fit:contain !important;background:transparent !important}
  .mobile-topbar .mobile-brand span{font-size:16px !important;font-weight:800 !important}

  .cliente-operativo .cliente-actions-grid{display:grid !important;grid-template-columns:repeat(2,minmax(0,1fr)) !important;gap:10px !important}
  .cliente-operativo .cliente-actions-grid .tool-btn{min-height:98px !important;height:auto !important;padding:10px 8px !important}

  .cliente-operativo .cliente-secondary-grid{display:grid !important;grid-template-columns:1fr !important;gap:10px !important;width:100% !important}
  .cliente-operativo .cliente-secondary-grid > a,
  .cliente-operativo .cliente-secondary-grid > button,
  .cliente-operativo .cliente-secondary-grid > form,
  .cliente-operativo .cliente-secondary-grid > .inline-form{display:block !important;width:100% !important;max-width:100% !important;margin:0 !important}
  .cliente-operativo .cliente-secondary-grid > a.btn,
  .cliente-operativo .cliente-secondary-grid > button.btn,
  .cliente-operativo .cliente-secondary-grid > form > button,
  .cliente-operativo .cliente-secondary-grid > .inline-form > button{
      width:100% !important;max-width:100% !important;min-height:56px !important;height:auto !important;padding:12px 14px !important;
      display:flex !important;align-items:center !important;justify-content:center !important;text-align:center !important;
      white-space:normal !important;word-break:keep-all !important;overflow-wrap:anywhere !important;line-height:1.2 !important;font-size:17px !important;
  }
  .cliente-operativo .cliente-subtoolbar,
  .cliente-operativo .cliente-azioni-secondarie{display:block !important}
  .cliente-operativo .cliente-meta-line{display:block !important;margin-top:12px !important}
}
@media (max-width: 420px){
  .cliente-operativo .cliente-actions-grid{grid-template-columns:1fr !important}
  .side .brand.brand-with-logo img{width:94px !important;max-width:94px !important;max-height:76px !important}
}


/* Rifinitura colori e rilievo logo + menu mobile */
.side .brand.brand-with-logo img,
.mobile-topbar .mobile-brand img{
  filter: drop-shadow(0 2px 0 rgba(255,255,255,.22)) drop-shadow(0 6px 14px rgba(0,0,0,.28));
}
@media (max-width: 980px){
  .side .brand.brand-with-logo{margin:4px auto 8px !important}
  .side .brand.brand-with-logo img{width:78px !important;max-width:78px !important;max-height:64px !important}
  .mobile-topbar .mobile-brand img{height:36px !important;max-width:56px !important}
  .mobile-topbar .mobile-brand span{font-size:15px !important}
  .side .quick-actions a{box-shadow:0 4px 0 rgba(116,56,10,.95),0 10px 20px rgba(0,0,0,.28) !important;border-radius:15px !important}
  .side .side-nav a{box-shadow:inset 0 1px 0 rgba(255,255,255,.22),0 10px 22px rgba(0,0,0,.24) !important}
}


/* Correzione finale logo mobile/admin */
@media (max-width: 980px){
  .side .brand.brand-with-logo img{width:118px !important;max-width:118px !important;max-height:none !important;padding:7px 9px !important;border-radius:16px !important}
  .mobile-topbar .mobile-brand img{height:44px !important;max-width:80px !important;padding:4px 6px !important;border-radius:12px !important}
  .mobile-topbar .mobile-brand span{font-size:18px !important}
}
@media (max-width: 420px){
  .side .brand.brand-with-logo img{width:104px !important;max-width:104px !important}
  .mobile-topbar .mobile-brand img{height:40px !important;max-width:72px !important}
}


/* Fix definitivo logo menu admin */
.side .brand.brand-with-logo{
  width:calc(100% - 24px) !important;
  max-width:216px !important;
  margin:12px auto 14px !important;
  padding:12px 10px !important;
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  justify-content:center !important;
  gap:0 !important;
  border-radius:22px !important;
  background:linear-gradient(180deg,#fffdfa 0%,#f5ecdb 100%) !important;
  border:1px solid rgba(196,151,81,.62) !important;
  box-shadow:0 1px 0 rgba(255,255,255,.92) inset,0 12px 26px rgba(0,0,0,.22) !important;
}
.side .brand.brand-with-logo img{
  width:180px !important;
  max-width:100% !important;
  height:auto !important;
  max-height:none !important;
  padding:0 !important;
  border:none !important;
  border-radius:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  filter:drop-shadow(0 1px 0 rgba(255,255,255,.35)) drop-shadow(0 5px 10px rgba(0,0,0,.08)) !important;
  object-fit:contain !important;
}
.side .brand.brand-with-logo span{display:none !important}
.mobile-topbar .mobile-brand{
  gap:10px !important;
  display:flex !important;
  align-items:center !important;
}
.mobile-topbar .mobile-brand img{
  height:42px !important;
  width:auto !important;
  max-width:74px !important;
  padding:4px 6px !important;
  border-radius:12px !important;
  background:linear-gradient(180deg,#fffdfa 0%,#f5ecdb 100%) !important;
  border:1px solid rgba(196,151,81,.58) !important;
  box-shadow:0 1px 0 rgba(255,255,255,.92) inset,0 8px 16px rgba(0,0,0,.18) !important;
  filter:none !important;
}
.mobile-topbar .mobile-brand span{
  font-size:18px !important;
  line-height:1.05 !important;
  font-weight:800 !important;
  letter-spacing:-.01em !important;
}
@media (max-width: 980px){
  .side .brand.brand-with-logo{
    max-width:192px !important;
    padding:10px 8px !important;
    margin:10px auto 12px !important;
  }
  .side .brand.brand-with-logo img{width:156px !important}
}
@media (max-width: 420px){
  .side .brand.brand-with-logo{max-width:174px !important}
  .side .brand.brand-with-logo img{width:144px !important}
  .mobile-topbar .mobile-brand img{height:38px !important;max-width:68px !important}
  .mobile-topbar .mobile-brand span{font-size:17px !important}
}
