* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
  font-family: Arial, sans-serif;
}
html {
  scroll-behavior: smooth;
  scroll-padding-top: 70px;
  overflow:scroll;
}
.body{
  overflow: hidden;
  z-index: -1;
}

body {
  background: #ECEEDF;
  color: #000000;
}
section{
  scroll-margin-top:80px;
  margin-bottom: 9rem;
}

.FAB , .fab-menu{
  display: none;
}
/* Header */
header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 15px 50px;
  position: sticky;
  top: 0;
  z-index:1000;
  background-color: #ECEEDF;
}

header h1 {
  font-size: 24px;
  font-weight: bold;
}

nav ul {
  list-style: none;
  font-size: 20px;
  display: flex;
  gap: 25px;
}

nav ul li a {
  cursor: pointer;
  font-weight: 500;
  transition: all 0.3s;
  text-decoration: none;
  color: black;

}

nav ul li a:hover {
  color: #799EFF;
  filter: drop-shadow(0 0 12px #799EFF);

}


/* Main Section */
main {
  display: flex;
  position: relative;
  justify-content: space-between;
  align-items: center;
  padding: 80px 100px;
  margin-bottom: 8rem;
  overflow: hidden;
}

.text {
  max-width: 50%;
}

 h2{
  color: #799EFF;
  font-size: 40px;
  margin-bottom: 20px;

}


.text p {
  font-size: 18px;
  line-height: 1.6;
  margin-bottom: 30px;
}

.dc {
  display: inline-block;
  outline: none;
  padding: 12px 25px;
  background: #799EFF;
  color: #fff;
  text-decoration: none;
  border-radius: 25px;
  font-weight: bold;
  transition: all 0.5s;
}


.dc:hover {
  background: #628eff;
  filter: drop-shadow(0 0 12px #799EFF);

}

.profile-border {
  width: 300px;
  height: 300px;
  border: 3px solid #799EFF;
  border-radius: 50%;
  overflow: hidden; /* keeps image inside circle */
  filter: drop-shadow(0 0 12px #799EFF); /* glow ONLY on border */
}

.profile-border img {
  width: 100%;
  height: 100%;
  object-fit: cover; /* keeps proportions */
  filter: none; /* ensures no glow on image */
}



/* Social Icons */
.social {
  display: flex;
  position: absolute;
  justify-content: center;
  gap: 20px;
  margin-top: 40px;
}

/* Base social icons */
.social a {
width: 50px;             
height: 50px;             
display: flex;             
justify-content: center;
align-items: center;
font-size: 24px;          
border: 2px solid #799EFF;
border-radius: 50%;      
color: #799EFF;
transition: all 0.4s ease;
text-decoration: none;
}

/* Instagram */
.social a:nth-child(1):hover {
background: linear-gradient(115deg, #f9ce34, #ee2a7b, #6228d7);
color: #fff;
border: none;
transform: scale(1.2);
filter: drop-shadow(0 0 8px #ee2a7b);
}

/* LinkedIn */
.social a:nth-child(2):hover {
background: linear-gradient(135deg, #0077b5, #0a66c2);
color: #fff;
border: none;
transform: scale(1.2);
filter: drop-shadow(0 0 8px #0a66c2);
}

/* GitHub */
.social a:nth-child(3):hover {
background: linear-gradient(135deg, #333, #000);
color: #fff;
border: none;
transform: scale(1.2);
filter: drop-shadow(0 0 8px #000);
}

/* Facebook */
.social a:nth-child(4):hover {
background: linear-gradient(135deg, #1877F2, #0a58ca);
color: #fff;
border: none;
transform: scale(1.2);
filter: drop-shadow(0 0 8px #1877F2);
}

.LD-toggle{
    height: 10px;
    width: 10px;
}
.moon{
  transition: all 0.3s;
}
.moon:hover{
  color: #799EFF;
  transform:rotateZ(30deg);
}
.sun{
  display: none !important;
  transition: all 0.3s ;
}
/* About Section */
.about {
padding: 60px 20px;
background: initial;
overflow: hidden;
margin-bottom: 9rem;
}

.about-container {
display: flex;
align-items: center;
justify-content: center;
gap: 40px;
max-width: 1000px;
margin: auto;
flex-wrap: wrap; 
}

dotlottie-wc  {
margin-left: -115px;
}

.about-text {
flex: 1;
min-width: 280px;
}

.about-text h2 {
  color: #799EFF;
  font-size: 40px;
  margin-bottom: 20px; 
}

.about-text p {
font-size: 18px;
line-height: 1.6;
margin-bottom: 30px;
}
#section{
margin-bottom: 9rem;
}
.skill-cards{
display: flex;
flex-direction: row;
flex-wrap: wrap;
gap:1rem;
margin-left: 1rem;
margin-top: 2rem;
}
/* Skills Section */

#skills h2{
color: #799EFF;
font-size: 40px;
margin-bottom: 20px;
margin-left: 1rem;
}
.skills-rows {
display: flex;
flex-direction: column;
gap: 2rem; /* space between row 1 and row 2 */
margin-top: 2rem;
}

.skills-row {
display: flex;
justify-content: center;
gap: 2rem; /* space between cards in a row */
flex-wrap: wrap;
}

/* Skill Card */
.skill-card {
border: 2px solid #799EFF;
border-radius: 10px;
padding: 20px;
background: #fff;
width: 320px;   /* ✅ equal width */
min-height: 280px; /* ✅ ensures equal height */
text-align: center;
box-shadow: 0 4px 10px rgba(0,0,0,0.1);
}

.skill-card h3 {
margin-bottom: 15px;
font-size: 1.2rem;
color: #316AFB;
}

/* Skills inside a card */
.skills {
display: flex;
flex-wrap: wrap;
justify-content: center;
gap: 1rem;
}

/* Each Skill Box */
.skill {
height: 110px;
width: 110px;
background: #f0f4ff;
border: 2px solid #799EFF;
border-radius: 12px;
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
font-size: 0.85rem;
gap: 12px;
transition: all 0.3s ease;
}

.skill img {
width: 50px;   /* ✅ logo size */
height: 50px;
object-fit: contain;
}

.skill:hover {
background: #799EFF;
color: white;
transform: scale(1.05);
filter: drop-shadow(0 0 12px #799EFF);

}
/* Projects Section */
#projects {
margin-top:204px;
text-align: center;
}

#projects h2 {
color: #799EFF;
font-size: 40px;
margin-bottom: 40px;
}

.project-cards {
display: flex;
flex-wrap: wrap;
gap: 2rem;
margin-left:1rem;
}

.project-card {
width: 320px;
background: #fff;
border: 2px solid #799EFF;
border-radius: 12px;
box-shadow: 0 4px 12px rgba(0,0,0,0.1);
overflow: hidden;
transition: all 0.3s ease;
text-align: left;
}

.project-card img {
width: 100%;
height: 200px;
object-fit: cover;
border-bottom: 2px solid #799EFF;
}

.project-card h3 {
font-size: 20px;
margin: 15px;
color: #316AFB;
}

.project-card p {
font-size: 16px;
margin: 0 15px 20px;
line-height: 1.5;
color: #444;
}

.project-card:hover {
transform: scale(1.05);
filter: drop-shadow(0 0 12px #799EFF);
}
#contact {
padding: 60px 20px;
text-align: center;
background: transparent;
}



.contact-form {
max-width: 500px;
margin: auto;
display: flex;
flex-direction: column;
gap: 15px;
}

.contact-form input{
padding: 12px;
border: 2px solid #799EFF;
border-radius: 10px;
font-size: 1rem;
outline: none;
transition: 0.3s;
background-color:#ECEEDF;
}
.contact-form textarea {
display: block;
padding: 12px;
border: 2px solid #799EFF;
border-radius: 10px;
outline: none;
font-size: 1rem;
transition: 0.3s;
background-color:#ECEEDF;
}

.contact-form input:focus {
border-color: #799EFF;
box-shadow: 0 0 12px #799EFF;
}
.contact-form textarea:focus {
border-color: #799EFF;
box-shadow: 0 0 12px #799EFF;
}


.contact-form button {
background: #799EFF;
color: #fff;
border: none;
padding: 12px;
border-radius: 10px;
font-size: 1rem;
cursor: pointer;
transition: 0.3s;
}

.contact-form button:hover {
background: #799EFF;
filter: drop-shadow(0 0 12px #799EFF);
}
/* Floating Action Button */
.FAB {
  position: fixed;
  bottom: 20px;
  right: 20px;
  background: #799EFF;
  color: white;
  border-radius: 50%;
  width: 60px;
  height: 60px;
  justify-content: center;
  align-items: center;
  font-size: 28px;
  cursor: pointer;
  transition: transform 0.3s;
  z-index: 1100;
  box-shadow: 0 4px 10px rgba(0,0,0,0.3);
}


/* Expanding FAB menu */
.fab-menu {
  position: fixed;
  bottom: 90px;
  right: 30px;
  display: none;
  flex-direction: column;
  gap: 12px;
  z-index: 1099;
}

.fab-menu a {
  background: #fff;
  color: #333;
  padding: 10px 15px;
  border-radius: 20px;
  text-decoration: none;
  font-size: 14px;
  display: flex;
  align-items: center;
  gap: 8px;
  box-shadow: 0 3px 8px rgba(0,0,0,0.2);
  transition: all 0.3s ease;
}

.fab-menu a:hover {
  background: #799EFF;
  color: #fff;
  transform: translateX(-5px);
}
/* FAB Menu Toggle */
.fab-menu .LD-toggle-fab {
  display: flex;
  align-items: center;
  gap: 8px;
  background: #fff;
  color: #333;
  padding: 10px 15px;
  border-radius: 20px;
  font-size: 14px;
  box-shadow: 0 3px 8px rgba(0,0,0,0.2);
  cursor: pointer;
  transition: all 0.3s ease;
}

.fab-menu .LD-toggle-fab:hover {
  background: #799EFF; /* accent color */
  color: #fff;
  transform: translateX(-5px);
}




/* Rotate FAB when open */
.FAB.open {
  transform: rotate(90deg);
  background: #628eff;
}




/* DARK MODE CSS */



body.dark header{
  background: #0D1164;
}
body.dark .sun {
  display: block !important;
  color: #CACACA !important;
}
body.dark .sun:hover{
  color: initial;
}

body.dark .moon {
  display: none;
  
}
body.dark {
  background: #0D1164;
  color: #cacaca;
}
body.dark nav ul li a{
  color: #CACACA;
  transition: all 0.3s;

}

body.dark nav ul li a:hover {
  color: #B13BFF;
  filter: drop-shadow(0 0 12px #B13BFF);

}

body.dark  h2 {
  color: #B13BFF;
}

body.dark .dc {
  background: #B13BFF;
}
body.dark .dc:hover {
  background: #b54afd;
  filter: drop-shadow(0 0 12px #B13BFF);

}

body.dark .profile-border {
  border-color: #B13BFF;
  filter: drop-shadow(0 0 12px #B13BFF);
}

body.dark .profile img {
  width: 100%;
  height: 100%;
  object-fit: cover; /* keeps proportions and fills circle */
}

body.dark .social a {
  border-color: #B13BFF;
  color: #B13BFF;
}
body.dark nav ul .sun:hover{
    color: white;
}
body.dark .about-text h2 {
  color: #B13BFF;
}
body.dark #skills h2{
  color: #B13BFF;
  
}

body.dark .skill-card {
  border: 2px solid #B13BFF;
  
}
body.dark .skill-card h3 {
 
  color: #B13BFF;
}
body.dark .skill {

  background: #0D1164;
  border: 2px solid #B13BFF;
  
}
body.dark .skill-card {

  background:#292c5f;

  
}
body.dark .skill:hover {
  background: #B13BFF;
  filter: drop-shadow(0 0 12px #B13BFF);
  color: white;
  transform: scale(1.05);
}
body.dark .project-card {
  background: #292c5f;
  border: 2px solid #B13BFF;
}

body.dark #projects h2 {
  color: #B13BFF;
}

body.dark .project-card p {
  color: #ccc;
}

body.dark .project-card img {
  border-bottom: 2px solid #B13BFF;
}

body.dark .project-card:hover {
  filter: drop-shadow(0 0 12px #B13BFF);
}
body.dark  input {
border: 2px solid #B13BFF;
background-color: #CACACA;

}
body.dark .contact-form textarea {
border: 2px solid #B13BFF;
background-color: #CACACA;
}
body.dark .contact-form input:focus{
border-color: #B13BFF;
box-shadow: 0 0 12px #B13BFF;
}
body.dark .contact-form textarea:focus {
border-color: #B13BFF;
box-shadow: 0 0 12px #B13BFF;
}
body.dark .contact-form button {
background: #B13BFF;
}

body.dark .contact-form button:hover {
background: #B13BFF;
filter: drop-shadow(0 0 12px #B13BFF);
}
/* 🌙 Dark Mode Styles */
body.dark .FAB {
  background: #B13BFF; /* darker floating button */
  color: #fff;
}

body.dark .fab-menu a {
  background: #222;
  color: #eee;
  box-shadow: 0 3px 8px rgba(0,0,0,0.6);
}

body.dark .fab-menu a:hover {
  background: #B13BFF; /* keep accent color */
  color: #fff;
}
/* Dark Mode for FAB toggle */
body.dark .fab-menu .LD-toggle-fab {
  background: #222;
  color: #eee;
}

body.dark .fab-menu .LD-toggle-fab:hover {
  background: #B13BFF;
  color: #fff;
}



/* RESPONSIVE MOBILE */



@media (max-width:848px) {
p {
  font-size: large;
}
.LD-toggle{
  display: block;
}

header nav {
  display: block; /* hide navbar on mobile */
}
.social{
  position: absolute;
  top: 23rem;
}

.about-img {
  display: none; /* hide about image for compact view */
}

/* Skills container */
.skill-cards {
  flex-wrap: nowrap;        /* force horizontal scrolling */
  overflow-x: auto;         /* scrollable row */
  gap: 1rem;
  padding: 1rem 0;
  scroll-snap-type: x mandatory; /* smooth snap scrolling */
}

.skill-cards::-webkit-scrollbar {
  display: none; /* hide scrollbar for clean look */
}

/* Each skill-card */
.skill-card {
  flex: 0 0 280px;     /* fixed card width */
  min-height: 260px;   /* fixed card height */
  scroll-snap-align: start;
}

/* Inside skill-card */
.skills {
  display: grid; /* neat grid inside card */
  grid-template-columns: repeat(2, 1fr); /* 2 skills per row */
  gap: 1rem;
  justify-items: center;
  align-items: center;
}

/* Each skill box */
.skill {
  width: 100px;  
  height: 100px;
  font-size: 0.8rem;
  gap: 8px;
}

.skill img {
  width: 40px;
  height: 40px;
}
.skill-card h3{
  padding-bottom: 3px;
}
.project-cards{
  flex-wrap: nowrap;
  overflow: scroll;
}
  .project-cards {
    flex-wrap: nowrap;              /* keep cards in one row */
    overflow-x: auto;               /* allow horizontal scrolling */
    gap: 1rem;
    padding: 1rem 0;
    scroll-snap-type: x mandatory;  /* smooth snap effect */
  }

  .project-cards::-webkit-scrollbar {
    display: none; /* hide scrollbar */
  }

  .project-card {
    flex: 0 0 280px;          /* fixed card width */
    min-height: 320px;        /* fixed card height */
    scroll-snap-align: start; /* snap each card */
  }

  .project-card img {
    height: 160px;            /* reduce image height for mobile */
    object-fit: cover;
  }


}
@media (max-width: 764px) {
  .profile {
    display: none;
  }
  header ul{
    display: none;
  }
  .FAB{
    display: flex;
  }
  header{
    padding-bottom: 2rem;

  }

  main {
    padding: 20px;
    flex-direction: column; /* stack content vertically */
    align-items: flex-start; /* align text to left */
  }

  .text {
    width: 100%;
    max-width: 100%; /* ensure full width */
    margin: 10px;
    padding-top: 30px;
  }

  .social {
    position: static;   /* remove absolute positioning */
    padding-top: 20px;   /* spacing below text */
    justify-content: flex-start; /* align with text */
  }
}
