diff --git a/src/App.css b/src/App.css index f90339d..4a91218 100644 --- a/src/App.css +++ b/src/App.css @@ -136,6 +136,89 @@ } } + /* NAVBAR BASE */ +.navbar { + position: sticky; + top: 0; + z-index: 1000; + + display: flex; + justify-content: space-between; + align-items: center; + + padding: 14px 40px; + + /* Glassmorphism effect */ + background: rgba(255, 255, 255, 0.65); + backdrop-filter: blur(12px); + -webkit-backdrop-filter: blur(12px); + + border-bottom: 1px solid rgba(0, 0, 0, 0.06); + transition: all 0.3s ease; +} + +/* LOGO */ +.logo { + font-size: 20px; + font-weight: 600; + letter-spacing: 0.5px; +} + +/* MENU */ +.menu { + display: flex; + list-style: none; + gap: 36px; /* better spacing */ +} + +/* LINKS */ +.menu li a { + position: relative; + text-decoration: none; + color: #333; + font-size: 15px; + font-weight: 500; + + display: flex; + align-items: center; + gap: 6px; + + transition: all 0.25s ease; +} + +/* HOVER EFFECT (smooth slide underline) */ +.menu li a::after { + content: ""; + position: absolute; + bottom: -6px; + left: 50%; + width: 0%; + height: 2px; + background: #6366f1; + transition: all 0.3s ease; + transform: translateX(-50%); +} + +.menu li a:hover { + color: #6366f1; +} + +.menu li a:hover::after { + width: 100%; +} + +/* SUBTLE ICON STYLE (for dropdown icons) */ +.menu li a svg { + opacity: 0.6; + transition: transform 0.3s ease; +} + +/* ICON ANIMATION ON HOVER */ +.menu li a:hover svg { + transform: translateY(2px); + opacity: 1; +} + @media (max-width: 1024px) { margin-top: 20px; flex-wrap: wrap; diff --git a/src/components/layout/Navbar.jsx b/src/components/layout/Navbar.jsx index 63e014a..1d9a8a1 100644 --- a/src/components/layout/Navbar.jsx +++ b/src/components/layout/Navbar.jsx @@ -1,3 +1,4 @@ + import React, { useState, useRef, useEffect } from "react"; import { Link, useLocation } from "react-router-dom"; import { FileText, Menu, X, LogOut, Crown, Copy, Check, Star, ChevronDown } from "lucide-react"; @@ -35,7 +36,7 @@ function WalletMenu({ address, isPremium }) {
@@ -104,7 +100,8 @@ function WalletMenu({ address, isPremium }) { ); } -// Edit Dropdown Component +/* ===== ALL DROPDOWNS FULLY INCLUDED ===== */ + function EditDropdown() { const [isOpen, setIsOpen] = useState(false); const [locked, setLocked] = useState(false); @@ -138,6 +135,8 @@ function EditDropdown() { ]; return ( +
setIsOpen(true)} onMouseLeave={() => setIsOpen(false)}> + {isOpen && ( + +
+ {tools.map((tool) => ( + setIsOpen(true)} onMouseLeave={() => setIsOpen(false)}> + {isOpen && ( + +
+ {tools.map((tool) => ( + setIsOpen(true)} onMouseLeave={() => setIsOpen(false)}> + {isOpen && ( + +
+ {tools.map((tool) => ( + setIsOpen(true)} onMouseLeave={() => setIsOpen(false)}> + {isOpen && ( + +
+ {tools.map((tool) => ( + ); -} \ No newline at end of file +} +