@@ -140,7 +140,7 @@ body::before {
140140 width : 100% ;
141141 height : 100% ;
142142 pointer-events : none;
143- z-index : 9999 ;
143+ z-index : 50 ;
144144 opacity : 0.02 ;
145145 background-image : url ("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noise)'/%3E%3C/svg%3E" );
146146}
@@ -202,9 +202,11 @@ body::before {
202202 opacity : 0.8 ;
203203}
204204
205- /* Homepage: hide navbar */
206- .homepage .navbar {
207- display : none !important ;
205+ /* Homepage: hide navbar on desktop only */
206+ @media screen and (min-width : 997px ) {
207+ .homepage .navbar {
208+ display : none !important ;
209+ }
208210}
209211
210212/* Navbar alignment - Vercel style */
@@ -236,7 +238,23 @@ body::before {
236238 display : block;
237239}
238240
239- /* Navbar brand title */
241+ /* Navbar brand title - native title styling (visible on mobile only) */
242+ .navbar__title {
243+ font-family : var (--font-display );
244+ font-weight : 500 ;
245+ font-size : 1rem ;
246+ color : var (--quantum-white );
247+ letter-spacing : -0.01em ;
248+ }
249+
250+ /* On desktop, hide native title since HTML brand-stack handles it */
251+ @media screen and (min-width : 997px ) {
252+ .navbar__title {
253+ display : none;
254+ }
255+ }
256+
257+ /* Navbar brand title - HTML item (desktop only, hidden on mobile to avoid duplicate) */
240258.navbar__brand-stack {
241259 display : inline-flex;
242260 align-items : center;
@@ -258,6 +276,13 @@ body::before {
258276 line-height : 25px ;
259277}
260278
279+ /* On mobile, hide the duplicate HTML brand item; native title is enough */
280+ @media screen and (max-width : 996px ) {
281+ .navbar__brand-stack {
282+ display : none;
283+ }
284+ }
285+
261286/* Ensure HTML navbar items align properly */
262287.navbar__item .navbar__item--html {
263288 display : flex;
@@ -1057,6 +1082,102 @@ code {
10571082 }
10581083}
10591084
1085+ /* ============================================
1086+ MOBILE NAVBAR SIDEBAR (hamburger menu)
1087+ ============================================ */
1088+
1089+ /* The <nav> element gets .navbar-sidebar--show when the hamburger is toggled.
1090+ Problem: backdrop-filter on .navbar creates a containing block that traps
1091+ position:fixed children (.navbar-sidebar, .navbar-sidebar__backdrop) inside
1092+ the nav's 3.75rem-tall box instead of the viewport.
1093+ Fix: expand the nav to cover the full viewport when the sidebar is open,
1094+ and override the constrained height so children can render full-screen. */
1095+ .navbar-sidebar--show {
1096+ position : fixed !important ;
1097+ top : 0 !important ;
1098+ left : 0 !important ;
1099+ right : 0 !important ;
1100+ bottom : 0 !important ;
1101+ height : 100% !important ;
1102+ z-index : 200 !important ;
1103+ overflow : visible !important ;
1104+ }
1105+
1106+ .navbar-sidebar {
1107+ background : var (--quantum-void ) !important ;
1108+ border-right : 1px solid var (--quantum-tungsten );
1109+ z-index : 200 !important ;
1110+ }
1111+
1112+ .navbar-sidebar__brand {
1113+ background : var (--quantum-void ) !important ;
1114+ border-bottom : 1px solid var (--quantum-tungsten );
1115+ padding : 0.75rem 1rem ;
1116+ }
1117+
1118+ .navbar-sidebar__items {
1119+ background : var (--quantum-void ) !important ;
1120+ /* Do NOT set overflow-y here — it implicitly sets overflow-x: auto,
1121+ which clips the second panel used by Docusaurus' sliding mechanism
1122+ for the docs sidebar secondary menu. */
1123+ }
1124+
1125+ .navbar-sidebar__item {
1126+ overflow-y : auto;
1127+ }
1128+
1129+ .navbar-sidebar__item .menu {
1130+ padding : 0.5rem ;
1131+ }
1132+
1133+ .navbar-sidebar .menu__list {
1134+ padding-left : 0 ;
1135+ }
1136+
1137+ .navbar-sidebar .menu__link {
1138+ font-family : var (--font-body );
1139+ font-weight : 500 ;
1140+ color : var (--quantum-silver ) !important ;
1141+ padding : 0.75rem 1rem ;
1142+ font-size : 0.95rem ;
1143+ display : flex;
1144+ }
1145+
1146+ .navbar-sidebar .menu__link : hover {
1147+ color : var (--quantum-white ) !important ;
1148+ background : rgba (152 , 152 , 159 , 0.08 );
1149+ }
1150+
1151+ .navbar-sidebar .menu__link--active {
1152+ color : var (--quantum-white ) !important ;
1153+ font-weight : 600 ;
1154+ }
1155+
1156+ /* Hide badge HTML items in mobile sidebar (they overflow) */
1157+ .navbar-sidebar .navbar__badge-link {
1158+ display : none;
1159+ }
1160+
1161+ /* Backdrop overlay when sidebar is open */
1162+ .navbar-sidebar__backdrop {
1163+ background : rgba (0 , 0 , 0 , 0.6 ) !important ;
1164+ z-index : 199 !important ;
1165+ }
1166+
1167+ /* ============================================
1168+ MOBILE DOCS SIDEBAR
1169+ ============================================ */
1170+ @media screen and (max-width : 996px ) {
1171+ /* Remove border-radius and border on mobile so sidebar toggle works */
1172+ div [class *= "docsWrapper" ] {
1173+ border-radius : 0 ;
1174+ border-left : none;
1175+ border-right : none;
1176+ margin : 0 auto;
1177+ width : 100% ;
1178+ }
1179+ }
1180+
10601181/* ============================================
10611182 RESPONSIVE
10621183 ============================================ */
0 commit comments