@@ -21,7 +21,7 @@ const iconLinks: { label: string; href: string; icon: keyof typeof iconPaths }[]
2121];
2222---
2323
24- <nav >
24+ <nav class = " nav-shell glass-panel flush " >
2525 <div class =" menu-header" >
2626 <a href =" /" class =" site-title" >
2727 <Icon icon =" terminal-window" color =" var(--accent-regular)" size =" 1.6em" gradient />
@@ -174,19 +174,21 @@ const iconLinks: { label: string; href: string; icon: keyof typeof iconPaths }[]
174174 z-index: 9999;
175175 position: relative;
176176 font-family: var(--font-brand);
177- }
178-
179- .nav-controls {
177+ width: min(100%, calc(var(--page-max-width) + 3rem));
178+ margin-inline: auto;
179+ padding: clamp(0.75rem, 2vw, 1.25rem);
180180 display: flex;
181- align-items: center;
182- gap: 0.5rem;
181+ flex-direction: column;
182+ gap: 0.75rem;
183+ border-radius: 1.5rem;
183184 }
184185
185186 .menu-header {
186187 display: flex;
187188 justify-content: space-between;
188- gap: 0.5rem;
189- padding: 1.5rem;
189+ align-items: center;
190+ gap: 0.75rem;
191+ padding: 0.35rem 0.5rem 0.35rem 0.75rem;
190192 }
191193
192194 .site-title {
@@ -196,28 +198,39 @@ const iconLinks: { label: string; href: string; icon: keyof typeof iconPaths }[]
196198 line-height: 1.1;
197199 color: var(--gray-0);
198200 text-decoration: none;
201+ text-shadow: 0 1px 0 color-mix(in srgb, #fff 30%, transparent);
199202 }
200203
201204 .menu-button {
202205 position: relative;
203206 display: flex;
204- border: 0;
205207 border-radius: 999rem;
206- padding: 0.5rem;
207- font-size: 1.5rem;
208- color: var(--gray-300);
209- background: radial-gradient(var(--gray-900), var(--gray-800) 150%);
210- box-shadow: var(--shadow-md);
211- transition: background-color var(--theme-transition),
212- color var(--theme-transition);
208+ padding: 0.6rem;
209+ font-size: 1.35rem;
210+ color: var(--gray-200);
211+ border: 1px solid var(--glass-stroke-soft);
212+ background: linear-gradient(
213+ 180deg,
214+ color-mix(in srgb, var(--glass-thick) 80%, transparent),
215+ color-mix(in srgb, var(--glass-regular) 65%, transparent)
216+ );
217+ box-shadow: var(--glass-shadow-light);
218+ -webkit-backdrop-filter: var(--glass-blur-light);
219+ backdrop-filter: var(--glass-blur-light);
220+ transition:
221+ background-color var(--theme-transition),
222+ color var(--theme-transition),
223+ transform var(--theme-transition);
213224 }
214225
215226 .menu-button[aria-expanded='true'] {
216227 color: var(--gray-0);
217- background: linear-gradient(180deg, var(--gray-600), transparent),
218- radial-gradient(var(--gray-900), var(--gray-800) 150%);
219- transition: background-color var(--theme-transition),
220- color var(--theme-transition);
228+ background: linear-gradient(
229+ 180deg,
230+ color-mix(in srgb, var(--glass-ultra-thick) 82%, transparent),
231+ color-mix(in srgb, var(--glass-regular) 70%, transparent)
232+ );
233+ transform: translateY(-1px);
221234 }
222235
223236 .menu-button[hidden] {
@@ -228,18 +241,31 @@ const iconLinks: { label: string; href: string; icon: keyof typeof iconPaths }[]
228241 position: absolute;
229242 inset: -1px;
230243 content: '';
231- background: var(-- gradient-stroke );
244+ background: linear- gradient(145deg, color-mix(in srgb, #fff 15%, transparent), transparent );
232245 border-radius: 999rem;
233246 z-index: -1;
247+ opacity: 0.9;
234248 }
235249
236250 .menu-content {
237251 position: absolute;
238- left: 0;
239- right: 0;
252+ left: clamp(0.5rem, 2vw, 1.25rem);
253+ right: clamp(0.5rem, 2vw, 1.25rem);
254+ top: calc(100% - 0.5rem);
240255 max-height: 80vh;
241256 overflow-y: auto;
242257 scrollbar-width: thin;
258+ padding: 0.35rem;
259+ border-radius: 1.25rem;
260+ border: 1px solid var(--glass-stroke-soft);
261+ background: linear-gradient(
262+ 160deg,
263+ color-mix(in srgb, var(--glass-regular) 60%, transparent),
264+ color-mix(in srgb, var(--glass-thin) 48%, transparent)
265+ );
266+ box-shadow: var(--glass-shadow-medium);
267+ backdrop-filter: var(--glass-blur-light);
268+ -webkit-backdrop-filter: var(--glass-blur-light);
243269 }
244270
245271 .nav-items {
@@ -250,15 +276,23 @@ const iconLinks: { label: string; href: string; icon: keyof typeof iconPaths }[]
250276 font-size: var(--text-md);
251277 line-height: 1.2;
252278 list-style: none;
253- padding: 2rem;
254- background-color: var(--gray-999);
255- border-bottom: 1px solid var(--gray-800);
279+ padding: 1.25rem 1.5rem;
280+ background: linear-gradient(
281+ 180deg,
282+ color-mix(in srgb, var(--glass-regular) 75%, transparent),
283+ color-mix(in srgb, var(--glass-thin) 60%, transparent)
284+ );
285+ border-radius: 1.1rem;
286+ border: 1px solid var(--glass-stroke-soft);
287+ box-shadow: var(--glass-shadow-light);
256288 }
257289
258290 .link {
259291 display: inline-block;
260- color: var(--gray-300 );
292+ color: var(--gray-200 );
261293 text-decoration: none;
294+ letter-spacing: 0.01em;
295+ font-weight: 500;
262296 }
263297
264298 .link.active {
@@ -272,10 +306,15 @@ const iconLinks: { label: string; href: string; icon: keyof typeof iconPaths }[]
272306 display: flex;
273307 justify-content: space-between;
274308 gap: 0.75rem;
275- padding: 1.5rem 2rem 1.5rem 1.5rem;
276- background-color: var(--gray-999);
277- border-radius: 0 0 0.75rem 0.75rem;
278- box-shadow: var(--shadow-lg);
309+ padding: 1rem 1.35rem 1.25rem;
310+ background: linear-gradient(
311+ 180deg,
312+ color-mix(in srgb, var(--glass-regular) 70%, transparent),
313+ color-mix(in srgb, var(--glass-thin) 55%, transparent)
314+ );
315+ border-radius: 1.1rem;
316+ border: 1px solid var(--glass-stroke-soft);
317+ box-shadow: inset 0 1px 0 color-mix(in srgb, #fff 12%, transparent);
279318 }
280319
281320 .socials {
@@ -311,7 +350,7 @@ const iconLinks: { label: string; href: string; icon: keyof typeof iconPaths }[]
311350 display: grid;
312351 grid-template-columns: 1fr auto 1fr;
313352 align-items: center;
314- padding: 2.5rem 5rem;
353+ padding: 1rem 1. 5rem;
315354 gap: 1rem;
316355 }
317356
@@ -325,26 +364,23 @@ const iconLinks: { label: string; href: string; icon: keyof typeof iconPaths }[]
325364
326365 .menu-content {
327366 display: contents;
367+ position: static;
368+ padding: 0;
328369 }
329370
330371 .nav-items {
331372 position: relative;
332373 flex-direction: row;
333374 font-size: var(--text-sm);
334375 border-radius: 999rem;
335- border: 0;
336- padding: 0.5rem 0.5625rem;
337- background: radial-gradient(var(--gray-900), var(--gray-800) 150%);
338- box-shadow: var(--shadow-md);
339- }
340-
341- .nav-items::before {
342- position: absolute;
343- inset: -1px;
344- content: '';
345- background: var(--gradient-stroke);
346- border-radius: 999rem;
347- z-index: -1;
376+ border: 1px solid var(--glass-stroke-soft);
377+ padding: 0.35rem 0.45rem;
378+ background: linear-gradient(
379+ 140deg,
380+ color-mix(in srgb, var(--glass-regular) 72%, transparent),
381+ color-mix(in srgb, var(--glass-thin) 55%, transparent)
382+ );
383+ box-shadow: var(--glass-shadow-medium);
348384 }
349385
350386 .link {
@@ -357,13 +393,14 @@ const iconLinks: { label: string; href: string; icon: keyof typeof iconPaths }[]
357393
358394 .link:hover,
359395 .link:focus {
360- color: var(--gray-100 );
361- background-color: var(--accent-subtle-overlay );
396+ color: var(--gray-0 );
397+ background-color: color-mix(in srgb, var(--accent-regular) 15%, transparent );
362398 }
363399
364400 .link.active {
365401 color: var(--accent-text-over);
366- background-color: var(--accent-regular);
402+ background-color: color-mix(in srgb, var(--accent-regular) 85%, transparent);
403+ box-shadow: 0 6px 18px color-mix(in srgb, var(--accent-regular) 25%, transparent);
367404 }
368405
369406 .menu-footer {
0 commit comments