/* ========== FOOTER - Modern & Professional ========== */
footer{
  position:relative;
  background:
    linear-gradient(135deg, rgba(255,255,255,0.05) 0%, transparent 50%),
    radial-gradient(circle at 20% 80%, rgba(34,181,97,0.08) 0%, transparent 60%),
    radial-gradient(circle at 80% 20%, rgba(151,180,94,0.06) 0%, transparent 60%),
    linear-gradient(180deg, #0a0f14 0%, #060a0e 100%);
  color:#fff;
  padding:48px 24px 24px;
  margin-top:60px;
  border-top:1px solid rgba(34,181,97,0.2);
  overflow:hidden;
  box-shadow:0 -16px 48px rgba(0,0,0,0.3);
}

footer::before{
  content:'';
  position:absolute;
  inset:0;
  background:url("data:image/svg+xml,%3Csvg width='80' height='80' viewBox='0 0 80 80' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cg fill='%2322B561' fill-opacity='0.03'%3E%3Cpath d='M0 0h40v40H0V0zm40 40h40v40H40V40zm0-40h2l-2 2V0zm0 4l4-4h2l-6 6V4zm0 4l8-8h2L40 10V8zm0 4L52 0h2L40 14v-2zm0 4L56 0h2L40 18v-2zm0 4L60 0h2L40 22v-2zm0 4L64 0h2L40 26v-2zm0 4L68 0h2L40 30v-2zm0 4L72 0h2L40 34v-2zm0 4L76 0h2L40 38v-2zm0 4L80 0v2L42 40h-2zm4 0L80 4v2L46 40h-2zm4 0L80 8v2L50 40h-2zm4 0l28-28v2L54 40h-2zm4 0l24-24v2L58 40h-2zm4 0l20-20v2L62 40h-2zm4 0l16-16v2L66 40h-2zm4 0l12-12v2L70 40h-2zm4 0l8-8v2l-6 6h-2zm4 0l4-4v2l-2 2h-2z'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E");
  opacity:0.4;
  pointer-events:none;
}

footer::after{
  content:'';
  position:absolute;
  top:0;
  left:0;
  right:0;
  height:200px;
  background:linear-gradient(180deg, transparent 0%, rgba(34,181,97,0.02) 100%);
  pointer-events:none;
}

.footer-inner{
  position:relative;
  max-width:1200px;
  margin:0 auto;
  display:flex;
  flex-direction:column;
  align-items:center;
  text-align:center;
  gap:20px;
  z-index:1;
}

.footer-content{
  display:grid;
  grid-template-columns:repeat(auto-fit, minmax(280px, 1fr));
  gap:48px;
  padding-bottom:40px;
  border-bottom:1px solid rgba(255,255,255,0.08);
}

.footer-brand{
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:8px;
}

.footer-logo{
  font-size:28px;
  font-weight:800;
  letter-spacing:-0.02em;
  margin:0;
  background:linear-gradient(135deg, #22B561 0%, #97B45E 100%);
  -webkit-background-clip:text;
  -webkit-text-fill-color:transparent;
  background-clip:text;
  line-height:1.2;
  filter:drop-shadow(0 2px 8px rgba(34,181,97,0.3));
}

.footer-tagline{
  font-size:14px;
  color:rgba(255,255,255,0.7);
  font-weight:500;
  margin:0;
  line-height:1.6;
}

.footer-section{
  display:flex;
  flex-direction:column;
  gap:20px;
}

.footer-section-title{
  font-size:14px;
  font-weight:700;
  color:#22B561;
  text-transform:uppercase;
  letter-spacing:0.1em;
  margin:0 0 8px 0;
}

.footer-links{
  display:flex;
  flex-direction:column;
  gap:12px;
}

.footer-link{
  font-size:15px;
  color:rgba(255,255,255,0.65);
  text-decoration:none;
  font-weight:500;
  transition:all .25s var(--ease);
  padding:6px 0;
  display:inline-block;
  width:fit-content;
}

.footer-link:hover{
  color:#22B561;
  transform:translateX(4px);
}

.footer-divider{
  width:60px;
  height:2px;
  background:linear-gradient(90deg, transparent 0%, rgba(34,181,97,0.5) 50%, transparent 100%);
  margin:4px 0;
}

.footer-bottom{
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:20px;
  text-align:center;
  width:100%;
}

.footer-version{
  display:flex;
  align-items:center;
  gap:10px;
  background:rgba(34,181,97,0.08);
  border:1.5px solid rgba(34,181,97,0.2);
  padding:10px 20px;
  border-radius:12px;
  backdrop-filter:blur(12px);
  box-shadow:0 8px 24px rgba(34,181,97,0.15), inset 0 1px 0 rgba(255,255,255,0.08);
}

.footer-version-text{
  font-size:13px;
  font-weight:600;
  color:rgba(255,255,255,0.9);
  font-variant-numeric:tabular-nums;
}

.footer-version-text .version-number{
  color:#22B561;
  font-weight:800;
  margin-left:6px;
  font-size:14px;
}

.footer-version-separator{
  width:4px;
  height:4px;
  border-radius:50%;
  background:rgba(255,255,255,0.3);
}

.footer-version-text .build-date{
  color:rgba(255,255,255,0.6);
  font-weight:500;
  font-size:13px;
}

.footer-developer{
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:8px;
}

.footer-dev-label{
  font-size:11px;
  color:rgba(255,255,255,0.5);
  font-weight:600;
  text-transform:uppercase;
  letter-spacing:0.1em;
  margin:0;
}

.footer-dev-name{
  display:inline-flex;
  align-items:center;
  gap:8px;
  font-size:15px;
  font-weight:700;
  color:#fff;
  background:rgba(34,181,97,0.1);
  border:2px solid rgba(34,181,97,0.25);
  padding:8px 20px;
  border-radius:12px;
  backdrop-filter:blur(12px);
  box-shadow:0 8px 24px rgba(34,181,97,0.2), inset 0 1px 0 rgba(255,255,255,0.1);
  transition:all .3s var(--ease);
  text-decoration:none;
  cursor:pointer;
}

.footer-dev-name:hover{
  background:rgba(34,181,97,0.18);
  border-color:rgba(34,181,97,0.4);
  transform:translateY(-3px);
  box-shadow:0 12px 32px rgba(34,181,97,0.3), inset 0 1px 0 rgba(255,255,255,0.15);
}

.footer-dev-name .dev-icon{
  font-size:16px;
  line-height:1;
}

.footer-dev-name .dev-text{
  color:#22B561;
  font-weight:800;
}

.footer-copyright{
  font-size:13px;
  color:rgba(255,255,255,0.5);
  font-weight:500;
  margin:4px 0 0;
}

.footer-links{
  display:flex;
  gap:20px;
  flex-wrap:wrap;
  justify-content:center;
}

.footer-link{
  font-size:13px;
  color:rgba(255,255,255,0.7);
  text-decoration:none;
  font-weight:600;
  transition:all .2s var(--ease);
  padding:4px 8px;
  border-radius:6px;
}

.footer-link:hover{
  color:var(--primary-400);
  background:rgba(255,255,255,0.06);
}

/* Decorative elements */
.footer-decoration{
  position:absolute;
  right:-60px;
  bottom:-60px;
  width:240px;
  height:240px;
  border:2px solid rgba(34,181,97,0.1);
  border-radius:50%;
  pointer-events:none;
  opacity:0.5;
  animation:pulse 8s ease-in-out infinite;
}

.footer-decoration::before{
  content:'';
  position:absolute;
  inset:30px;
  border:1.5px solid rgba(34,181,97,0.08);
  border-radius:50%;
}

.footer-decoration::after{
  content:'';
  position:absolute;
  inset:60px;
  border:1px solid rgba(34,181,97,0.05);
  border-radius:50%;
}

@keyframes pulse{
  0%, 100%{ opacity:0.3; transform:scale(1); }
  50%{ opacity:0.6; transform:scale(1.05); }
}

/* Responsive */
@media (max-width: 768px){
  footer{
    padding:36px 20px 20px;
    margin-top:48px;
  }

  .footer-content{
    grid-template-columns:1fr;
    gap:28px;
    padding-bottom:24px;
  }

  .footer-logo{
    font-size:24px;
  }

  .footer-tagline{
    font-size:13px;
  }

  .footer-version{
    flex-direction:column;
    gap:6px;
    padding:10px 16px;
  }

  .footer-version-separator{
    display:none;
  }

  .footer-dev-name{
    font-size:14px;
    padding:8px 18px;
  }

  .footer-decoration{
    width:160px;
    height:160px;
    right:-50px;
    bottom:-50px;
  }
}

@media (max-width: 640px){
  .footer-inner{
    gap:16px;
  }

  .footer-bottom{
    gap:16px;
  }
}
