/* WAVE DIVIDERS */
.wave-div{width:100%;overflow:hidden;line-height:0;margin:-1px 0}
.wave-div svg{display:block;width:100%;height:60px}
.wave-div svg path{fill:var(--bg)}
.wave-div.flip{transform:rotate(180deg)}

/* SOCIAL PROOF POPUP */
.social-proof{position:fixed;bottom:100px;left:32px;background:var(--bg2);border:1px solid rgba(255,255,255,.08);border-radius:14px;padding:14px 20px;display:flex;align-items:center;gap:12px;z-index:450;transform:translateX(-120%);transition:.5s;box-shadow:0 12px 40px rgba(0,0,0,.4);max-width:300px}
.social-proof.show{transform:translateX(0)}
.social-proof .sp-avatar{width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.9rem;color:#fff;flex-shrink:0}
.social-proof .sp-text{font-size:.82rem;color:var(--muted);line-height:1.4}
.social-proof .sp-text strong{color:var(--text);font-weight:600}
.social-proof .sp-time{font-size:.7rem;color:var(--accent2);margin-top:2px}
.social-proof .sp-close{position:absolute;top:6px;right:10px;background:none;border:none;color:var(--muted);cursor:pointer;font-size:.8rem}

/* CODE TERMINAL */
.terminal{background:#0d1117;border:1px solid rgba(255,255,255,.08);border-radius:16px;overflow:hidden;max-width:700px;margin:32px auto 0}
.terminal-bar{display:flex;align-items:center;gap:8px;padding:12px 16px;background:rgba(255,255,255,.03);border-bottom:1px solid rgba(255,255,255,.06)}
.terminal-dot{width:12px;height:12px;border-radius:50%}
.terminal-dot.r{background:#ff5f57}.terminal-dot.y{background:#febc2e}.terminal-dot.g{background:#28c840}
.terminal-bar span{margin-left:8px;font-size:.75rem;color:var(--muted);font-family:monospace}
.terminal-body{padding:20px;font-family:'Courier New',monospace;font-size:.85rem;color:#8b949e;min-height:180px;line-height:1.8}
.terminal-body .line{opacity:0;animation:termLine .3s ease forwards}
.terminal-body .cmd{color:#58a6ff}
.terminal-body .str{color:#a5d6ff}
.terminal-body .success{color:#3fb950}
.terminal-body .accent{color:#d2a8ff}
@keyframes termLine{to{opacity:1}}

/* COUNTDOWN */
.countdown-section{text-align:center;padding:48px 24px;background:linear-gradient(135deg,rgba(123,47,255,.06),rgba(0,212,255,.06));border-top:1px solid rgba(255,255,255,.04);border-bottom:1px solid rgba(255,255,255,.04)}
.countdown-label{font-size:.85rem;color:var(--accent2);font-weight:600;margin-bottom:8px;text-transform:uppercase;letter-spacing:2px}
.countdown-title{font-size:1.4rem;font-weight:700;margin-bottom:24px;font-family:'Space Grotesk',sans-serif}
.countdown-timer{display:flex;justify-content:center;gap:16px}
.cd-block{background:var(--card);border:1px solid rgba(255,255,255,.06);border-radius:12px;padding:16px 20px;min-width:70px}
.cd-block .cd-num{font-size:2rem;font-weight:900;font-family:'Space Grotesk',sans-serif;background:var(--g1);-webkit-background-clip:text;-webkit-text-fill-color:transparent}
.cd-block .cd-lbl{font-size:.65rem;text-transform:uppercase;color:var(--muted);letter-spacing:1px;margin-top:2px}

/* CLICK RIPPLE */
.click-ripple{position:fixed;width:20px;height:20px;border-radius:50%;background:rgba(123,47,255,.3);pointer-events:none;z-index:9996;animation:rippleOut .6s ease forwards}
@keyframes rippleOut{to{width:80px;height:80px;opacity:0;transform:translate(-50%,-50%)}}

/* GREETING BANNER */
.greeting{position:absolute;top:80px;left:50%;transform:translateX(-50%);padding:6px 18px;border-radius:50px;font-size:.78rem;color:var(--accent2);background:rgba(0,212,255,.06);border:1px solid rgba(0,212,255,.15);z-index:1;white-space:nowrap}

/* ANIMATED GRADIENT BORDERS */
.glow-border{position:relative}
.glow-border::after{content:'';position:absolute;inset:-2px;border-radius:18px;background:conic-gradient(from var(--angle,0deg),#7B2FFF,#00D4FF,#FF2FAA,#00FF88,#7B2FFF);z-index:-1;opacity:0;transition:opacity .4s;animation:rotateBorder 4s linear infinite}
.glow-border:hover::after{opacity:1}
@keyframes rotateBorder{to{--angle:360deg}}
@property --angle{syntax:'<angle>';initial-value:0deg;inherits:false}

/* VISITOR COUNTER */
.visitor-count{display:inline-flex;align-items:center;gap:6px;padding:4px 12px;border-radius:50px;font-size:.72rem;background:rgba(0,255,136,.08);border:1px solid rgba(0,255,136,.2);color:#00FF88;position:absolute;top:80px;right:48px;z-index:1}
.visitor-count .vc-dot{width:6px;height:6px;background:#00FF88;border-radius:50%;animation:pulse 2s infinite}

/* TEXT SCRAMBLE */
.scramble{display:inline-block;cursor:default}

/* KEYBOARD SHORTCUT HINTS */
.kbd-hint{position:fixed;bottom:32px;right:100px;font-size:.7rem;color:var(--muted);z-index:400;display:flex;gap:12px;opacity:.5}
.kbd-hint kbd{padding:2px 6px;border-radius:4px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1);font-family:monospace;font-size:.68rem}

/* PARALLAX SECTIONS */
.parallax-bg{position:relative;overflow:hidden}
.parallax-bg::before{content:'';position:absolute;inset:-20%;background:radial-gradient(ellipse at 30% 50%,rgba(123,47,255,.06),transparent 60%);transition:transform .1s}

/* TIMELINE */
.timeline{position:relative;max-width:600px;padding-left:32px}
.timeline::before{content:'';position:absolute;left:15px;top:0;bottom:0;width:2px;background:linear-gradient(to bottom,var(--accent),var(--accent2))}
.tl-item{position:relative;padding:0 0 32px 32px}
.tl-item::before{content:'';position:absolute;left:-24px;top:4px;width:12px;height:12px;border-radius:50%;background:var(--g1);border:2px solid var(--bg);z-index:1}
.tl-item h4{font-size:.95rem;font-weight:700;margin-bottom:2px}
.tl-item .tl-date{font-size:.75rem;color:var(--accent2);margin-bottom:6px}
.tl-item p{font-size:.85rem;color:var(--muted)}

/* TOOLTIP */
[data-tip]{position:relative;cursor:help}
[data-tip]:hover::after{content:attr(data-tip);position:absolute;bottom:calc(100% + 8px);left:50%;transform:translateX(-50%);padding:6px 12px;border-radius:8px;font-size:.75rem;background:var(--bg2);color:var(--text);border:1px solid rgba(255,255,255,.1);white-space:nowrap;z-index:999;animation:fadeUp .2s ease}

/* NOTIFICATION BADGE */
.notif-badge{position:relative}
.notif-badge::after{content:'3';position:absolute;top:-6px;right:-6px;width:18px;height:18px;border-radius:50%;background:var(--accent3);color:#fff;font-size:.65rem;font-weight:700;display:flex;align-items:center;justify-content:center;animation:pulse 2s infinite}

@media(max-width:768px){
  .social-proof{left:16px;right:16px;max-width:none}
  .countdown-timer{gap:8px}
  .cd-block{padding:12px;min-width:55px}
  .cd-block .cd-num{font-size:1.4rem}
  .terminal{margin:16px}
  .kbd-hint{display:none}
  .visitor-count{display:none}
  .greeting{font-size:.7rem}
}
