|
55 | 55 | <meta name="theme-color" content="#ffffff"> |
56 | 56 |
|
57 | 57 | <script> |
58 | | - function thing() { |
59 | | - document.getElementById("navbar").classList.toggle("open"); |
| 58 | + function toggleMobileMenu() { |
| 59 | + const menu = document.getElementById("mobile-menu"); |
| 60 | + const btn = document.getElementById("mobile-menu-btn"); |
| 61 | + const icon = btn.querySelector("i"); |
| 62 | + menu.classList.toggle("hidden"); |
| 63 | + const isOpen = !menu.classList.contains("hidden"); |
| 64 | + icon.classList.toggle("bi-list", !isOpen); |
| 65 | + icon.classList.toggle("bi-x-lg", isOpen); |
60 | 66 | } |
61 | 67 | </script> |
62 | 68 | </head> |
63 | 69 |
|
64 | 70 | <body> |
| 71 | + <div id="mobile-menu" class="md:hidden hidden fixed inset-x-0 top-0 bg-white z-50 border-b shadow-lg"> |
| 72 | + <div class="flex justify-between items-center p-4"> |
| 73 | + <img src="/assets/logo.svg" alt="BMT Logo" width="44" class="-mt-1"> |
| 74 | + <button class="p-2" onclick="toggleMobileMenu()"> |
| 75 | + <i class="bi bi-x-lg text-2xl"></i> |
| 76 | + </button> |
| 77 | + </div> |
| 78 | + <nav class="flex flex-col gap-2 p-4 pt-0"> |
| 79 | + {{ macros::mobile_nav_link(path="@/_index.md", label="Home") }} |
| 80 | + {{ macros::mobile_nav_link(path="@/news/_index.md", label="News") }} |
| 81 | + {{ macros::mobile_nav_link(path="@/blog/_index.md", label="Blog") }} |
| 82 | + {{ macros::mobile_nav_link(path="@/about.md", label="About") }} |
| 83 | + {{ macros::mobile_nav_link(path="@/resources/index.md", label="Resources") }} |
| 84 | + {{ macros::mobile_nav_link(path="@/events/bmmt-2026.md", label="BmMT 2026") }} |
| 85 | + {{ macros::mobile_nav_link(path="@/events/bmt-2025-online.md", label="BMT 2025 Online") }} |
| 86 | + </nav> |
| 87 | + </div> |
| 88 | + |
65 | 89 | <div class="max-w-4xl min-h-screen p-4 md:p-8 mx-auto flex flex-col gap-8"> |
| 90 | + <button id="mobile-menu-btn" class="md:hidden fixed top-4 right-4 border py-2 px-3 rounded-xl bg-white z-50" onclick="toggleMobileMenu()"> |
| 91 | + <i class="bi bi-list text-xl"></i> |
| 92 | + </button> |
| 93 | + |
66 | 94 | {% block header %} |
67 | 95 | <header class="flex flex-col gap-4 text-center"> |
68 | 96 | <a class="mx-auto" href="/"><img src="/assets/logo.svg" alt="BMT Logo" width="80"></a> |
69 | 97 | <p class="text-2xl font-bold">Berkeley Math Tournament</p> |
70 | 98 |
|
71 | | - <nav id="navbar" |
72 | | - class="[&.open>a.nav-hidden]:block [&>a.nav-hidden]:hidden flex flex-col md:flex-row md:mx-auto gap-4 items-stretch"> |
| 99 | + <nav class="hidden md:flex md:flex-row md:mx-auto gap-4 items-stretch"> |
73 | 100 | {{ macros::nav_link(path="@/_index.md", label="Home") }} |
74 | 101 | {{ macros::nav_link(path="@/news/_index.md", label="News") }} |
75 | 102 | {{ macros::nav_link(path="@/blog/_index.md", label="Blog") }} |
|
0 commit comments