:root{--menu-bg:#fffffff2;--menu-blur:10px;--menu-border:#fff3;--menu-shadow:#110c2e1a;--menu-accent:#6366f1;--menu-text:#1f2937;--menu-hover:#6366f114}[data-theme=dark]{--menu-bg:#111827f2;--menu-border:#ffffff1a;--menu-shadow:#0000004d;--menu-text:#e5e7eb;--menu-hover:#6366f126}#layout-menu{z-index:9999;background:var(--menu-bg);-webkit-backdrop-filter:blur(var(--menu-blur));border-right:1px solid var(--menu-border);box-shadow:0 8px 32px 0 var(--menu-shadow)}.app-brand{padding:2rem 1.5rem;position:relative;overflow:hidden}.app-brand:after{content:"";background:linear-gradient(90deg, transparent, var(--menu-border), transparent);height:1px;position:absolute;bottom:0;left:1rem;right:1rem}.app-brand-link{align-items:center;gap:1rem;text-decoration:none;transition:all .4s cubic-bezier(.4,0,.2,1);display:flex}.app-brand-link:hover{transform:translate(5px)}.app-brand-logo{position:relative}.app-brand-logo img{filter:drop-shadow(0 4px 6px #0000001a);width:40px;height:auto;transition:transform .4s cubic-bezier(.4,0,.2,1)}.app-brand-link:hover .app-brand-logo img{transform:rotate(-5deg)}.app-brand-text{background:linear-gradient(135deg, var(--menu-accent), #818cf8);-webkit-text-fill-color:transparent;letter-spacing:-.5px;-webkit-background-clip:text;font-size:1.75rem;font-weight:800}.menu-inner{padding:1rem}.menu-inner-shadow{display:none}.menu-item{margin:.5rem 0;position:relative}.menu-header{color:var(--menu-text);letter-spacing:.1em;text-transform:uppercase;opacity:.7;padding:1.5rem 1rem .75rem;font-size:.75rem;font-weight:600}.menu-link{color:var(--menu-text);border-radius:1rem;align-items:center;gap:1rem;padding:.875rem 1.25rem;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex;position:relative;overflow:hidden}.menu-link:before{content:"";background:var(--menu-hover);opacity:0;transition:opacity .3s;position:absolute;inset:0}.menu-link:hover:before{opacity:1}.menu-link:after{content:"";background:linear-gradient(to bottom, var(--menu-accent), #818cf8);border-radius:0 4px 4px 0;width:3px;height:60%;transition:transform .3s cubic-bezier(.4,0,.2,1);position:absolute;top:50%;left:0;transform:translateY(-50%)scaleY(0)}.menu-link:hover:after,.menu-item.active .menu-link:after{transform:translateY(-50%)scaleY(1)}.menu-icon{width:1.5rem;height:1.5rem;color:inherit;z-index:1;justify-content:center;align-items:center;font-size:1.25rem;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex;position:relative}.menu-link:hover .menu-icon,.menu-item.active .menu-link .menu-icon{color:var(--menu-accent);transform:scale(1.1)}.menu-text{z-index:1;font-weight:500;position:relative}.menu-item.active .menu-link{color:var(--menu-accent);font-weight:600}.layout-menu-collapsed:not(.layout-menu-hover) #layout-menu .menu-inner{padding-left:0;padding-right:0}.layout-menu-collapsed:not(.layout-menu-hover) #layout-menu .menu-inner .menu-link{justify-content:center;gap:0;margin-left:.75rem;margin-right:.75rem;padding-left:0;padding-right:0}.layout-menu-collapsed:not(.layout-menu-hover) #layout-menu .menu-inner .menu-icon{margin:0}.layout-menu-collapsed:not(.layout-menu-hover) #layout-menu .menu-inner .menu-text{display:none}.menu-toggle-icon{transition:transform .3s}.layout-menu-toggle:hover .menu-toggle-icon{transform:rotate(180deg)}@keyframes pulse{0%{transform:scale(1)}50%{transform:scale(1.05)}to{transform:scale(1)}}.menu-item.has-notifications .menu-link:before{content:"";background:var(--menu-accent);border-radius:50%;width:6px;height:6px;animation:2s infinite pulse;position:absolute;top:50%;right:1rem;transform:translateY(-50%)}
