/* Top Navigation Bar */ .navbar { position: relative; top: 0; left: 0; width: 100%; height: 60px; background-color: var(--bg-glass); backdrop-filter: blur(16px); -webkit-backdrop-filter: blur(16px); display: flex; justify-content: space-between; align-items: center; padding: 0 24px; z-index: 1000; box-shadow: var(--shadow-sm); border-bottom: 1px solid var(--border); flex-shrink: 0; transition: var(--transition); } .brand { font-weight: 700; font-size: 1.25rem; color: var(--text-main); text-decoration: none; flex: 1; display: flex; justify-content: flex-start; align-items: center; transition: var(--transition); } .brand img { transition: var(--transition); } .brand:hover img { transform: scale(1.03); } .nav-links { flex: 1; display: flex; justify-content: flex-end; align-items: center; gap: 20px; } .nav-links a { text-decoration: none; color: var(--text-muted); font-size: 0.9rem; font-weight: 500; transition: var(--transition); white-space: nowrap; position: relative; padding: 6px 0; } .nav-links a:hover { color: var(--primary); } .nav-links a::after { content: ''; position: absolute; bottom: 0; left: 0; width: 100%; height: 2px; background: var(--primary); transform: scaleX(0); transform-origin: right; transition: transform 0.25s ease; } .nav-links a:hover::after { transform: scaleX(1); transform-origin: left; } /* Search Bar in Navbar */ .nav-search { flex: 0 1 420px; margin: 0 20px; display: flex; justify-content: center; } .nav-search form { display: flex; width: 100%; background: var(--bg-card); border: 1px solid var(--border); border-radius: var(--radius-md); overflow: hidden; box-shadow: var(--shadow-sm); transition: var(--transition); } .nav-search form:focus-within { border-color: var(--primary); box-shadow: 0 0 0 3px var(--primary-light); } .nav-search input { width: 100%; padding: 10px 16px; border: none; outline: none; font-family: var(--font-sans); font-size: 0.95rem; background: transparent; color: var(--text-main); min-height: 40px; } .nav-search input::placeholder { color: var(--text-muted); } .nav-search button { padding: 0 16px; border: none; background: transparent; cursor: pointer; font-size: 1.1rem; color: var(--text-muted); transition: var(--transition); display: flex; align-items: center; justify-content: center; } .nav-search button:hover { color: var(--primary); background-color: var(--bg-page); } .nav-toggle { display: none; background: var(--bg-card); border: 1px solid var(--border); border-radius: var(--radius-full); font-size: 1.25rem; cursor: pointer; color: var(--text-main); width: 38px; height: 38px; padding: 0; align-items: center; justify-content: center; box-shadow: var(--shadow-sm); transition: var(--transition); } .nav-toggle:hover { color: var(--primary); border-color: var(--primary); } /* Mobile Navbar */ @media (max-width: 768px) { .nav-toggle { display: inline-flex; } .navbar { flex-wrap: wrap; height: auto; padding: 12px 16px; gap: 12px; } .brand { flex: 1; order: 1; } .nav-links { flex: 1; order: 2; justify-content: flex-end; gap: 12px; } .nav-search { flex: 1 1 100%; order: 3; margin: 0; max-width: none; } }