.touch-target{display:flex;min-height:44px;min-width:44px;align-items:center;justify-content:center}.mobile-input{height:3rem;border-radius:var(--radius);border-width:2px;padding-left:1rem;padding-right:1rem;font-size:1rem;line-height:1.5rem}.mobile-input:focus{border-color:hsl(var(--primary));--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000);--tw-ring-color:hsl(var(--primary)/0.2)}.mobile-button{height:3rem;border-radius:var(--radius);padding-left:1.5rem;padding-right:1.5rem;font-size:1rem;line-height:1.5rem;font-weight:500;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.2s}.mobile-button:active{--tw-scale-x:.95;--tw-scale-y:.95;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.mobile-card{border-radius:.75rem;border-width:1px;border-color:hsl(var(--border)/.5);background-color:hsl(var(--card));padding:1rem;--tw-shadow:0 1px 2px 0 rgba(0,0,0,.05);--tw-shadow-colored:0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.mobile-text-xs{font-size:.75rem;line-height:1rem}@media (min-width:640px){.mobile-text-xs{font-size:.875rem;line-height:1.25rem}}.mobile-text-sm{font-size:.875rem;line-height:1.25rem}@media (min-width:640px){.mobile-text-sm{font-size:1rem;line-height:1.5rem}}.mobile-text-base{font-size:1rem;line-height:1.5rem}@media (min-width:640px){.mobile-text-base{font-size:1.125rem;line-height:1.75rem}}.mobile-text-lg{font-size:1.125rem;line-height:1.75rem}@media (min-width:640px){.mobile-text-lg{font-size:1.25rem;line-height:1.75rem}}.mobile-text-xl{font-size:1.25rem;line-height:1.75rem}@media (min-width:640px){.mobile-text-xl{font-size:1.5rem;line-height:2rem}}.mobile-p-sm{padding:.75rem}@media (min-width:640px){.mobile-p-sm{padding:1rem}}@media (min-width:768px){.mobile-p-sm{padding:1.5rem}}.mobile-p-md{padding:1rem}@media (min-width:640px){.mobile-p-md{padding:1.5rem}}@media (min-width:768px){.mobile-p-md{padding:2rem}}.mobile-m-sm{margin:.75rem}@media (min-width:640px){.mobile-m-sm{margin:1rem}}@media (min-width:768px){.mobile-m-sm{margin:1.5rem}}.mobile-gap-sm{gap:.75rem}@media (min-width:640px){.mobile-gap-sm{gap:1rem}}@media (min-width:768px){.mobile-gap-sm{gap:1.5rem}}.mobile-grid-1{display:grid;grid-template-columns:repeat(1,minmax(0,1fr))}@media (min-width:640px){.mobile-grid-1{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (min-width:1024px){.mobile-grid-1{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (min-width:1280px){.mobile-grid-1{grid-template-columns:repeat(4,minmax(0,1fr))}}.mobile-grid-2{display:grid;grid-template-columns:repeat(1,minmax(0,1fr))}@media (min-width:768px){.mobile-grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}}.mobile-grid-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}@media (min-width:768px){.mobile-grid-stats{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (min-width:1024px){.mobile-grid-stats{grid-template-columns:repeat(5,minmax(0,1fr))}}.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)}.mobile-scroll{overflow:auto;-webkit-overflow-scrolling:touch;scroll-behavior:smooth}.hide-scrollbar{-ms-overflow-style:none;scrollbar-width:none}.hide-scrollbar::-webkit-scrollbar{display:none}@media (max-width:768px){.mobile-hide-tooltip [role=tooltip]{display:none!important}}.touch-feedback{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.touch-feedback:active{--tw-scale-x:.95;--tw-scale-y:.95;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));background-color:hsl(var(--accent)/.5)}@media (prefers-reduced-motion:no-preference){.mobile-animate-in{animation:mobile-fade-in .3s ease-out}}@keyframes mobile-fade-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.mobile-truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media (min-width:640px){.mobile-truncate{white-space:normal}}.mobile-only{display:block}@media (min-width:640px){.mobile-only{display:none}}.desktop-only{display:none}@media (min-width:640px){.desktop-only{display:block}}.tablet-up{display:none}@media (min-width:768px){.tablet-up{display:block}}.mobile-shadow{--tw-shadow:0 1px 2px 0 rgba(0,0,0,.05);--tw-shadow-colored:0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}@media (min-width:640px){.mobile-shadow{--tw-shadow:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -2px rgba(0,0,0,.1);--tw-shadow-colored:0 4px 6px -1px var(--tw-shadow-color),0 2px 4px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}}@media (min-width:1024px){.mobile-shadow{--tw-shadow:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -4px rgba(0,0,0,.1);--tw-shadow-colored:0 10px 15px -3px var(--tw-shadow-color),0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}}.mobile-rounded{border-radius:var(--radius)}@media (min-width:640px){.mobile-rounded{border-radius:.75rem}}input,select,textarea{font-size:16px}@media screen and (max-width:768px){input,select,textarea{font-size:16px!important}}