    * {
      font-family: 'Inter', sans-serif;
    }

    body {
      background: #020617;
      color: white;
      overflow-x: hidden;
      transition: background 0.3s ease, color 0.3s ease;
    }

    body.light-mode {
      background: #f8fafc;
      color: #0f172a;
    }

    body.light-mode h1,
    body.light-mode h2,
    body.light-mode h3,
    body.light-mode h4,
    body.light-mode h5,
    body.light-mode p,
    body.light-mode span,
    body.light-mode a,
    body.light-mode li,
    body.light-mode label {
      color: #0f172a !important;
    }

    body.light-mode .glass {
      background: rgba(255, 255, 255, 0.88);
      border: 1px solid rgba(15, 23, 42, 0.08);
    }

    body.light-mode input,
    body.light-mode textarea {
      background: white !important;
      color: #0f172a !important;
    }

    body.light-mode .hero-bg {
      background:
        radial-gradient(circle at top left,
          rgba(59, 130, 246, 0.15),
          transparent 30%),
        radial-gradient(circle at top right,
          rgba(236, 72, 153, 0.15),
          transparent 25%),
        #f8fafc;
    }

    body.light-mode footer {
      background: rgba(255, 255, 255, 0.7);
    }

    .glass {
      backdrop-filter: blur(18px);
      background: rgba(255, 255, 255, 0.05);
      border: 1px solid rgba(255, 255, 255, 0.08);
    }

    .hero-bg {
      background:
        radial-gradient(circle at top left,
          rgba(99, 102, 241, 0.35),
          transparent 30%),
        radial-gradient(circle at top right,
          rgba(236, 72, 153, 0.3),
          transparent 25%),
        radial-gradient(circle at bottom,
          rgba(59, 130, 246, 0.35),
          transparent 30%),
        #020617;
    }

    .gradient-text {
      background:
        linear-gradient(to right,
          #38bdf8,
          #8b5cf6,
          #ec4899);

      -webkit-background-clip: text;
      -webkit-text-fill-color: transparent;
    }

    .rainbow {
      background-image:
        linear-gradient(45deg,
          #06b6d4,
          #8b5cf6,
          #ec4899,
          #22c55e);

      background-size: 300% 300%;
      animation: rainbow 8s infinite;
    }

    @keyframes rainbow {
      0% {
        background-position: 0% 50%;
      }

      50% {
        background-position: 100% 50%;
      }

      100% {
        background-position: 0% 50%;
      }
    }

    .project-card,
    .skill-card,
    .experience-card,
    .cert-card {
      transition: all 0.35s ease;
    }

    .project-card:hover,
    .skill-card:hover,
    .experience-card:hover,
    .cert-card:hover {
      transform: translateY(-8px);
      box-shadow: 0 0 35px rgba(6, 182, 212, 0.25);
    }

    .badge {
      padding: 6px 14px;
      border-radius: 999px;
      background: rgba(6, 182, 212, 0.15);
      font-size: 14px;
    }

    .project-btn {
      flex: 1;
      height: 52px;
      display: flex;
      align-items: center;
      justify-content: center;
      border-radius: 14px;
      font-weight: 700;
      transition: 0.3s;
    }

    .project-btn:hover {
      transform: scale(1.03);
      box-shadow: 0 0 25px rgba(6, 182, 212, 0.35);
    }

    .smoke {
      position: absolute;
      width: 350px;
      height: 350px;
      border-radius: 50%;
      filter: blur(100px);
      opacity: 0.25;
      animation: float 8s infinite ease-in-out;
    }

    @keyframes float {

      0%,
      100% {
        transform: translateY(0px);
      }

      50% {
        transform: translateY(-40px);
      }
    }

    /* Advanced Profile Photo Glow Effects */
    .avatar-glow-container {
      position: relative;
      display: inline-block;
    }

    .avatar-glow-ring-1 {
      position: absolute;
      width: 480px;
      height: 480px;
      border-radius: 50%;
      border: 2px solid rgba(6, 182, 212, 0.3);
      top: 50%;
      left: 50%;
      transform: translate(-50%, -50%);
      animation: glowRing1 4s linear infinite;
    }

    .avatar-glow-ring-2 {
      position: absolute;
      width: 540px;
      height: 540px;
      border-radius: 50%;
      border: 2px solid rgba(139, 92, 246, 0.2);
      top: 50%;
      left: 50%;
      transform: translate(-50%, -50%);
      animation: glowRing2 6s linear infinite reverse;
    }

    .avatar-glow-ring-3 {
      position: absolute;
      width: 600px;
      height: 600px;
      border-radius: 50%;
      border: 1px solid rgba(236, 72, 153, 0.15);
      top: 50%;
      left: 50%;
      transform: translate(-50%, -50%);
      animation: glowRing3 8s linear infinite;
    }

    @keyframes glowRing1 {
      from { transform: translate(-50%, -50%) rotate(0deg); }
      to { transform: translate(-50%, -50%) rotate(360deg); }
    }

    @keyframes glowRing2 {
      from { transform: translate(-50%, -50%) rotate(0deg); }
      to { transform: translate(-50%, -50%) rotate(-360deg); }
    }

    @keyframes glowRing3 {
      from { transform: translate(-50%, -50%) rotate(0deg) scale(1); }
      to { transform: translate(-50%, -50%) rotate(360deg) scale(1.05); }
    }

    .avatar-inner-glow {
      position: absolute;
      width: 420px;
      height: 420px;
      border-radius: 50%;
      background: radial-gradient(circle at 30% 30%,
        rgba(6, 182, 212, 0.4),
        rgba(139, 92, 246, 0.2),
        transparent 60%);
      top: 50%;
      left: 50%;
      transform: translate(-50%, -50%);
      filter: blur(40px);
      animation: innerGlow 4s ease-in-out infinite;
    }

    @keyframes innerGlow {
      0%, 100% { opacity: 0.5; }
      50% { opacity: 0.9; }
    }

    /* Coding Style Animations */
    .floating-code {
      position: absolute;
      font-family: 'Courier New', monospace;
      font-size: 13px;
      color: rgba(6, 182, 212, 0.7);
      white-space: nowrap;
      pointer-events: none;
      text-shadow: 0 0 15px rgba(6, 182, 212, 0.5);
      animation: floatingCode 8s ease-in-out infinite;
    }

    @keyframes floatingCode {
      0%, 100% {
        transform: translateY(0px) translateX(0px) scale(0.8);
        opacity: 0;
      }
      50% {
        opacity: 1;
      }
      100% {
        transform: translateY(-80px) translateX(40px) scale(1);
        opacity: 0;
      }
    }

    .code-snippet-1 { animation-delay: 0s; top: 60%; left: 10%; }
    .code-snippet-2 { animation-delay: 1.5s; top: 20%; right: 5%; }
    .code-snippet-3 { animation-delay: 3s; bottom: 25%; right: 10%; }

    /* AI Matrix Effect */
    .matrix-bg {
      position: fixed;
      top: 0;
      left: 0;
      width: 100%;
      height: 100vh;
      pointer-events: none;
      z-index: 0;
      opacity: 0.03;
    }

    /* Pulse Glow on Profile */
    .avatar-pulse-glow {
      position: absolute;
      width: 440px;
      height: 440px;
      border-radius: 50%;
      background: radial-gradient(circle,
        rgba(6, 182, 212, 0.3) 0%,
        transparent 70%);
      top: 50%;
      left: 50%;
      transform: translate(-50%, -50%);
      filter: blur(60px);
      animation: pulseMegaGlow 2.5s ease-in-out infinite;
    }

    @keyframes pulseMegaGlow {
      0%, 100% { 
        transform: translate(-50%, -50%) scale(1);
        opacity: 0.4;
      }
      50% { 
        transform: translate(-50%, -50%) scale(1.2);
        opacity: 0.8;
      }
    }

    /* Tech Stats Animation */
    .tech-stat {
      position: absolute;
      font-size: 11px;
      font-weight: 600;
      color: rgba(139, 92, 246, 0.8);
      background: rgba(139, 92, 246, 0.1);
      padding: 4px 8px;
      border-radius: 4px;
      border-left: 2px solid rgba(139, 92, 246, 0.5);
      white-space: nowrap;
      animation: statFloat 6s ease-in-out infinite;
      pointer-events: none;
    }

    @keyframes statFloat {
      0%, 100% { transform: translateY(0px); opacity: 0; }
      50% { opacity: 0.8; }
      100% { transform: translateY(-60px); opacity: 0; }
    }

    .stat-ai { animation-delay: 0s; top: 80%; left: 15%; }
    .stat-ml { animation-delay: 1.5s; top: 70%; right: 20%; }
    .stat-cloud { animation-delay: 3s; bottom: 20%; left: 10%; }

    /* Card Glow on Hover */
    .card-with-glow {
      position: relative;
      transition: all 0.3s ease;
    }

    .card-with-glow:hover {
      box-shadow: 0 0 40px rgba(6, 182, 212, 0.4),
                  inset 0 0 20px rgba(6, 182, 212, 0.1);
    }

    /* Code Typing Animation */
    .code-type {
      display: inline-block;
      color: #06b6d4;
      font-family: 'Courier New', monospace;
      font-weight: bold;
    }

    /* AI Particle Effect */
    .ai-particle {
      position: absolute;
      width: 4px;
      height: 4px;
      border-radius: 50%;
      background: rgba(6, 182, 212, 0.6);
      pointer-events: none;
      box-shadow: 0 0 8px rgba(6, 182, 212, 0.8);
      animation: particleMove 8s ease-in-out infinite;
    }

    @keyframes particleMove {
      0% { transform: translate(0, 0) scale(1); opacity: 0; }
      10% { opacity: 1; }
      90% { opacity: 1; }
      100% { transform: translate(var(--tx), var(--ty)) scale(0); opacity: 0; }
    }

    .progress-bar {
      height: 14px;
      border-radius: 999px;
      overflow: hidden;
      background: rgba(255, 255, 255, 0.08);
    }

    .progress-fill {
      height: 100%;
      border-radius: 999px;
    }

    .valid {
      border: 2px solid #22c55e !important;
    }

    .invalid {
      border: 2px solid #ef4444 !important;
    }

    #cursor {
      position: fixed;
      width: 20px;
      height: 20px;
      border-radius: 50%;
      background:
        linear-gradient(45deg,
          #06b6d4,
          #8b5cf6,
          #ec4899);

      pointer-events: none;
      z-index: 99999;
      transform: translate(-50%, -50%);
      box-shadow: 0 0 30px rgba(255, 255, 255, 0.8);
    }

    #scrollTopBtn {
      position: fixed;
      bottom: 25px;
      right: 25px;
      width: 58px;
      height: 58px;
      border-radius: 50%;
      z-index: 999;
      display: none;
      align-items: center;
      justify-content: center;
      font-size: 22px;
      cursor: pointer;
    }

    .mobile-nav {
      max-height: 0;
      overflow: hidden;
      transition: max-height 0.35s ease;
    }

    .mobile-nav.open {
      max-height: 500px;
    }

    .timeline-line {
      position: absolute;
      left: 14px;
      top: 0;
      width: 2px;
      height: 100%;
      background: rgba(255, 255, 255, 0.1);
    }

    .timeline-dot {
      width: 30px;
      height: 30px;
      border-radius: 999px;
      background: linear-gradient(45deg, #06b6d4, #8b5cf6);
      display: flex;
      align-items: center;
      justify-content: center;
      z-index: 2;
      position: relative;
      flex-shrink: 0;
    }

    .full-modal-content {
      text-align: left;
      padding: 30px 0;
      line-height: 2;
    }

    ::-webkit-scrollbar {
      width: 10px;
    }

    ::-webkit-scrollbar-thumb {
      background: linear-gradient(#06b6d4, #8b5cf6);
      border-radius: 999px;
    }

    @media(max-width:768px) {
      #cursor {
        display: none;
      }
    }

    /* skills */
    /* OUTER AREA */
.skills-marquee {
  width: 100%;
  overflow: hidden;
  position: relative;

  /* IMPORTANT SPACE FOR HOVER */
  padding: 35px 20px;
}

/* MOVING TRACK */
.skills-track {
  display: flex;
  align-items: center;
  gap: 35px;
  width: max-content;

  animation: scrollSkills 30s linear infinite;
}

/* STOP ON HOVER */
.skills-marquee:hover .skills-track {
  animation-play-state: paused;
}

/* CARD */
.skill-card {
  position: relative;

  min-width: 260px;

  background: rgba(255,255,255,0.05);
  border: 1px solid rgba(255,255,255,0.08);

  backdrop-filter: blur(14px);

  transition: all 0.5s ease;

  cursor: pointer;

  overflow: hidden;

  z-index: 2;
}

/* HOVER EFFECT */
.skill-card:hover {

  transform:
    translateY(-18px)
    scale(1.06);

  box-shadow:
    0 25px 50px rgba(0,255,255,0.18),
    0 0 35px rgba(168,85,247,0.25),
    0 0 60px rgba(236,72,153,0.18);

  z-index: 50;
}

/* ICON ANIMATION */
.skill-card i {
  transition: all 0.5s ease;
}

.skill-card:hover i {
  transform: scale(1.2) rotate(8deg);
}

/* GLOW BORDER */
.skill-card::before {

  content: "";

  position: absolute;

  inset: 0;

  border-radius: 24px;

  padding: 1px;

  background: linear-gradient(
    45deg,
    #06b6d4,
    #8b5cf6,
    #ec4899,
    #06b6d4
  );

  -webkit-mask:
    linear-gradient(#fff 0 0) content-box,
    linear-gradient(#fff 0 0);

  -webkit-mask-composite: xor;
  mask-composite: exclude;

  opacity: 0;

  transition: 0.5s;
}

.skill-card:hover::before {
  opacity: 1;
}

/* SCROLL ANIMATION */
@keyframes scrollSkills {

  0% {
    transform: translateX(0);
  }

  100% {
    transform: translateX(-50%);
  }

}

/* MOBILE */
@media (max-width: 768px) {

  .skills-marquee {
    padding: 25px 10px;
  }

  .skill-card {
    min-width: 210px;
  }

  .skills-track {
    gap: 20px;
    animation-duration: 22s;
  }

}

/* project filter */
.filter-btn {
  padding: 10px 20px;
  border-radius: 999px;
  background: rgba(255,255,255,0.1);
  color: white;
  transition: 0.3s;
}

.filter-btn:hover {
  transform: scale(1.05);
}

.filter-btn.active {
  background: #22d3ee;
  color: black;
  font-weight: bold;
}