9393 display : flex;
9494 align-items : center;
9595 justify-content : space-between;
96+ position : relative;
9697}
9798
9899.nav-brand {
@@ -958,6 +959,32 @@ footer {
958959 font-size : 0.8rem ;
959960}
960961
962+ /* ── hamburger ── */
963+
964+ .nav-hamburger {
965+ display : none;
966+ flex-direction : column;
967+ justify-content : center;
968+ gap : 5px ;
969+ width : 36px ; height : 36px ;
970+ background : none;
971+ border : none;
972+ cursor : pointer;
973+ padding : 4px ;
974+ border-radius : var (--radius-sm );
975+ }
976+ .nav-hamburger span {
977+ display : block;
978+ height : 2px ;
979+ background : var (--slate-400 );
980+ border-radius : 2px ;
981+ transition : all 0.2s ;
982+ }
983+ .nav-hamburger : hover span { background : var (--bright ); }
984+ .nav-hamburger .open span : nth-child (1 ) { transform : translateY (7px ) rotate (45deg ); }
985+ .nav-hamburger .open span : nth-child (2 ) { opacity : 0 ; }
986+ .nav-hamburger .open span : nth-child (3 ) { transform : translateY (-7px ) rotate (-45deg ); }
987+
961988/* ── responsive ── */
962989
963990@media (max-width : 860px ) {
@@ -981,6 +1008,19 @@ footer {
9811008 .bento-cell .wide { grid-column : 1 ; }
9821009 .entry { grid-template-columns : 52px 1fr ; gap : 1.25rem ; padding : 1.25rem ; }
9831010 .entry-day-num { font-size : 1.5rem ; }
984- .nav-links a : not (.nav-gh ) { display : none; }
1011+ .nav-hamburger { display : flex; }
1012+ .nav-links {
1013+ display : none;
1014+ position : absolute;
1015+ top : 58px ; left : 0 ; right : 0 ;
1016+ background : rgba (2 , 6 , 23 , 0.97 );
1017+ backdrop-filter : blur (20px );
1018+ border-bottom : 1px solid var (--border );
1019+ flex-direction : column;
1020+ padding : 0.75rem 1.25rem 1rem ;
1021+ gap : 0.25rem ;
1022+ }
1023+ .nav-links .open { display : flex; }
1024+ .nav-links a { padding : 0.65rem 0.5rem ; font-size : 0.9rem ; }
9851025 .footer-inner { flex-direction : column; gap : 0.75rem ; align-items : flex-start; }
9861026}
0 commit comments