/*
File: Custom Css File
*/
:root {
    --data-col-1: #ff0000;
    --data-col-2: #ff9600;
    --data-col-3: #ffff00;
    --data-col-4: #7eff00;
    --data-col-5: #007e0c;
    --data-col-6: #0048ff;
    --data-col-7: #c6aaff;
    --data-col-8: #ff00ff;
    --data-col-9: #912790;
    --data-col-10: #7f5548;
}

.logo {line-height: 50px;}
.logo-ace {line-height: 70px; display: inline-block !important;}
.fs-28 {font-size: 28px !important;}

/* Footer compatto 30px per tutte le risoluzioni */
.footer {
  height: 30px !important;
  min-height: 30px !important;
  padding: 0 20px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  line-height: 30px !important;
}

.footer .container-fluid {
  height: 100% !important;
  display: flex !important;
  align-items: center !important;
}

.footer .row {
  display: flex !important;
  width: 100% !important;
  height: 100% !important;
  align-items: center !important;
  margin: 0 !important;
}

.footer .col-6 {
  display: flex !important;
  align-items: center !important;
  height: 100% !important;
  padding: 0 5px !important;
}

.footer .col-6:first-child {
  justify-content: flex-start !important;
}

.footer .col-6:last-child {
  justify-content: flex-end !important;
  text-align: right !important;
}

.header-item {height: 60px;}

.hamburger-icon.open {transform: none;}
.hamburger-icon.open span:nth-child(1) {left: 1px; right: 1px; top: 5px; width: 20px; transform: none; transition-delay: .1s;}
.hamburger-icon.open span:nth-child(2) {left: 1px; right: 1px; top: 13px; width: 20px; transform: none; transition-delay: .1s;}
.hamburger-icon.open span:nth-child(3) {left: 1px; right: 1px; top: 21px; bottom:0; width: 20px; transform: none; transition-delay: .1s;}

