.menu-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,0);z-index:12500;opacity:0;visibility:hidden;transition:.3s}.menu-overlay.active{background:rgba(0,0,0,.5);opacity:1;visibility:visible}.menu-toggle-btn{position:fixed;top:calc(env(safe-area-inset-top,20px) + 8px);right:16px;width:40px;height:40px;background:#d32f2f;border-radius:50%;display:none;align-items:center;justify-content:center;color:#fff;z-index:12499;box-shadow:0 2px 12px rgba(211,47,47,.4);text-decoration:none;border:none;cursor:pointer;-webkit-tap-highlight-color:transparent;transition:transform .2s,box-shadow .2s}.menu-toggle-btn:active{transform:scale(.9)}.menu-toggle-btn i{font-size:22px;transition:transform .3s}.menu-toggle-btn.active i{transform:rotate(90deg)}.menu-toggle-btn.hidden{display:none!important}.menu-panel{position:fixed;top:0;right:-340px;width:320px;height:100vh;height:100dvh;background:#fff;z-index:12501;overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch;box-shadow:-4px 0 24px rgba(0,0,0,.15);transition:right .3s cubic-bezier(.4, 0, .2, 1);display:flex;flex-direction:column}.menu-panel.active{right:0}.menu-close-btn{position:absolute;top:calc(env(safe-area-inset-top,8px) + 8px);right:12px;width:32px;height:32px;background:rgba(255,255,255,.25);border:none;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;z-index:10;cursor:pointer;-webkit-tap-highlight-color:transparent}.menu-close-btn:active{background:rgba(255,255,255,.4)}.menu-close-btn i{font-size:18px}.navbar-menu-toggle{padding-right:12px!important}.menu-app-logo{padding:calc(env(safe-area-inset-top,20px) + 12px) 24px 12px;text-align:center}.menu-app-logo img{max-width:120px;height:auto;object-fit:contain}.menu-header{background:linear-gradient(135deg,#c62828 0,#b71c1c 100%);padding:16px 20px 20px;color:#fff;position:relative}.menu-header::after{content:'';position:absolute;bottom:-16px;left:0;right:0;height:16px;background:#fff;border-radius:16px 16px 0 0;z-index:1}.menu-profile{display:flex;align-items:center;gap:14px;margin-bottom:16px}a.menu-profile-link{text-decoration:none;color:inherit;cursor:pointer}.menu-avatar{width:56px;height:56px;border-radius:50%;overflow:hidden;border:2.5px solid rgba(255,255,255,.5);flex-shrink:0;background:rgba(255,255,255,.15)}.menu-avatar img{width:100%;height:100%;object-fit:cover;display:block}.menu-profile-info{flex:1;min-width:0}.menu-profile-info h3{font-size:18px;font-weight:600;margin:0 0 2px;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.menu-profile-info p{font-size:13px;color:rgba(255,255,255,.75);margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.menu-quick-actions{display:flex;gap:10px;margin-top:4px}.menu-quick-action{position:relative;width:44px;height:44px;background:rgba(255,255,255,.2);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border-radius:12px;display:flex;align-items:center;justify-content:center;color:#fff;text-decoration:none;transition:background .2s}.menu-quick-action:active{background:rgba(255,255,255,.35)}.menu-quick-action i{font-size:20px}.menu-quick-badge{position:absolute;top:4px;right:4px;min-width:18px;height:18px;line-height:18px;padding:0 5px;background:#fff;color:#d32f2f;border-radius:9px;font-size:10px;font-weight:700;text-align:center}.menu-admin-toggle{margin:24px 16px 0;background:rgba(211,47,47,.08);border-radius:12px;padding:12px 16px}.menu-admin-toggle-inner{display:flex;align-items:center;gap:10px;color:#d32f2f}.menu-admin-toggle-inner>i{font-size:20px}.menu-admin-toggle-inner>span{flex:1;font-size:14px;font-weight:500}.menu-admin-toggle-inner .toggle{margin:0}.menu-content{flex:1;padding-top:8px}.menu-section-title{padding:16px 24px 8px;font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:rgba(0,0,0,.45)}.menu-link{display:flex;align-items:center;padding:12px 24px;color:#333;text-decoration:none;transition:background .15s;position:relative}.menu-link:active{background:rgba(211,47,47,.06)}.menu-link.active{background:rgba(211,47,47,.08)}.menu-link.active::before{content:'';position:absolute;left:0;top:4px;bottom:4px;width:3px;background:#d32f2f;border-radius:0 2px 2px 0}.menu-link.active .menu-link-title{color:#d32f2f;font-weight:700}.menu-link-icon{width:38px;height:38px;display:flex;align-items:center;justify-content:center;border-radius:10px;background:rgba(211,47,47,.1);margin-right:14px;flex-shrink:0}.menu-link-icon i{font-size:20px;color:#d32f2f}.menu-link-icon.icon-purple{background:rgba(211,47,47,.1)}.menu-link-icon.icon-purple i{color:#d32f2f}.menu-link-icon.icon-gray{background:rgba(0,0,0,.06)}.menu-link-icon.icon-gray i{color:#666}.menu-link-icon.icon-destructive{background:rgba(211,47,47,.1)}.menu-link-icon.icon-destructive i{color:#d32f2f}.menu-link-icon.icon-signin{background:rgba(211,47,47,.15)}.menu-link-icon.icon-signin i{color:#d32f2f}.menu-link-signin .menu-link-title{color:#d32f2f;font-weight:600}.menu-header-guest .menu-avatar{display:flex;align-items:center;justify-content:center}.menu-header-guest .menu-avatar i{font-size:36px;color:#fff}.menu-link-title{flex:1;font-size:15px;font-weight:500;color:#333}.menu-link-chevron{font-size:16px;color:rgba(0,0,0,.25);margin-left:8px}.menu-link.destructive .menu-link-title{color:#d32f2f}.menu-divider{height:1px;background:rgba(0,0,0,.08);margin:8px 24px}.menu-footer{padding:16px 24px;padding-bottom:calc(16px + env(safe-area-inset-bottom,0px));text-align:center;border-top:1px solid rgba(0,0,0,.08);background-color:#e0e0e0;border-radius:0}.menu-footer-logo{width:60px;height:60px;margin:0 auto 4px}.menu-footer-logo img{width:100%;height:100%;object-fit:contain}.menu-footer-appname{font-size:14px;color:#333;margin:0 0 2px;font-weight:500}.menu-footer-version{font-size:13px;color:rgba(0,0,0,.45);margin:0;font-weight:500}@media (max-width:374px){.menu-panel{width:280px;right:-300px}.menu-toggle-btn{width:36px;height:36px;right:12px}.menu-toggle-btn i{font-size:20px}.menu-link{padding:11px 20px}.menu-link-icon{width:34px;height:34px;margin-right:12px}.menu-link-icon i{font-size:18px}.menu-link-title{font-size:14px}.menu-header{padding-left:16px;padding-right:16px}.menu-avatar{width:48px;height:48px}.menu-profile-info h3{font-size:16px}}@media (min-width:375px) and (max-width:480px){.menu-panel{width:300px;right:-320px}}@media (min-width:768px){.menu-panel{width:360px;right:-380px}.menu-toggle-btn{width:44px;height:44px}.menu-toggle-btn i{font-size:24px}.menu-link{padding:14px 24px}.menu-link-title{font-size:16px}.menu-link-icon{width:42px;height:42px}.menu-link-icon i{font-size:22px}.menu-avatar{width:64px;height:64px}.menu-profile-info h3{font-size:20px}.menu-header{padding-left:24px;padding-right:24px;padding-bottom:24px}.menu-quick-action{width:48px;height:48px}.menu-quick-action i{font-size:22px}}@media (orientation:landscape) and (max-height:500px){.menu-header{padding-top:calc(env(safe-area-inset-top,8px) + 8px);padding-bottom:12px}.menu-avatar{width:40px;height:40px}.menu-profile-info h3{font-size:15px}.menu-profile{margin-bottom:10px}.menu-link{padding:10px 24px}.menu-quick-action{width:36px;height:36px}.menu-quick-action i{font-size:18px}.menu-admin-toggle{margin-top:16px;padding:10px 14px}}body.device-android .menu-panel{box-shadow:-2px 0 16px rgba(0,0,0,.25)}body.device-android .menu-toggle-btn{box-shadow:0 3px 6px rgba(211,47,47,.3),0 3px 6px rgba(0,0,0,.15)}@supports (padding-top:env(safe-area-inset-top)){.menu-toggle-btn{top:calc(env(safe-area-inset-top,0px) + 8px)}}@media (prefers-color-scheme:dark){.menu-panel{background:#f5f5f5}.menu-header{background:linear-gradient(135deg,#b71c1c 0,#9b1b1b 100%)}.menu-header::after{background:#f5f5f5}}.menu-link:focus-visible{outline:#D32F2F solid 2px;outline-offset:-2px}.menu-toggle-btn:focus-visible{outline:rgba(255,255,255,.8) solid 2px;outline-offset:2px}.menu-close-btn:focus-visible{outline:rgba(255,255,255,.8) solid 2px;outline-offset:2px}@media (prefers-reduced-motion:reduce){.menu-link,.menu-overlay,.menu-panel,.menu-quick-action,.menu-toggle-btn,.menu-toggle-btn i{transition:none!important}}@media (prefers-contrast:high){.menu-link{border-bottom:1px solid rgba(0,0,0,.15)}.menu-link.active{border-left:3px solid #d32f2f}.menu-toggle-btn{border:2px solid #fff}}