:root{
  --bg-1: #d2a2fc;         
  --bg-2: #fff0cfe6;         
  --surface: #ffffff;      
  --card-soft: #e8cbff;    
  --purple-200: #eabaff;
  --purple-300: #e0c2ff;
  --purple-400: #c695ff;
  --purple-500: #8f4bff;   
  --gold-300: #ffe395;
  --gold-400: #ffcc4c;
  --gold-500: #edb900;    
  --text: #000000;         
  --muted-text: #3b1f39;
  --glass-border: rgba(138, 80, 255, 0.254);
}

body{
  font-family: "Inter", system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial;
  background: linear-gradient(180deg, var(--bg-1) 0%, var(--bg-2) 60%);
  color: var(--text);
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
}
.navStyle{
  background: linear-gradient(180deg, var(--surface));
}

.profile-img{
  width: 180px;
  height: 180px;
  object-fit: cover;
  border-radius: 50%;
  border: 5px solid rgba(159,118,255,0.25);
  transition: transform .25s ease, box-shadow .25s ease;
  background: linear-gradient(180deg, var(--purple-200), rgba(223, 149, 255, 0.8));
}
.profile-img:hover{
  transform: translateY(-8px) rotate(-1deg);
  box-shadow: 0 18px 40px rgba(143,86,255,0.12);
}

.borderTop{
  border-top: 2px solid rgba(255, 200, 0, 0.525);
  padding-top: 2.5rem;
}

.badge-chip{
  display: inline-block;
  background: linear-gradient(90deg, rgba(255, 193, 8, 0.491), rgba(151, 66, 255, 0.559));
  padding: 6px 12px;
  border-radius: 999px;
  color: var(--text);
  border: 1px solid var(--glass-border);
  width: fit-content;
  font-weight: 600;
}

.subTitle{
  color: var(--muted-text);
}

.profile-card {
  background: linear-gradient(180deg, rgba(80, 40, 120, 0.85), rgba(40, 20, 60, 0.95));
  border-radius: 14px;
  display: inline-block;
  border: 1.5px solid rgba(159,118,255,0.18);
  padding: 14px;
  box-shadow: 0 4px 24px rgba(80,40,120,0.18);
}
.project-card{
  background: linear-gradient(180deg, var(--surface), var(--card-soft));
  border: 1px solid rgba(143,86,255,0.08);
  border-left: 6px solid rgba(143,86,255,0.14);
  border-radius: 14px;
  box-shadow: 0 10px 30px rgba(143,86,255,0.06);
  transition: transform .18s ease, box-shadow .18s ease;
  color: var(--text);
  padding: 0;
}
.project-card .card-body{ padding: 1.25rem; }
.project-card .card-title{
  color: var(--purple-500);
  font-weight: 700;
}
.project-card .card-text{ color: #4b3f4f; }
.project-card:hover{
  transform: translateY(-10px);
  box-shadow: 0 26px 60px rgba(143,86,255,0.14);
}

.repo-card{
  position: relative;
  background: linear-gradient(180deg, #fff, #fffaf6);
  border-radius: 12px;
  border: 1px solid rgba(212,176,75,0.08);
  color: var(--text);
  box-shadow: 0 12px 30px rgba(212,176,75,0.06);
  padding: 1rem;
  overflow: hidden;
}
.repo-card::before{
  content: "";
  position: absolute;
  left: 0; top: 0;
  width: 100%; height: 6px;
  background: linear-gradient(90deg, var(--gold-300), var(--gold-400));
  border-top-left-radius: 12px;
  border-top-right-radius: 12px;
}

.social-card{
  background: linear-gradient(90deg, rgba(255, 187, 0, 0.655), rgba(126, 57, 245, 0.678));
  border-radius: 12px;
  color: var(--text);
  padding: .8rem;
}

.icon-circle{
  width:56px;
  height:56px;
  border-radius:12px;
  background: linear-gradient(180deg,var(--purple-500),var(--purple-400));
  display:flex;
  align-items:center;
  justify-content:center;
  font-weight:700;
  color:#fff;
  box-shadow: 0 10px 26px rgba(143,86,255,0.15);
}
.icon-style{
  font-size: 2rem; 
  color: rgb(166, 0, 255);
}

.profile-card{
  background: linear-gradient(180deg, rgba(241,232,255,0.95), rgba(255,255,255,0.98));
  border-radius: 14px;
  display: inline-block;
  border: 1px solid rgba(159,118,255,0.08);
  padding: 14px;
}

.btn-accent{
  background: linear-gradient(90deg,var(--purple-400),var(--purple-500));
  color: #fff;
  border: none;
  box-shadow: 0 8px 18px rgba(143,86,255,0.12);
}
.btn-accent-outline{
  color: var(--purple-500);
  border: 1px solid rgba(143,86,255,0.12);
  background: rgba(255,255,255,0.6);
}

a.link-gold{
  color: var(--gold-500);
  font-weight: 600;
  text-decoration: none;
}
a.link-gold:hover{ text-decoration: underline; }

footer{
  background: transparent;
  color: var(--muted-text);
}
.linkEstetica{
  color: var(--text) !important;
  text-decoration: none;
}

section{ 
  color: var(--text); 
}

.card, .repo-card, .project-card, .social-card{
  color: var(--text);
}

/* Responsive */
@media (max-width: 767px){
  .profile-img{ width:140px; height:140px; }
  .display-6{ font-size: 1.6rem; }
}