.hamburger-icon span {background-color: #aaa;}
.hamburger-icon span:nth-child(1) {width: 100%;}
.hamburger-icon span:nth-child(3) {width: 80%;}

.navbar-menu .navbar-nav .nav-sm .nav-link::before {display: none;}
.navbar-menu .navbar-nav .nav-sm {padding-left: 0;}

.navbar-menu .navbar-nav .nav-sm .nav-link {padding: .55rem 1.5rem !important;}



.user-badge {width: 40px; height: 40px; color: #ffffff;}
.bg-user-badge-hera {background-color: #d7007a;}
.bg-overlay {background-color:#1a1d21;}
.bg-auth-signin {background-color:#292e32;}

.menu-title span {padding: 12px 0 12px 51px; font-size: 1.25rem;}

.shape > svg {fill:#292e32;}

.menu-return {color:#ffffff;}
.apexcharts-selection-rect {stroke:#ffffff; fill:#ffffff; fill-opacity: 0.1;}

.card-header h2 {font-size: 1.8em}
.card-body img {width: 100%;}

.title-col-blu {color: #0091d7; font-size: 1.0rem;}

.titolo-label {font-size: 1rem; color: #444444; white-space: nowrap; padding-left: 4px; border-bottom: 1px solid #cccccc; margin-bottom: 6px;}
.forn-label {font-size: 0.875rem; color: #444444; white-space: nowrap; padding-left: 4px; font-style: italic;}

.form-switch-lg {padding-left: 0;}
.form-check-right .form-check-label {display: inline-block;}
.form-check-right.form-switch .form-check-input {margin-right: -5.6rem; margin-top: 0.3rem;}

.contenitore-box-dati-lu,
.contenitore-box-dati-lb,
.contenitore-box-dati-ru,
.contenitore-box-dati-rb {position: absolute; margin: 0; padding: 0;}

.contenitore-box-dati-lu i,
.contenitore-box-dati-lb i,
.contenitore-box-dati-ru i,
.contenitore-box-dati-rb i {position:absolute; left: -32px; top: -38px; z-index: 1;}

.contenitore-box-dati-lu .box-dati,
.contenitore-box-dati-lb .box-dati,
.contenitore-box-dati-ru .box-dati,
.contenitore-box-dati-rb .box-dati {position:absolute; padding: 4px 4px 4px 4px; background-color: #ffffffdd; border: 2px solid #0091d7; border-radius: 12px;z-index: 10;}

.contenitore-box-dati-lu .box-dati {left: -19px; top: -2px;}
.contenitore-box-dati-lb .box-dati {left: -16px; top: -16px;}
.contenitore-box-dati-ru .box-dati {left: -15px; top: -4px;}
.contenitore-box-dati-rb .box-dati {left: -10px; top: -24px;}

.contenitore-box-dati-lu .box-dati {transform: translate(-104%, -100%); padding-right: 12px;}
.contenitore-box-dati-lb .box-dati {transform: translate(-104%, -10%); padding-right: 12px;}
.contenitore-box-dati-ru .box-dati {transform: translate(4%, -100%); padding-left: 12px;}
.contenitore-box-dati-rb .box-dati {transform: translate(4%, -10%); padding-left: 12px;}

.btn-light {--vz-btn-bg: #313438;}

.multi-del {border: none; background-color: transparent;}
.multi-del:hover {color: #d7007a;}

.table.box-table {color: #333333; border: none;}
.table.box-table th {border-top: none; border-bottom: none; border-left: none; border-right: 1px solid #eeeeee; padding: 0 4px;}
.table.box-table th .table-nome {color: #666666; background-color: #ffffff99; padding: 2px 8px; border: none;}
.table.box-table th .table-nome:hover {color: #d7007a; background-color: #eeeeee;}
.table.box-table .tab-dx { display: table; border:none; margin-left: 8px; margin-right: 8px; padding: 0;}
.table.box-table .tab-dx .table-valore {color: #666666; background-color: #ffffff99; padding: 2px 8px; border: 1px solid #eeeeee;}
.table.box-table .tab-dx .table-valore:hover {color: #d7007a; background-color: #eeeeee;}

th.sort button {
  border: none;
  font-weight:bold;
  background-color: #212529;
  color:#777;
  padding: 0;
  margin:0 0 0 12px;
}
th.sort.activeDirDown button, th.sort.activeDirUp button {
  border: none;
  font-weight:bold;
  background-color: #212529;
  color:#fff;
  padding: 0;
  margin:0;
}

.table .sort::before {left: 4px; right:unset; font-size: 1.2rem; top: 16px; color: #cccccc;}
.table .sort::after {left: 4px; right:unset; font-size: 1.2rem; top: 5px; color: #cccccc;}
.table .activeDirUp::before, .table .activeDirDown::after {color: #cccccc;}
.table .activeDirUp::after, .table .activeDirDown::before {color: #555555;}
.table > :not(caption) > * > * {padding: .75rem 1.2rem .75rem .875rem;}

.choices {display: inline-flex; flex: 1 1 min-content;}
.choices__inner {padding: 0.25rem;}
.choices__list--dropdown .choices__list {max-height: 330px;}

.confronta-trend {text-align: center;}
.confronta-trend table td {text-align: left;}

.sidebar-box-footer {position:fixed; bottom: 0; width: 249px;}
:is([data-layout="vertical"], [data-layout="semibox"])[data-sidebar-size="sm"] .navbar-menu .navbar-nav .nav-item:hover > .menu-dropdown .sidebar-box-footer {position:relative; bottom: unset; width: 200px; margin-top: 32px;}

/* Sidebar minimizzata - nascondi testi e titoli */
:is([data-layout="vertical"], [data-layout="semibox"])[data-sidebar-size="sm"] .sidebar-box-footer {
  width: 70px;
  padding: 0;
}

:is([data-layout="vertical"], [data-layout="semibox"])[data-sidebar-size="sm"] .sidebar-box-footer > li.ps-4 {
  display: none;
}

:is([data-layout="vertical"], [data-layout="semibox"])[data-sidebar-size="sm"] .sidebar-box-footer > li > br {
  display: none;
}

:is([data-layout="vertical"], [data-layout="semibox"])[data-sidebar-size="sm"] .sidebar-box-footer .nav-link {
  padding: 10px;
  text-align: center;
  justify-content: center;
}

:is([data-layout="vertical"], [data-layout="semibox"])[data-sidebar-size="sm"] .sidebar-box-footer .nav-link i {
  margin: 0;
}

:is([data-layout="vertical"], [data-layout="semibox"])[data-sidebar-size="sm"] .sidebar-box-footer .nav-item:not(.ps-4) a {
  font-size: 0;
}

:is([data-layout="vertical"], [data-layout="semibox"])[data-sidebar-size="sm"] .sidebar-box-footer .nav-item:not(.ps-4) a i {
  font-size: 1.1rem;
}

span.stepG {
  background: #00ff00;
  border-radius: 0.8em;
  -moz-border-radius: 0.8em;
  -webkit-border-radius: 0.8em;
  color: #000;
  display: inline-block;
  font-weight: bold;
  line-height: 1.6em;
  margin-right: 1px;
  text-align: center;
  width: 1.6em; 
}

span.stepB {
  background: #0209FF;
  border-radius: 0.8em;
  -moz-border-radius: 0.8em;
  -webkit-border-radius: 0.8em;
  color: #fff;
  display: inline-block;
  font-weight: bold;
  line-height: 1.6em;
  margin-right: 1px;
  text-align: center;
  width: 1.6em; 
}

.helpImage {
  max-width:1024px;
  display: block;
  margin-left: auto;
  margin-right: auto;
  border:20px solid #1b1b1b;
}

/*  added new-privacy page */
.privacy-content {
  padding: 30px;
}

.privacy-card {
  background-color: #32383e;
  border: 1px solid #404448;
  border-radius: 8px;
  padding: 25px;
  margin-bottom: 20px;
}

.privacy-card h2 {
  color: #0091d7;
  font-size: 1.5rem;
  margin-bottom: 20px;
  padding-bottom: 10px;
  border-bottom: 2px solid #404448;
}

.privacy-card h3 {
  color: #d7007a;
  font-size: 1.2rem;
  margin: 20px 0 15px;
}

.info-table {
  background-color: transparent;
  color: #adb5bd;
}

.info-table th {
  background-color: rgba(0,145,215,0.1);
  color: #35bcfd;
  border-color: #576068;
  padding: 12px;
  font-weight: 600;
  vertical-align: top;
  width: 25%;
}

.info-table td {
  background-color: rgba(0,0,0,0.2);
  border-color: #404448;
  padding: 12px;
  color: #adb5bd;
}

.info-table a {
  color: #0091d7;
  text-decoration: none;
}

.info-table a:hover {
  color: #00c4ff;
  text-decoration: underline;
}

.cookie-table {
  background-color: #32383e;
}

.cookie-table th {
  background-color: rgba(215,0,122,0.1);
  color: #d7007a;
  border-color: #404448;
  font-weight: 600;
}

.cookie-table td {
  background-color: rgba(0,0,0,0.2);
  border-color: #404448;
  color: #adb5bd;
}


.document-info {
  background-color: rgba(0,145,215,0.05);
  border-left: 4px solid #0091d7;
  padding: 15px;
  margin: 20px 0;
  color: #8b949e;
}

.header-title {
  color: #fff;
  font-size: 1.8rem;
  margin-bottom: 5px;
}

.header-subtitle {
  color: #6c757d;
  font-size: 0.9rem;
}

.custom-tooltip {
  --vz-tooltip-bg: var(--vz-primary);
  --vz-tooltip-color: #ffffff;
  --vz-tooltip-max-width: 300px;
  --vz-tooltip-padding-x: 10px;
  --vz-tooltip-padding-y: 4px;
  --vz-tooltip-font-size: 0.93rem;
}

/* Fullscreen Modal Mobile */
.fullscreen-modal-overlay {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.85);
  z-index: 9999;
  justify-content: center;
  align-items: center;
}

.fullscreen-modal-overlay.show {
  display: flex;
}

.fullscreen-modal-content {
  background-color: #32383e;
  border: 2px solid #0091d7;
  border-radius: 16px;
  padding: 30px 25px;
  text-align: center;
  max-width: 320px;
  margin: 20px;
  box-shadow: 0 10px 40px rgba(0, 145, 215, 0.3);
}

.fullscreen-modal-content h3 {
  color: #ffffff;
  font-size: 1.3rem;
  margin-bottom: 12px;
}

.fullscreen-modal-content p {
  color: #adb5bd;
  font-size: 0.95rem;
  margin-bottom: 25px;
  line-height: 1.5;
}

.fullscreen-modal-content .btn-fullscreen {
  display: block;
  width: 100%;
  padding: 14px 20px;
  font-size: 1.1rem;
  font-weight: 600;
  color: #ffffff;
  background-color: #0091d7;
  border: none;
  border-radius: 8px;
  cursor: pointer;
  margin-bottom: 12px;
  transition: background-color 0.2s;
}

.fullscreen-modal-content .btn-fullscreen:hover,
.fullscreen-modal-content .btn-fullscreen:active {
  background-color: #007ab8;
}

/* Mobile only menu item */
.mobile-only-menu {
  display: none;
}

@media (max-width: 1024px) and (pointer: coarse) {
  .mobile-only-menu {
    display: block;
  }
}


/* Label toolbar: versione corta nascosta di default */
.label-short { display: none !important; }

/* Filtri, CSV: di default nascosti, contenuti trend sempre visibili */
.filtri-link { display: none !important; }
.csv-link { display: none !important; }
#sidebarTrend.menu-dropdown { display: block !important; }

/* Desktop (> 1024px) */
@media (min-width: 1025px) {
  #sidebarAdmin.menu-dropdown { display: block !important; }
  #sidebarAiuto.menu-dropdown { display: block !important; }
  #sidebarAiutoUser.menu-dropdown { display: block !important; }

  .page-content {
    padding: 75px 5px 5px !important;
  }

  .page-content > .container-fluid {
    padding: 0 !important;
    max-width: 100% !important;
  }

  .page-content .row {
    margin: 0 !important;
  }

  .page-content .col,
  .page-content .col-12 {
    padding: 0 !important;
  }

  /* Card senza margini extra */
  .card {
    margin: 0 !important;
    border-radius: 0 !important;
  }

  .card-header {
    padding: 6px 10px !important;
  }

  .card-body {
    padding: 5px 0 0 !important;
  }

  /* Mappa - più spazio possibile */
  #map-container {
    height: calc(100vh - 145px) !important;
    min-height: 400px !important;
  }

  /* Pagina Trend - Layout Fullheight */
  body.page-trend {
    overflow: hidden;
  }

  body.page-trend .card {
    height: calc(100vh - 120px);
    display: flex;
    flex-direction: column;
  }

  body.page-trend .card-body {
    flex: 1;
    display: flex;
    flex-direction: column;
    overflow: hidden;
    padding-bottom: 20px !important;
  }

  body.page-trend .card-body > div {
    flex: 1;
    display: flex;
    flex-direction: column;
  }

  body.page-trend .toolbar {
    flex-shrink: 0;
  }

  body.page-trend #brushchart_line2 {
    flex: 1;
    min-height: 200px;
  }

  body.page-trend #brushchart_line {
    flex-shrink: 0;
    height: 130px;
  }
}




@media (max-width: 1023.99px) {
    .titolo-label {font-size: 0.875rem;}
}


/* Tablet (768px - 1024px) */
@media (min-width: 768px) and (max-width: 1024px) {
  #sidebarAdmin.menu-dropdown { display: block !important; }
  #sidebarAiuto.menu-dropdown { display: block !important; }
  #sidebarAiutoUser.menu-dropdown { display: block !important; }

  /* Blocca scroll pagina */
  html, body {
    overflow: hidden !important;
    height: 100vh !important;
  }

  /* Forza sidebar aperta e altezza fissa */
  .app-menu.navbar-menu,
  [data-sidebar-size="sm"] .app-menu.navbar-menu,
  :is([data-layout="vertical"], [data-layout="semibox"])[data-sidebar-size="sm"] .navbar-menu {
    width: 230px !important;
    left: 0 !important;
    visibility: visible !important;
    height: 100vh !important;
    position: fixed !important;
  }

  /* Mostra "Dati in Rete" nella sidebar */
  .navbar-brand-box .logo-lg,
  [data-sidebar-size="sm"] .navbar-brand-box .logo-lg,
  :is([data-layout="vertical"], [data-layout="semibox"])[data-sidebar-size="sm"] .navbar-brand-box .logo-lg {
    display: inline-block !important;
    font-size: 1.1rem !important;
    padding: 12px 10px !important;
    white-space: nowrap !important;
  }

  [data-sidebar-size="sm"] .navbar-brand-box .logo-sm,
  :is([data-layout="vertical"], [data-layout="semibox"])[data-sidebar-size="sm"] .navbar-brand-box .logo-sm {
    display: none !important;
  }

  /* Header allineato con sidebar */
  #page-topbar {
    left: 230px !important;
    width: calc(100% - 230px) !important;
  }

  /* Main content - sotto l'header */
  .main-content,
  [data-sidebar-size="sm"] .main-content,
  :is([data-layout="vertical"], [data-layout="semibox"])[data-sidebar-size="sm"] .main-content {
    margin-left: 230px !important;
    padding-top: 70px !important;
  }

  /* Page content senza margini */
  .page-content {
    padding: 0 !important;
  }

  .page-content .container-fluid,
  .page-content .row,
  .page-content .col,
  .page-content .col-12 {
    padding: 0 !important;
    margin: 0 !important;
  }

  /* Mostra i testi nella sidebar */
  :is([data-layout="vertical"], [data-layout="semibox"])[data-sidebar-size="sm"] .navbar-menu .navbar-nav .nav-link span {
    display: inline-block !important;
  }

  :is([data-layout="vertical"], [data-layout="semibox"])[data-sidebar-size="sm"] .sidebar-box-footer {
    width: 230px !important;
  }

  :is([data-layout="vertical"], [data-layout="semibox"])[data-sidebar-size="sm"] .sidebar-box-footer > li.ps-4 {
    display: block !important;
  }

  :is([data-layout="vertical"], [data-layout="semibox"])[data-sidebar-size="sm"] .sidebar-box-footer .nav-item:not(.ps-4) a {
    font-size: inherit !important;
  }

  /* Allinea testi sidebar a sinistra */
  :is([data-layout="vertical"], [data-layout="semibox"])[data-sidebar-size="sm"] .navbar-menu .navbar-nav .nav-link {
    text-align: left !important;
    justify-content: flex-start !important;
  }
  

  /* Permetti wrap nelle tabelle */
  .table-nowrap th,
  .table-nowrap td {
    white-space: normal !important;
  }

  /* Card */
  /* Card senza margini */
  .card {
    margin: 0 !important;
    border-radius: 0 !important;
  }

  .card-header {
    display: none !important;
  }

  .card-body {
    padding: 0 !important;
  }

  /* Mappa - altezza = viewport - header(70px) - footer(30px) */
  #map-container {
    height: calc(100vh - 70px - 30px) !important;
    min-height: unset !important;
  }

  /* Footer compatto 30px */
  .footer {
    position: fixed !important;
    bottom: 0 !important;
    left: 230px !important;
    width: calc(100% - 230px) !important;
    height: 30px !important;
    padding: 5px 12px !important;
    background: var(--vz-body-bg) !important;
    z-index: 100;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    font-size: 0.75rem !important;
  }

  .footer .row {
    width: 100% !important;
    display: flex !important;
    align-items: center !important;
  }


  body.page-trend {
    overflow: hidden;
  }

  body.page-trend .card {
    height: calc(100vh - 100px);
    display: flex;
    flex-direction: column;
  }

  body.page-trend .card-body {
    flex: 1;
    display: flex;
    flex-direction: column;
    overflow: hidden;
  }

  body.page-trend .card-body > div {
    flex: 1;
    display: flex;
    flex-direction: column;
  }

  body.page-trend .toolbar {
    flex-shrink: 0;
  }

  body.page-trend #brushchart_line2 {
    flex: 1;
    min-height: 150px;
  }

  body.page-trend #brushchart_line {
    flex-shrink: 0;
    height: 130px;
  }
}

@media (max-width: 1023.99px) and (max-height: 499.99px) {
  :is([data-layout="vertical"], [data-layout="semibox"])[data-sidebar-size="sm"] .navbar-menu .navbar-nav .menu-dropdown {display: block;}

  .toolbar {display: none !important;}

  .topnav-hamburger,
  #topnav-hamburger-icon {
    display: inline-flex !important;
  }
  .privacy-content {
    padding: 15px;
  }

  .info-table th,
  .info-table td {
    display: block;
    width: 100%;
  }

  .info-table th {
    background-color: #0091d7;
    color: white;
    margin-bottom: 0;
  }

  .info-table td {
    padding-left: 20px;
  }

  .titolo-label {font-size: 0.6875rem;}

  /* Header più compatto */
  #page-topbar {
    height: 40px;
  }

  .navbar-header {
    height: 40px;
    padding: 0 8px;
  }

  :is([data-layout="vertical"], [data-layout="semibox"]) .app-menu {padding-top: 4px;}

  /*.logo-ace img { height: 30px !important;}*/
  .logo-ace img { height: 18px !important;}

  .topbar-user .btn {
    padding: 4px 8px;
  }

  .header-item {height: 40px;}

  .user-badge {
    width: 32px;
    height: 32px;
  }

  /* Main content - compensa header ridotto */
  .main-content,
  [data-sidebar-size="sm"] .main-content,
  :is([data-layout="vertical"], [data-layout="semibox"])[data-sidebar-size="sm"] .main-content {
    margin-left: 230px !important;
    padding-top: 0px !important;
  }

  .main-content { margin-top: 40px;}

  .page-content {
    padding: 0 !important;
  }

  .container-fluid {
    padding-left: 0;
    padding-right: 0;
  }

  .navbar-menu .navbar-nav .nav-sm .nav-link {padding: .25rem 1.5rem !important;}

  /* Multiselezione: tabella scrollabile con bottone Confronta sempre visibile */
  .confronta-trend table { display: block; max-height: calc(100vh - 225px); overflow-y: auto; }
  .navbar-nav table.table-nowrap { display: block; max-height: calc(100vh - 135px); overflow-y: auto; }
  .confronta-trend table tbody,
  .navbar-nav table.table-nowrap tbody { display: table; width: 100%; }
  .confronta-trend table td,
  .navbar-nav table.table-nowrap td { padding: .25rem .2rem .25rem .5rem; font-size: .75rem; }

  /* Nascondi footer sidebar quando multiselezione attiva */
  .sidebar-box-footer.multiselezione-on { display: none !important; }

  /* Bottoni confronta-trend compatti */
  .confronta-trend .btn {
    font-size: 0.7rem;
    padding: 4px 10px;
    margin-bottom: 8px !important;
  }
  .confronta-trend .btn.btn-label {
    padding-left: 30px;
  }
  .confronta-trend .btn .label-icon {
    font-size: 12px !important;
    width: 24px;
    padding: 2px 0;
  }

  /* Card full width senza bordi */
  .card {
    margin: 0 !important;
    border-radius: 0;
    border: none;
  }

  .card-body {
    padding: 5px 0 0 !important;
  }

  .card-header { display: block !important; padding: 0.5rem;}

  .card-title {font-size: 14px;}

  .footer {display: none !important;}

  /* Mappa fullscreen 
  .zone, .mar-map, .mappa {
    margin: 0;
    padding: 0;
  }
*/
  #map-container {
    height: calc(100vh - 82px) !important;
    min-height: unset !important;
  }

  body.page-trend .card { height: calc(100vh - 40px);}

  body.page-trend .card-body { padding: 0 !important; }
  body.page-trend .card-body > div { gap: 0; }

  /* Grafici trend */
  #brushchart_line2,
  #brushchart_line {
    margin: 0 !important;
  }

  .apex-charts {
    margin: 0 !important;
    padding: 0 !important;
  }

  body.page-trend #brushchart_line2 { flex: 0 1 auto; min-height: 0 !important; margin-bottom: -30px !important;}

  body.page-trend #brushchart_line {
    flex-shrink: 0;
    height: 110px;
  }

  /* Sidebar links: visibile solo in landscape */
  .filtri-link { display: flex !important; }
  .csv-link { display: flex !important; }
  .admin-link { display: flex !important; }
  .aiuto-link { display: flex !important; }
  #sidebarTrend.menu-dropdown { display: none !important; }
  #sidebarTrend.menu-dropdown.show { display: block !important; }
  #sidebarAdmin.menu-dropdown { display: none !important; }
  #sidebarAdmin.menu-dropdown.show { display: block !important; }
  #sidebarAiuto.menu-dropdown { display: none !important; }
  #sidebarAiuto.menu-dropdown.show { display: block !important; }
  #sidebarAiutoUser.menu-dropdown { display: none !important; }
  #sidebarAiutoUser.menu-dropdown.show { display: block !important; }

  /* Override flyout sidebar sm - stessa specificità del framework */
  :is([data-layout="vertical"], [data-layout="semibox"])[data-sidebar-size="sm"] .navbar-menu .navbar-nav .filtri-item,
  :is([data-layout="vertical"], [data-layout="semibox"])[data-sidebar-size="sm"] .navbar-menu .navbar-nav .filtri-item:hover,
  :is([data-layout="vertical"], [data-layout="semibox"])[data-sidebar-size="sm"] .navbar-menu .navbar-nav .csv-item,
  :is([data-layout="vertical"], [data-layout="semibox"])[data-sidebar-size="sm"] .navbar-menu .navbar-nav .csv-item:hover,
  :is([data-layout="vertical"], [data-layout="semibox"])[data-sidebar-size="sm"] .navbar-menu .navbar-nav .home-item,
  :is([data-layout="vertical"], [data-layout="semibox"])[data-sidebar-size="sm"] .navbar-menu .navbar-nav .home-item:hover,
  :is([data-layout="vertical"], [data-layout="semibox"])[data-sidebar-size="sm"] .navbar-menu .navbar-nav .admin-item,
  :is([data-layout="vertical"], [data-layout="semibox"])[data-sidebar-size="sm"] .navbar-menu .navbar-nav .admin-item:hover,
  :is([data-layout="vertical"], [data-layout="semibox"])[data-sidebar-size="sm"] .navbar-menu .navbar-nav .aiuto-item,
  :is([data-layout="vertical"], [data-layout="semibox"])[data-sidebar-size="sm"] .navbar-menu .navbar-nav .aiuto-item:hover {
    position: static !important;
  }
  :is([data-layout="vertical"], [data-layout="semibox"])[data-sidebar-size="sm"] .navbar-menu .navbar-nav .filtri-item:hover > a.menu-link,
  :is([data-layout="vertical"], [data-layout="semibox"])[data-sidebar-size="sm"] .navbar-menu .navbar-nav .csv-item:hover > a.menu-link,
  :is([data-layout="vertical"], [data-layout="semibox"])[data-sidebar-size="sm"] .navbar-menu .navbar-nav .home-item:hover > a.menu-link,
  :is([data-layout="vertical"], [data-layout="semibox"])[data-sidebar-size="sm"] .navbar-menu .navbar-nav .admin-item:hover > a,
  :is([data-layout="vertical"], [data-layout="semibox"])[data-sidebar-size="sm"] .navbar-menu .navbar-nav .aiuto-item:hover > a {
    width: auto !important;
    position: static !important;
    background: none !important;
    transition: none !important;
  }
  :is([data-layout="vertical"], [data-layout="semibox"])[data-sidebar-size="sm"] .navbar-menu .navbar-nav .filtri-item:hover > a.menu-link span,
  :is([data-layout="vertical"], [data-layout="semibox"])[data-sidebar-size="sm"] .navbar-menu .navbar-nav .csv-item:hover > a.menu-link span,
  :is([data-layout="vertical"], [data-layout="semibox"])[data-sidebar-size="sm"] .navbar-menu .navbar-nav .home-item:hover > a.menu-link span,
  :is([data-layout="vertical"], [data-layout="semibox"])[data-sidebar-size="sm"] .navbar-menu .navbar-nav .admin-item:hover > a span,
  :is([data-layout="vertical"], [data-layout="semibox"])[data-sidebar-size="sm"] .navbar-menu .navbar-nav .aiuto-item:hover > a span {
    padding-left: 0 !important;
  }
  .home-item .icon-dual,
  .csv-item .icon-dual,
  .filtri-item .icon-dual,
  .admin-item .icon-dual,
  .aiuto-item .icon-dual { margin-right: 0.5rem !important; }
  :is([data-layout="vertical"], [data-layout="semibox"])[data-sidebar-size="sm"] .navbar-menu .navbar-nav .filtri-item:hover > .menu-dropdown,
  :is([data-layout="vertical"], [data-layout="semibox"])[data-sidebar-size="sm"] .navbar-menu .navbar-nav .admin-item:hover > .menu-dropdown,
  :is([data-layout="vertical"], [data-layout="semibox"])[data-sidebar-size="sm"] .navbar-menu .navbar-nav .aiuto-item:hover > .menu-dropdown,
  #sidebarTrend.menu-dropdown,
  #sidebarAdmin.menu-dropdown,
  #sidebarAiuto.menu-dropdown,
  #sidebarAiutoUser.menu-dropdown {
    position: static !important;
    left: auto !important;
    top: auto !important;
    width: 100% !important;
    box-shadow: none !important;
    background: transparent !important;
    padding: 0 !important;
    border-radius: 0 !important;
  }
  #sidebarTrend .nav-sm { padding-left: 0 !important; }

  /* Toolbar trend compatta */
  .toolbar {
    padding: 4px 0;
    gap: 4px !important;
  }

  .toolbar .btn-sm {
    padding: 2px 6px;
    font-size: 0.7rem;
  }

  .row {
    margin: 0;
  }

  .col, .col-12 {
    padding: 0;
  }
    
}


/* Hamburger menu: visibile su mobile, nascosto su tablet/desktop */
@media (min-width: 768px) {
  .topnav-hamburger,
  #topnav-hamburger-icon {
    display: none !important;
  }
}


@media (max-width: 767.98px) {
  .topnav-hamburger,
  #topnav-hamburger-icon {
    display: inline-flex !important;
  }
  .privacy-content {
    padding: 15px;
  }

  .info-table th,
  .info-table td {
    display: block;
    width: 100%;
  }

  .info-table th {
    background-color: #0091d7;
    color: white;
    margin-bottom: 0;
  }

  .info-table td {
    padding-left: 20px;
  }

  .titolo-label {font-size: 0.6875rem;}

  /* Header più compatto */
  #page-topbar {
    height: 50px;
  }

  .navbar-header {
    height: 50px;
    padding: 0 8px;
  }

  :is([data-layout="vertical"], [data-layout="semibox"]) .app-menu {padding-top: 4px;}

  /*.logo-ace img { height: 30px !important;}*/

  .logo-ace img { height: 18px !important;}

  .topbar-user .btn {
    padding: 4px 8px;
  }

  .user-badge {
    width: 32px;
    height: 32px;
  }

  /* Main content - compensa header ridotto */
  .main-content {
    margin-top: 50px;
  }

  .page-content {
    padding: 0 !important;
  }

  .container-fluid {
    padding-left: 0;
    padding-right: 0;
  }

  .navbar-menu .navbar-nav .nav-sm .nav-link {padding: .25rem 1.5rem !important;}

  /* Card full width senza bordi */
  .card {
    margin: 0 !important;
    border-radius: 0;
    border: none;
  }

  .card-body {
    padding: 5px 0 0 !important;
  }

  .card-header {
    display: none; /* Nasconde header card su mobile */
  }

  /* Footer compatto mobile */
  .footer {
    padding: 0 8px !important;
    font-size: 0.6rem !important;
  }

  /* Label toolbar: versione corta su mobile portrait */
  .label-full { display: none !important; }
  .label-short { display: inline-block !important; }

  /* Mappa fullscreen */
  .zone, .mar-map, .mappa {
    margin: 0;
    padding: 0;
  }

  #map-container {
    height: calc(100vh - 82px) !important;
    min-height: unset !important;
  }

  /* Grafici trend */
  #brushchart_line2,
  #brushchart_line {
    margin: 0 !important;
  }

  .apex-charts {
    margin: 0 !important;
    padding: 0 !important;
  }

  /* Toolbar trend compatta */
  .toolbar {
    padding: 4px 5px;
    gap: 4px !important;
  }

  .toolbar .btn-sm {
    padding: 2px 6px;
    font-size: 0.7rem;
  }

  .row {
    margin: 0;
  }

  .col, .col-12 {
    padding: 0;
  }

  /* Aggiungi a Home: allineamento */
  .navbar-menu .navbar-nav .nav-sm .addhome-item .nav-link { padding-left: calc(1.5rem - 4px) !important; }

  /* ADMIN/AIUTO collapsabili in portrait */
  #sidebarAdmin.menu-dropdown { display: none !important; }
  #sidebarAdmin.menu-dropdown.show { display: block !important; }
  #sidebarAiuto.menu-dropdown { display: none !important; }
  #sidebarAiuto.menu-dropdown.show { display: block !important; }
  #sidebarAiutoUser.menu-dropdown { display: none !important; }
  #sidebarAiutoUser.menu-dropdown.show { display: block !important; }
}


@media (max-width: 360px) {
    .titolo-label {font-size: 0.6rem;}
}
