*{margin:0;padding:0;box-sizing:border-box}
body{
  font-family:"Inter",sans-serif;
  min-height:100vh;
  display:flex;
  flex-wrap:nowrap;
  overflow:hidden;
  background: linear-gradient(270deg, #050505, #0b0f19, #121826);
  background-size: 600% 600%;
  animation: gradientBG 20s ease infinite;
}
@keyframes gradientBG{
  0%{background-position:0% 50%;}
  50%{background-position:100% 50%;}
  100%{background-position:0% 50%;}
}

/* TOP HEADER */
.top-header{
  position:fixed;
  top:0;
  left:270px;
  right:0;
  height:60px;
  background:rgba(20,20,30,.95);
  display:flex;
  align-items:center;
  gap:15px;
  padding:0 25px;
  z-index:100;
  border-bottom:1px solid rgba(255,255,255,.08);
  box-shadow:0 2px 12px rgba(0,0,0,.35);
}
.brand-name{
  color:#00e6b8;
  font-weight:700;
  font-size:18px;
}

/* SIDEBAR */
.sidebar{
  width:270px;
  background:linear-gradient(180deg,#0f121e,#121826);
  border-right:1px solid rgba(255,255,255,.08);
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  height:100vh; 
  position:fixed;
  left:0;
  top:0;
  background-size: 400% 400%;
  animation: gradientSidebar 25s ease infinite;
}
@keyframes gradientSidebar{
  0%{background-position:0% 50%;}
  50%{background-position:100% 50%;}
  100%{background-position:0% 50%;}
}
.sidebar-header{
  display:flex;
  align-items:center;
  gap:12px;
  padding:22px;
  border-bottom:1px solid rgba(255,255,255,.08);
}
.logo-circle{
  width:46px;
  height:46px;
  border-radius:14px;
  background:linear-gradient(135deg,#00e6b8,#00bfa5);
  color:#021818;
  display:flex;
  align-items:center;
  justify-content:center;
  font-weight:800;
}
.company-name{color:#00e6b8;font-weight:700}
.company-slogan{font-size:11px;color:#9fbcd4}

/* SIDEBAR MENU WITH GLOW */
.sidebar-menu{
  padding:18px;
  display:flex;
  flex-direction:column;
  gap:20px;
  flex:1; 
  overflow:auto;
}
.sidebar-menu a{
  display:flex;
  align-items:center;
  gap:16px;
  width:100%;        
  min-height:90px;   
  padding:20px 22px; 
  border-radius:16px;
  background:rgba(255,255,255,.03);
  border:1px solid rgba(255,255,255,.08);
  color:#9fbcd4;
  text-decoration:none;
  font-size:16px;
  font-weight:600;
  transition:all .35s ease, box-shadow .35s ease;
  box-shadow:0 6px 18px rgba(0,0,0,.25);
}
.sidebar-menu a i{
  width:24px;
  font-size:18px;
  transition: all .35s ease;
}
/* Neon Glow Hover */
.sidebar-menu a:hover,
.sidebar-menu a.active{
  background:linear-gradient(135deg,rgba(0,230,184,.22),rgba(0,191,165,.14));
  border-color:rgba(0,230,184,.55);
  color:#00e6b8;
  transform:translateY(-2px);
  box-shadow:
    0 0 8px rgba(0,230,184,.6),
    0 0 20px rgba(0,230,184,.5),
    0 0 30px rgba(0,230,184,.4),
    0 12px 30px rgba(0,230,184,.25);
}
.sidebar-menu a:hover i,
.sidebar-menu a.active i{
  text-shadow:
    0 0 8px rgba(0,230,184,.7),
    0 0 16px rgba(0,230,184,.5);
}

.sidebar-footer{
  padding:16px;
  text-align:center;
  font-size:12px;
  color:#9fbcd4;
  border-top:1px solid rgba(255,255,255,.08);
}

/* MAIN */
.main{
  margin-left:270px; 
  margin-top:60px;
  flex:1;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:flex-start;
  padding:40px;
  height:calc(100vh - 60px);
  overflow-y:auto; 
}

/* -------------------- FORM CARDS -------------------- */
.form-card{
  width:100%;
  max-width:520px;
  background:linear-gradient(135deg,rgba(20,20,30,.95),rgba(35,35,50,.95));
  border-radius:20px;
  padding:50px 40px;
  display:none;
  box-shadow:0 25px 70px rgba(0,0,0,.75);
  transition:all .3s ease;
}

.form-card.active{display:block}

/* FORM HEADER */
.form-header{
  text-align:center;
  margin-bottom:30px;
}
.form-logo{
  width:64px;
  height:64px;
  border-radius:16px;
  background:linear-gradient(135deg,#00e6b8,#00bfa5);
  display:inline-flex;
  align-items:center;
  justify-content:center;
  font-weight:800;
  color:#fff;  
  font-size:24px;
  margin-bottom:12px;
}
.form-header h2{
  color:#00e6b8;    
  font-size:22px;
  margin-bottom:6px;
}
.form-header p{
  color:#a5b0c0;    
  font-size:14px;
  margin-bottom:0;
}

.form-group{position:relative;margin-bottom:22px}
.form-group i{
  position:absolute;left:16px;top:50%;
  transform:translateY(-50%);
  color:#9fbcd4;
  font-size:16px;
}
.form-group input,
.form-group select{
  width:100%;
  padding:16px 14px 16px 48px; 
  border-radius:12px;
  border:1px solid rgba(255,255,255,.12);
  background:rgba(255,255,255,.05);
  color:#fff;
  font-size:16px;
  transition:all .3s ease;
}
.form-group input::placeholder{
  color:#a5b0c0;
}
.form-group input:focus,
.form-group select:focus{
  outline:none;
  border-color:#00e6b8;
  box-shadow:0 0 10px rgba(0,230,184,.35);
}
button{
  width:100%;
  padding:16px;
  border:none;
  border-radius:12px;
  background:linear-gradient(135deg,#00e6b8,#00bfa5);
  font-weight:700;
  cursor:pointer;
  margin-top:10px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  font-size:16px;
  transition:all .3s ease;
}
button:hover{
  transform:translateY(-2px);
  box-shadow:0 10px 25px rgba(0,230,184,.35);
}
.form-footer{
  margin-top:18px;
  text-align:center;
  font-size:13px;
  color:#9fbcd4;
}

/* MAIN FOOTER */
.main-footer{
  width:100%;
  margin-top:40px;
  display:flex;
  justify-content:space-between;
  padding:20px;
  background:rgba(20,20,30,.85);
  border-radius:16px;
  flex-wrap:wrap;
  color:#9fbcd4;
}
.footer-section h4{
  margin-bottom:6px;
  color:#00e6b8;
  font-size:14px;
}
.footer-section p{
  font-size:13px;
  line-height:1.4;
}

/* RESPONSIVE */
@media(max-width:900px){
  body{flex-direction:column;}
  .top-header{left:0;right:0;}
  .sidebar{width:100%;flex-direction:row;height:auto;position:relative;border-right:none;border-bottom:1px solid rgba(255,255,255,.08);}
  .sidebar-menu{flex-direction:row;flex-wrap:wrap;gap:12px;padding:10px;}
  .sidebar-menu a{flex:1 1 30%;min-height:70px;font-size:14px;padding:14px;justify-content:center;}
  .main{margin-left:0;margin-top:60px;width:100%;padding:20px;height:auto;}
  .form-card{max-width:100%;padding:30px;}
  .main-footer{flex-direction:column;gap:12px;}
}
