/* User Menu Dropdown */
.user-menu-dropdown {
  position: absolute;
  top: 55px;
  right: 0;
  width: 480px;
  background-color: #fff;
  border-radius: var(--border-radius-md);
  box-shadow: 0 5px 15px rgba(0, 0, 0, 0.1);
  z-index: var(--z-index-dropdown);
  overflow: hidden;
  display: none;
  justify-content: space-between;
  padding: 0 5px;
}

.user-menu-dropdown.visible {
  display: flex;
  animation: fadeIn 0.3s ease forwards;
}

/* Struttura a colonne */
.menu-column {
  width: calc(50% - 5px);
  box-sizing: border-box;
}

.user-menu-section {
  width: 100%;
  box-sizing: border-box;
}

.user-menu-header {
  background-color: #a3e2de;
  color: #333;
  text-align: center;
  padding: 10px;
  font-weight: bold;
  text-transform: uppercase;
  font-size: 0.9rem;
  letter-spacing: 0.5px;
  margin-top: 7px;
}

.user-menu-items {
  list-style: none;
  padding: 0;
  margin: 0;
}

.user-menu-item {
  border-bottom: 1px solid rgba(0, 0, 0, 0.05);
}

.user-menu-item a {
  display: block;
  padding: 12px 15px;
  color: var(--color-text);
  text-decoration: none;
  transition: all 0.2s ease;
  font-size: 0.95rem;
}

.user-menu-item a:hover {
  background-color: rgba(var(--color-primary-rgb), 0.05);
  color: var(--color-primary);
  padding-left: 20px;
}

.user-menu-item.active a {
  font-weight: bold;
  color: var(--color-primary);
}

.user-menu-item a.logout,
.user-menu-item.logout a {
  color: #f9a621;
}

/* Overlay scuro per mobile quando il menu è aperto / Dark overlay for mobile when menu is open */
/* Su desktop l'overlay è sempre nascosto / On desktop overlay is always hidden */
.user-menu-overlay {
  display: none !important; /* Forza display none di default / Force display none by default */
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: rgba(0, 0, 0, 0.5);
  z-index: 9999;
  opacity: 0;
  transition: opacity 0.3s ease;
  pointer-events: none !important; /* Non bloccare i click quando non è visibile / Don't block clicks when not visible */
  visibility: hidden; /* Nascondi anche dalla visibilità / Hide from visibility too */
}

/* Su desktop, anche con classe visible, l'overlay rimane nascosto / On desktop, even with visible class, overlay stays hidden */
.user-menu-overlay.visible {
  display: none !important; /* Nascosto su desktop / Hidden on desktop */
  opacity: 0;
  pointer-events: none !important;
  visibility: hidden;
}

/* Media query per dispositivi mobili */
@media (max-width: 768px) {
  .user-menu-dropdown {
    position: fixed !important; /* Cambia da absolute a fixed per mobile / Change from absolute to fixed for mobile */
    width: 90% !important;
    max-width: 480px !important;
    top: 80px !important; /* Posiziona sotto l'header / Position below header */
    right: 50% !important;
    left: auto !important;
    transform: translateX(50%) !important; /* Centra orizzontalmente / Center horizontally */
    margin: 0 !important;
    flex-direction: column;
    max-height: calc(100vh - 100px) !important; /* Limita l'altezza considerando l'header / Limit height considering header */
    overflow-y: auto; /* Abilita lo scrolling verticale quando necessario / Enable vertical scrolling when needed */
    z-index: 10000 !important; /* Z-index molto alto per essere sopra tutto / Very high z-index to be above everything */
    box-shadow: 0 10px 40px rgba(0, 0, 0, 0.2) !important; /* Ombra più pronunciata / More pronounced shadow */
    border-radius: var(--border-radius-md) !important; /* Bordi arrotondati / Rounded corners */
  }
  
  /* Overlay: rimane nascosto di default, visibile solo con classe .visible su mobile / Overlay: stays hidden by default, visible only with .visible class on mobile */
  .user-menu-overlay {
    display: none !important; /* Nascosto di default / Hidden by default */
    pointer-events: none !important; /* Non bloccare i click quando nascosto / Don't block clicks when hidden */
    visibility: hidden;
  }
  
  .user-menu-overlay.visible {
    display: block !important; /* Visibile solo quando il menu è aperto su mobile / Visible only when menu is open on mobile */
    pointer-events: auto !important; /* Permetti click quando visibile / Allow clicks when visible */
    visibility: visible;
    opacity: 1;
  }
  
  .menu-column {
    width: 100%;
    display: flex;
    flex-direction: column;
  }
  
  /* Ordine delle sezioni su mobile: OFFERS, GIFTS, USER MENU, HELP & FAQ, SETTINGS / Section order on mobile: OFFERS, GIFTS, USER MENU, HELP & FAQ, SETTINGS */
  .menu-section-offers {
    order: 1; /* OFFERS prima / OFFERS first */
  }
  
  .menu-section-gifts {
    order: 2; /* GIFTS secondo / GIFTS second */
  }
  
  .menu-section-user {
    order: 3; /* USER MENU terzo / USER MENU third */
  }
  
  .menu-section-help {
    order: 4; /* HELP & FAQ quarto / HELP & FAQ fourth */
  }
  
  .menu-section-settings {
    order: 5; /* SETTINGS quinto / SETTINGS fifth */
  }
}

/* Media query per dispositivi molto piccoli */
@media (max-width: 480px) {
  .user-menu-dropdown {
    width: 95% !important;
    max-width: none !important;
    max-height: calc(100vh - 90px) !important; /* Limita ulteriormente l'altezza sui dispositivi più piccoli / Further limit height on smaller devices */
  }
} 