.mobile-top-appbar{position:fixed;top:0;left:0;right:0;z-index:var(--z-header);background:var(--background-color);border-bottom:1px solid var(--border-color);box-shadow:var(--shadow-sm);padding-top:max(-4px,env(safe-area-inset-top));padding-left:max(var(--spacing-xs),env(safe-area-inset-left));padding-right:max(var(--spacing-xs),env(safe-area-inset-right))}.mobile-top-appbar-container{display:flex;align-items:center;justify-content:space-between;height:44px;padding:0 var(--spacing-xs)}.mobile-top-appbar-hamburger{background:0 0;border:none;padding:var(--spacing-xs);cursor:pointer;border-radius:var(--border-radius-md);transition:background-color var(--transition-fast);display:flex;align-items:center;justify-content:center}.mobile-top-appbar-hamburger:hover{background-color:var(--gray-background-color)}.mobile-top-appbar-hamburger:focus{outline:2px solid var(--primary-color);outline-offset:2px}.hamburger-icon{width:20px;height:16px;display:flex;flex-direction:column;justify-content:space-between;align-items:center}.hamburger-icon span{display:block;width:100%;height:2px;background-color:var(--text-primary);border-radius:1px;transition:all var(--transition-fast)}.mobile-hamburger-menu.active~.mobile-top-appbar .hamburger-icon span:nth-child(1){transform:translateY(9px) rotate(45deg)}.mobile-hamburger-menu.active~.mobile-top-appbar .hamburger-icon span:nth-child(2){opacity:0}.mobile-hamburger-menu.active~.mobile-top-appbar .hamburger-icon span:nth-child(3){transform:translateY(-9px) rotate(-45deg)}.mobile-top-appbar-title{flex:1;display:flex;justify-content:flex-start;align-items:center;margin:0 var(--spacing-md)}.mobile-top-appbar-logo{height:32px;width:auto}.mobile-top-appbar-settings{padding:var(--spacing-xs);border-radius:var(--border-radius-md);transition:background-color var(--transition-fast);display:flex;align-items:center;justify-content:center;text-decoration:none}.mobile-top-appbar-settings:hover{background-color:var(--gray-background-color)}.mobile-top-appbar-settings:focus{outline:2px solid var(--primary-color);outline-offset:2px}.settings-icon{width:16px;height:16px;opacity:.8}.mobile-hamburger-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:rgba(0,0,0,.5);z-index:calc(var(--z-header) + 1);opacity:0;visibility:hidden;transition:opacity var(--transition-medium),visibility var(--transition-medium)}.mobile-hamburger-overlay.active{opacity:1;visibility:visible}.mobile-hamburger-menu{position:fixed;top:0;left:-100%;width:180px;height:100vh;background-color:var(--background-color);z-index:calc(var(--z-header) + 2);box-shadow:var(--shadow-xl);transition:left var(--transition-medium),visibility var(--transition-medium),transform var(--transition-fast);visibility:hidden;display:flex;flex-direction:column;transform:translateX(0);padding-top:max(var(--spacing-lg),env(safe-area-inset-top));padding-left:max(var(--spacing-xs),env(safe-area-inset-left));padding-right:var(--spacing-xs);padding-bottom:max(var(--spacing-md),env(safe-area-inset-bottom))}.mobile-hamburger-menu.active{left:0;visibility:visible;transform:translateX(0)}.mobile-hamburger-menu.swiping{transition:transform var(--transition-fast)}.mobile-hamburger-menu.swiping-left{transform:translateX(-10px)}.mobile-hamburger-menu.swiping-right{transform:translateX(10px)}.mobile-hamburger-header{display:flex;justify-content:flex-end;align-items:center;padding:var(--spacing-md) 0;border-bottom:1px solid var(--border-color);margin-bottom:var(--spacing-lg)}.mobile-hamburger-close{background:0 0;border:none;padding:var(--spacing-xs);cursor:pointer;border-radius:var(--border-radius-md);transition:background-color var(--transition-fast);display:flex;align-items:center;justify-content:center;color:var(--text-secondary)}.mobile-hamburger-close:hover{background-color:var(--gray-background-color);color:var(--text-primary)}.mobile-hamburger-close:focus{outline:2px solid var(--primary-color);outline-offset:2px}.mobile-hamburger-content{flex:1;overflow-y:auto}.mobile-hamburger-item{display:flex;align-items:center;padding:var(--spacing-xs) var(--spacing-sm);color:var(--text-primary);text-decoration:none;border-radius:var(--border-radius-md);transition:background-color var(--transition-fast),color var(--transition-fast);margin-bottom:var(--spacing-xs);font-size:var(--font-size-lg);font-weight:var(--font-weight-medium)}.mobile-hamburger-item:hover{background-color:var(--gray-background-color);color:var(--primary-color);text-decoration:none}.mobile-hamburger-item:focus{outline:2px solid var(--primary-color);outline-offset:2px;background-color:var(--gray-background-color)}.mobile-hamburger-item-text{flex:1}.mobile-hamburger-divider{height:1px;background-color:var(--border-color);margin:var(--spacing-lg) var(--spacing-md)}.platform-mobile,.platform-mobile-device{touch-action:pan-y pinch-zoom}.mobile-top-appbar::before{content:'';position:absolute;top:0;left:0;width:4px;height:100%;background:linear-gradient(to right,var(--primary-color),transparent);opacity:0;transition:opacity var(--transition-fast);pointer-events:none;z-index:1}.mobile-hamburger-menu.active~.mobile-top-appbar::before,.mobile-top-appbar:hover::before{opacity:.3}.platform-mobile #main-content,.platform-mobile-device #main-content{padding-top:0}@media (min-width:375px){.mobile-hamburger-menu{width:220px}}@media (min-width:768px){.mobile-top-appbar{display:none}.mobile-hamburger-menu,.mobile-hamburger-overlay{display:none}.platform-mobile #main-content,.platform-mobile-device #main-content{padding-top:0}.platform-mobile,.platform-mobile-device{touch-action:auto}}@media (prefers-contrast:high){.mobile-top-appbar{border-bottom-width:2px}.hamburger-icon span{height:3px}.mobile-hamburger-divider{height:2px}}@media (prefers-reduced-motion:reduce){.hamburger-icon span,.mobile-hamburger-close,.mobile-hamburger-item,.mobile-hamburger-menu,.mobile-hamburger-overlay,.mobile-top-appbar-hamburger,.mobile-top-appbar-settings,.mobile-top-appbar::before{transition:none}}.mobile-hamburger-close:focus-visible,.mobile-hamburger-item:focus-visible,.mobile-top-appbar-hamburger:focus-visible,.mobile-top-appbar-settings:focus-visible{outline:2px solid var(--primary-color);outline-offset:2px}