/* GENERALI */
body {
  font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
  background-color: #ffffff;
  margin: 0;
  padding: 0;
  color: #1a1a1a;
  font-size: 16px;
  line-height: 1.6;
}

/* HEADER */
.site-header {
  background: linear-gradient(90deg, #004b9a, #00aaff);
  padding: 20px 0 10px 0;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.1);
  text-align: center;
}

/* LOGO */
.logo {
  max-width: 100%;
  height: auto;
}

/* MENU MODERNO */
.main-nav {
  margin-top: 10px;
}

.nav {
  gap: 10px;
}

.nav-modern {
  font-size: 1rem;
  font-weight: 700;
  color: #ffffff;
  padding: 10px 25px;
  border-radius: 30px;
  background-color: transparent;
  border: 2px solid #ffffff;
  text-transform: uppercase;
  letter-spacing: 1px;
  transition: all 0.3s ease-in-out;
  text-decoration: none;
  box-shadow: 0 0 8px rgba(255, 255, 255, 0.1);
}

.nav-modern:hover,
.nav-modern.active {
  background-color: transparent;
  color: #ffffff;
  border: 2px solid #ffffff;
  box-shadow: 0 0 12px rgba(255, 255, 255, 0.3);
  text-decoration: none;
}

/* CANVAS */
.canvas-box {
  background-color: #ffffff;
  border-radius: 20px;
  box-shadow: 0 10px 40px rgba(0, 0, 0, 0.1);
  max-width: 1200px;
  width: 95%;
  margin: 0 auto;
  min-height: 300px;
}

/* TITOLO CANVAS */
.canvas-box h2 {
  font-size: 1.5rem;
  font-weight: 700;
  color: #004b9a;
  border-bottom: 2px solid #004b9a;
  padding-bottom: 10px;
}

/* TABELLA NOMI */
.name-cell {
  font-weight: 600;
  color: #222;
  text-align: left;
}

/* BUTTONS */
.btn-primary, .btn-outline-primary {
  border-radius: 30px;
  font-weight: 600;
  text-transform: uppercase;
}

/* SUCCESS MESSAGE */
#successMessage.alert-success {
  background-color: #d4edda !important;
  color: #155724 !important;
  border: 2px solid #28a745 !important;
  border-radius: 20px;
  font-weight: 600;
  box-shadow: 0 4px 12px rgba(40, 167, 69, 0.1);
}

/* LOGHI FLOTANTI */
.logo-float {
  width: 100%;
  max-width: 150px;
  height: auto;
  display: block;
  margin: auto;
}

.float1 {
  animation: float1 3s ease-in-out infinite;
}
.float2 {
  animation: float2 4s ease-in-out infinite;
}
.float3 {
  animation: float3 2.5s ease-in-out infinite;
}
.float4 {
  animation: float4 3.5s ease-in-out infinite;
}
.float5 {
  animation: float5 4.2s ease-in-out infinite;
}

@keyframes float1 {
  0%, 100% { transform: translateY(0px); }
  50% { transform: translateY(-15px); }
}

@keyframes float2 {
  0%, 100% { transform: translateY(0px); }
  50% { transform: translateY(-10px); }
}

@keyframes float3 {
  0%, 100% { transform: translateY(0px); }
  50% { transform: translateY(-20px); }
}

@keyframes float4 {
  0%, 100% { transform: translateY(0px); }
  50% { transform: translateY(-12px); }
}

@keyframes float5 {
  0%, 100% { transform: translateY(0px); }
  50% { transform: translateY(-18px); }
}

/* RESPONSIVE MEDIA QUERY */
@media (max-width: 576px) {
  .logo-float {
    max-width: 100px;
    margin-bottom: 15px;
  }
}
