/* ── LAYOUT ── */
.not-logged {
  position:relative; z-index:10;
  min-height:100vh; display:flex; align-items:center; justify-content:center;
  padding-top:70px;
}
.profile-layout {
  position:relative; z-index:10;
  display:grid; grid-template-columns:280px 1fr;
  min-height:calc(100vh - 70px);
  margin-top:70px;
}

/* ── SIDEBAR ── */
.profile-sidebar {
  background:rgba(12,12,18,.7);
  border-right:1px solid rgba(255,255,255,.06);
  padding:40px 28px;
  display:flex; flex-direction:column; align-items:center;
  backdrop-filter:blur(10px);
  position:sticky; top:70px; height:calc(100vh - 70px); overflow-y:auto;
}
.profile-avatar-wrap { position:relative; margin-bottom:16px; }
.profile-avatar {
  width:90px; height:90px; border-radius:50%;
  background:linear-gradient(135deg,var(--c1),var(--c2));
  display:flex; align-items:center; justify-content:center;
  font-size:32px; font-weight:700;
  overflow:hidden; position:relative; z-index:1;
}
.profile-avatar-ring {
  position:absolute; inset:-4px; border-radius:50%;
  background:var(--grad); background-size:300% 100%;
  animation:gradShift 4s linear infinite;
  z-index:0; opacity:.6;
  mask:radial-gradient(transparent 42px, black 43px);
  -webkit-mask:radial-gradient(transparent 42px, black 43px);
}
.profile-username { font-size:16px; font-weight:700; letter-spacing:2px; margin-bottom:4px; }
.profile-discordtag { font-family:'Rajdhani',sans-serif; font-size:12px; color:rgba(255,255,255,.4); letter-spacing:2px; margin-bottom:14px; }

