.mobile-fullscreen{height:100vh;height:100dvh;height:calc(var(--vh,1vh)*100);-webkit-touch-callout:none;-webkit-user-select:none;overscroll-behavior:contain;position:fixed;inset:0;overflow:hidden}.safe-area-top{padding-top:env(safe-area-inset-top)}.safe-area-bottom{padding-bottom:env(safe-area-inset-bottom)}.safe-area-left{padding-left:env(safe-area-inset-left)}.safe-area-right{padding-right:env(safe-area-inset-right)}.pb-safe{padding-bottom:env(safe-area-inset-bottom,0)}.smooth-scroll{-webkit-overflow-scrolling:touch;scroll-behavior:smooth;overflow-y:auto}@media (max-width:768px){.hide-scrollbar{scrollbar-width:none;-ms-overflow-style:none}.hide-scrollbar::-webkit-scrollbar{display:none}}.edge-indicator-left{background:linear-gradient(90deg,#3b82f633,#0000 20px)}.edge-indicator-right{background:linear-gradient(270deg,#3b82f633,#0000 20px)}.pull-to-refresh{pointer-events:none;z-index:100;height:100px;position:fixed;top:0;left:0;right:0}.elastic-scroll{overscroll-behavior-y:contain;-webkit-overflow-scrolling:touch}.bottom-nav-elevated{box-shadow:0 -4px 6px -1px #0000001a,0 -2px 4px -1px #0000000f}.fab-primary{bottom:calc(80px + env(safe-area-inset-bottom));z-index:45;transition:transform .3s cubic-bezier(.4,0,.2,1);position:fixed;left:50%;transform:translate(-50%)}.fab-primary.fab-hidden{transform:translate(-50%)translateY(150px)}.touch-target{justify-content:center;align-items:center;min-width:44px;min-height:44px;display:flex}@media (hover:none) and (pointer:coarse){[class*=hover\:]:hover{background-color:#0000!important}button:active,a:active{opacity:.9}}.no-select{-webkit-touch-callout:none;-webkit-user-select:none;user-select:none}@keyframes haptic-feedback{0%{transform:scale(1)}50%{transform:scale(.97)}to{transform:scale(1)}}.haptic-feedback{animation:.1s ease-in-out haptic-feedback}@media (orientation:landscape) and (max-height:500px){.mobile-fullscreen{height:100vh!important}.hide-in-landscape-mobile{display:none}.compact-in-landscape{padding-top:.5rem;padding-bottom:.5rem}}@media (max-width:768px){*{animation-duration:.2s!important}.gpu-accelerated{will-change:transform;transform:translateZ(0)}}.custom-scrollbar-mobile{scrollbar-width:thin;scrollbar-color:#9ca3af4d transparent}.custom-scrollbar-mobile::-webkit-scrollbar{width:4px}.custom-scrollbar-mobile::-webkit-scrollbar-track{background:0 0}.custom-scrollbar-mobile::-webkit-scrollbar-thumb{background-color:#9ca3af4d;border-radius:2px}@media (max-width:768px){input[type=text],input[type=email],input[type=password],input[type=number],input[type=tel],input[type=url],textarea,select{font-size:16px!important}}
