.mobile-menu-toggle { display:none; }
.mobile-menu { box-sizing:border-box; position:fixed; inset:0 0 0 auto; width:min(360px,calc(100vw - 24px)); max-width:none; height:100dvh; max-height:none; margin:0; padding:18px 24px max(24px,env(safe-area-inset-bottom)); border:0; border-left:1px solid #29362e; background:#0c120f; color:#f3f5ef; }
.mobile-menu::backdrop { background:rgb(0 0 0 / .65); }
.mobile-menu[open] { display:flex; flex-direction:column; animation:menu-enter .2s ease-out; }
.mobile-menu-top { display:flex; align-items:center; justify-content:space-between; gap:24px; margin-bottom:38px; color:#aeb8b1; font-size:14px; }
.mobile-menu-close, .mobile-menu-toggle { align-items:center; justify-content:center; flex:0 0 44px; width:44px; height:44px; padding:0; border:0; border-radius:4px; background:transparent; color:#f3f5ef; cursor:pointer; }
.mobile-menu-close { display:flex; }
.mobile-menu-close:hover, .mobile-menu-toggle:hover { background:#203025; }
.mobile-menu nav { display:flex; flex-direction:column; gap:6px; }
.site-header .mobile-menu nav a { display:flex; align-items:center; min-height:56px; padding:12px 4px; font-size:21px; font-weight:500; color:#f3f5ef; text-decoration:none; }
.site-header .mobile-menu nav a:hover { color:#62ed45; }
.site-header .mobile-menu nav .mobile-menu-register { justify-content:space-between; margin-top:24px; padding:14px 18px; border:1px solid #62ed45; color:#62ed45; font-size:17px; }
.mobile-menu a:focus-visible, .mobile-menu-close:focus-visible, .mobile-menu-toggle:focus-visible { outline:2px solid #62ed45; outline-offset:4px; }
@media(max-width:900px) { .mobile-menu-toggle { display:flex; } .header-inner .header-register { margin-left:auto; } .header-inner { column-gap:10px; } }
@keyframes menu-enter { from { transform:translateX(100%); } to { transform:translateX(0); } }
@media(prefers-reduced-motion:reduce) { .mobile-menu[open] { animation:none; } }