.profile-status-badge {
  display:flex; align-items:center; gap:8px;
  padding:6px 16px; border-radius:20px;
  background:rgba(255,255,255,.05); border:1px solid rgba(255,255,255,.1);
  font-size:10px; letter-spacing:2px; text-transform:uppercase; color:rgba(255,255,255,.5);
  margin-bottom:24px;
}
.status-dot-pending   { width:7px; height:7px; border-radius:50%; background:var(--c4);  box-shadow:0 0 6px var(--c4);  animation:blink 2s infinite; }
.status-dot-interview { width:7px; height:7px; border-radius:50%; background:#5b82ff;    box-shadow:0 0 6px #5b82ff;    animation:blink 2s infinite; }
.status-dot-accepted  { width:7px; height:7px; border-radius:50%; background:#00ff88;    box-shadow:0 0 6px #00ff88; }
.status-dot-refused   { width:7px; height:7px; border-radius:50%; background:var(--c3);  box-shadow:0 0 6px var(--c3); }
@keyframes blink { 0%,100%{opacity:1} 50%{opacity:.3} }

.sidebar-divider { width:100%; height:1px; background:rgba(255,255,255,.07); margin:16px 0; }

.profile-nav { width:100%; display:flex; flex-direction:column; gap:4px; }
.profile-nav-item {
  width:100%; text-align:left; padding:11px 16px; border-radius:8px; border:none; cursor:pointer;
  font-family:'Rajdhani',sans-serif; font-size:13px; font-weight:600; letter-spacing:2px; text-transform:uppercase;
  color:rgba(255,255,255,.45); background:transparent; transition:all .2s;
}
.profile-nav-item:hover { color:white; background:rgba(255,255,255,.06); }
.profile-nav-item.active { color:var(--c1); background:rgba(75,214,255,.08); border-left:2px solid var(--c1); }

/* ── MAIN ── */
.profile-main { padding:40px 48px; overflow-y:auto; }
.tab-content { display:none; animation:fadeIn .4s ease both; }
.tab-content.active { display:block; }
.tab-title { font-size:22px; font-weight:900; letter-spacing:3px; margin-bottom:28px; }

/* ── OVERVIEW ── */
.overview-cards { display:grid; grid-template-columns:repeat(4,1fr); gap:16px; margin-bottom:28px; }
.ov-card {
  background:rgba(20,20,30,.6); border:1px solid rgba(255,255,255,.07);
  border-radius:12px; padding:22px;
  transition:border-color .3s, box-shadow .3s;
}
.ov-card:hover { border-color:rgba(75,214,255,.2); box-shadow:0 0 18px rgba(75,214,255,.08); }
.ov-icon { font-size:22px; margin-bottom:10px; }
.ov-label { font-family:'Rajdhani',sans-serif; font-size:10px; letter-spacing:3px; text-transform:uppercase; color:rgba(255,255,255,.3); margin-bottom:5px; }
.ov-value { font-size:14px; font-weight:700; letter-spacing:1px; color:white; }

/* ── TIMELINE ── */
.timeline-box { background:rgba(20,20,30,.5); border:1px solid rgba(255,255,255,.07); border-radius:14px; padding:28px 32px; }
.timeline-title { font-size:12px; letter-spacing:3px; text-transform:uppercase; color:rgba(255,255,255,.4); margin-bottom:24px; }
.timeline { display:flex; flex-direction:column; }
.tl-item { display:flex; gap:16px; padding-bottom:24px; position:relative; }
.tl-item:last-child { padding-bottom:0; }
.tl-item::before { content:''; position:absolute; left:11px; top:24px; bottom:0; width:1px; background:rgba(255,255,255,.08); }
.tl-item:last-child::before { display:none; }
.tl-dot { width:24px; height:24px; border-radius:50%; flex-shrink:0; background:rgba(255,255,255,.06); border:1px solid rgba(255,255,255,.12); margin-top:2px; transition:all .3s; }
.tl-item.done .tl-dot { background:linear-gradient(135deg,var(--c1),var(--c2)); border-color:transparent; box-shadow:0 0 10px rgba(75,214,255,.3); }
.tl-label { font-size:13px; font-weight:600; letter-spacing:1px; margin-bottom:3px; color:rgba(255,255,255,.7); }
.tl-item.done .tl-label { color:white; }
.tl-sub { font-family:'Rajdhani',sans-serif; font-size:12px; color:rgba(255,255,255,.35); letter-spacing:1px; }

/* ── RP PROFILE BOX ── */
.rp-profile-box { background:rgba(20,20,30,.5); border:1px solid rgba(255,255,255,.07); border-radius:14px; padding:32px; min-height:200px; }

/* ── RECAP ITEMS ── */
.recap-item { background:rgba(255,255,255,.03); border:1px solid rgba(255,255,255,.06); border-radius:10px; padding:14px 16px; }
.recap-label { font-size:9px; letter-spacing:3px; text-transform:uppercase; color:rgba(255,255,255,.3); margin-bottom:6px; }
.recap-value { font-family:'Rajdhani',sans-serif; font-size:14px; color:rgba(255,255,255,.8); letter-spacing:1px; line-height:1.5; }

/* ── SETTINGS ── */
.settings-section { padding:4px 0; }
.settings-label { font-size:10px; letter-spacing:4px; text-transform:uppercase; color:rgba(255,255,255,.3); margin-bottom:16px; }
.settings-label.danger { color:rgba(255,100,100,.5); }
.settings-row { display:flex; align-items:center; justify-content:space-between; }
.settings-divider { height:1px; background:rgba(255,255,255,.06); margin:20px 0; }
.toggle-row { display:flex; align-items:center; justify-content:space-between; cursor:pointer; font-family:'Rajdhani',sans-serif; font-size:14px; color:rgba(255,255,255,.6); letter-spacing:1px; }
.badge-connected { padding:4px 12px; border-radius:20px; background:rgba(0,255,136,.1); border:1px solid rgba(0,255,136,.25); font-size:10px; letter-spacing:2px; color:#00ff88; }
.btn-danger { padding:10px 24px; border-radius:8px; border:1px solid rgba(255,80,80,.3); background:rgba(255,80,80,.08); color:rgba(255,120,120,.8); cursor:pointer; font-family:'Orbitron',sans-serif; font-size:10px; letter-spacing:2px; text-transform:uppercase; transition:all .2s; }
.btn-danger:hover { background:rgba(255,80,80,.15); color:#ff6060; }

@keyframes fadeIn { from{opacity:0;transform:translateY(8px)} to{opacity:1;transform:translateY(0)} }
