1 ---
2 import { SITE } from '@/config'
3 import ThemeToggle from '@/components/ui/ThemeToggle.astro'
4 ---
5
6 <header>
7 <nav>
8 <div class="logo-container">
9 {SITE.favicon && <img src="/favicon.svg" alt="favicon" class="favicon" />}
10 <a href="/">{SITE.title}</a>
11 </div>
12 <div class="header-right">
13 <div class="flex flex-col gap-2 md:flex-row">
14 <a href="/download" class="download-link">Download Our Apps</a>
15 </div>
16 <ThemeToggle />
17 </div>
18 </nav>
19 </header>
20 <style>
21 header {
22 margin: 0 0 1.75rem 0;
23 }
24 nav {
25 display: flex;
26 justify-content: space-between;
27 align-items: center;
28 }
29 header a {
30 font-weight: var(--font-weight-bold);
31 color: var(--text-primary);
32 text-decoration: none;
33 min-width: 3rem;
34 display: inline-block;
35 }
36 .logo-container {
37 position: relative;
38 }
39 .header-right {
40 display: flex;
41 align-items: center;
42 gap: 1rem;
43 }
44
45 .download-link {
46 padding: 0.5rem 1rem;
47 background-color: var(--accent);
48 color: white;
49 border-radius: 0.5rem;
50 font-size: 0.95rem;
51 transition: all 0.2s ease;
52 }
53
54 .download-link:hover {
55 background-color: var(--accent-dark);
56 transform: translateY(-2px);
57 box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
58 }
59
60 .download-link:active {
61 transform: translateY(0);
62 }
63
64 .favicon {
65 position: absolute;
66 width: 1.125rem;
67 height: 1.125rem;
68 bottom: calc(100% + 3.5rem);
69 left: 0;
70 }
71 @media (max-width: 480px) {
72 nav {
73 justify-content: center;
74 }
75
76 .logo-container {
77 width: 100%;
78 text-align: center;
79 margin-bottom: 0.5rem;
80 }
81
82 .header-right {
83 width: 100%;
84 justify-content: center;
85 }
86
87 .download-link {
88 font-size: 0.9rem;
89 padding: 0.45rem 0.85rem;
90 }
91 }
92 </style>