@keyframes ios-spring{0%{transform:scale(.9);opacity:0}50%{transform:scale(1.02)}to{transform:scale(1);opacity:1}}@keyframes ios-spring-out{0%{transform:scale(1);opacity:1}to{transform:scale(.9);opacity:0}}@keyframes ios-slide-up{0%{transform:translateY(100%);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes ios-slide-down{0%{transform:translateY(0);opacity:1}to{transform:translateY(100%);opacity:0}}@keyframes ios-fade-blur{0%{opacity:0;-webkit-backdrop-filter:blur(0px);backdrop-filter:blur(0px)}to{opacity:1;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px)}}@keyframes ios-bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-5px)}}@keyframes ios-pulse-ring{0%{transform:scale(.8);opacity:0}50%{opacity:.5}to{transform:scale(1.5);opacity:0}}@keyframes ios-shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.animate-ios-spring{animation:ios-spring .4s cubic-bezier(.175,.885,.32,1.275) forwards}.animate-ios-spring-out{animation:ios-spring-out .25s cubic-bezier(.6,-.28,.735,.045) forwards}.animate-ios-slide-up{animation:ios-slide-up .35s cubic-bezier(.23,1,.32,1) forwards}.animate-ios-slide-down{animation:ios-slide-down .3s cubic-bezier(.6,-.28,.735,.045) forwards}.animate-ios-fade-blur{animation:ios-fade-blur .3s ease-out forwards}.animate-ios-bounce{animation:ios-bounce .6s cubic-bezier(.28,.84,.42,1)}.animate-ios-shimmer{background:linear-gradient(90deg,#fff0,#ffffff1a,#fff0);background-size:200% 100%;animation:ios-shimmer 1.5s infinite}.touch-none-highlight{-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none}.touch-optimized{touch-action:manipulation;-webkit-tap-highlight-color:transparent}.touch-target{min-width:44px;min-height:44px}.btn-ios-primary{@apply relative overflow-hidden rounded-xl font-semibold;@apply bg-white text-black;@apply active:scale-95 transition-transform duration-150;-webkit-tap-highlight-color:transparent}.btn-ios-primary:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:#0000;transition:background .15s}.btn-ios-primary:active:after{background:#0000001a}.btn-ios-secondary{@apply relative overflow-hidden rounded-xl font-semibold;@apply bg-white/10 text-white border border-white/20;@apply active:scale-95 transition-transform duration-150;-webkit-tap-highlight-color:transparent}.btn-ios-destructive{@apply relative overflow-hidden rounded-xl font-semibold;@apply bg-red-500/20 text-red-400 border border-red-500/30;@apply active:scale-95 transition-transform duration-150;}.btn-ios-icon{@apply w-11 h-11 flex items-center justify-center rounded-full;@apply bg-white/10 text-white/70;@apply active:bg-white/20 active:scale-95;@apply transition-all duration-150;-webkit-tap-highlight-color:transparent}.ios-modal-backdrop{@apply fixed inset-0 z-[100];background:#00000080;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.ios-modal{@apply fixed inset-x-4 bottom-4 z-[101];@apply bg-[#1c1c1e] rounded-[2rem] overflow-hidden;@apply shadow-2xl;max-height:calc(100vh - 120px);max-height:calc(100dvh - 120px)}.ios-modal-full{@apply fixed inset-0 z-[101];@apply bg-[#1c1c1e];padding-top:env(safe-area-inset-top);padding-bottom:env(safe-area-inset-bottom);padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right)}.ios-modal-handle{@apply w-9 h-1 bg-white/30 rounded-full mx-auto mt-2 mb-4;}.ios-action-sheet{@apply fixed inset-x-2 bottom-2 z-[101];@apply rounded-2xl overflow-hidden;padding-bottom:env(safe-area-inset-bottom)}.ios-action-sheet-item{@apply w-full py-4 px-4 text-center font-medium;@apply bg-[#1c1c1e]/95 text-white;@apply border-b border-white/5 last:border-0;@apply active:bg-white/10;-webkit-tap-highlight-color:transparent}.ios-action-sheet-cancel{@apply mt-2 rounded-2xl bg-[#1c1c1e]/95;@apply py-4 text-center font-semibold text-blue-400;@apply active:bg-white/10;}.ios-tab-bar{@apply fixed bottom-0 left-0 right-0 z-[90];@apply flex items-stretch justify-around;@apply bg-[#1c1c1e]/95 border-t border-white/10;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);padding-bottom:env(safe-area-inset-bottom)}.ios-tab-item{@apply flex-1 flex flex-col items-center justify-center py-2;@apply text-[10px] text-white/50;@apply active:text-white;-webkit-tap-highlight-color:transparent}.ios-tab-item.active{@apply text-white;}.ios-tab-item svg{@apply w-6 h-6 mb-0.5;}.ios-nav-bar{@apply fixed top-0 left-0 right-0 z-[90];@apply flex items-center justify-between px-4;@apply bg-[#1c1c1e]/95 border-b border-white/10;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);padding-top:env(safe-area-inset-top);min-height:calc(44px + env(safe-area-inset-top))}.ios-nav-title{@apply text-lg font-semibold text-white;}.ios-nav-button{@apply p-2 text-blue-400 font-medium;@apply active:opacity-50;-webkit-tap-highlight-color:transparent}.ios-list-group{@apply bg-[#1c1c1e] rounded-xl overflow-hidden mx-4 my-2;}.ios-list-item{@apply flex items-center px-4 py-3;@apply border-b border-white/5 last:border-0;@apply active:bg-white/5;-webkit-tap-highlight-color:transparent}.ios-list-item-text{@apply flex-1 text-white;}.ios-list-item-detail{@apply text-white/40 text-sm;}.ios-list-item-chevron{@apply text-white/30 ml-2;}.ios-input{@apply w-full px-4 py-3 rounded-xl;@apply bg-[#2c2c2e] text-white placeholder-white/40;@apply border border-transparent;@apply focus:border-blue-500 focus:outline-none;@apply transition-colors duration-200;font-size:16px}.ios-search{@apply w-full px-4 py-2.5 pl-10 rounded-xl;@apply bg-[#2c2c2e]/80 text-white placeholder-white/40;@apply border border-transparent;font-size:16px}.ios-toggle{@apply relative w-[51px] h-[31px] rounded-full;@apply bg-[#2c2c2e] transition-colors duration-200;-webkit-tap-highlight-color:transparent}.ios-toggle.active{@apply bg-green-500;}.ios-toggle:after{content:"";@apply absolute top-[2px] left-[2px] w-[27px] h-[27px];@apply bg-white rounded-full shadow-md;@apply transition-transform duration-200;}.ios-toggle.active:after{transform:translate(20px)}.safe-area-top{padding-top:env(safe-area-inset-top)}.safe-area-bottom{padding-bottom:env(safe-area-inset-bottom)}.safe-area-x{padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right)}.safe-area-all{padding-top:env(safe-area-inset-top);padding-bottom:env(safe-area-inset-bottom);padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right)}.mobile-hidden{@apply hidden sm:block;}.desktop-hidden{@apply block sm:hidden;}.mobile-stack{@apply flex flex-col sm:flex-row;}.ios-scroll{-webkit-overflow-scrolling:touch;overscroll-behavior:contain}.ios-scroll-no-bounce{-webkit-overflow-scrolling:touch;overscroll-behavior:none}.ios-scroll-x{@apply overflow-x-auto overflow-y-hidden;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain;scroll-snap-type:x mandatory}.ios-scroll-x>*{scroll-snap-align:start}.scrollbar-hide{-ms-overflow-style:none;scrollbar-width:none}.scrollbar-hide::-webkit-scrollbar{display:none}@media(max-width:639px){button,a,[role=button]{min-height:44px}.no-select{-webkit-user-select:none;user-select:none}}@supports (padding-top: env(safe-area-inset-top)){.notch-aware{padding-top:max(20px,env(safe-area-inset-top));padding-bottom:max(20px,env(safe-area-inset-bottom))}}@media(prefers-reduced-motion:reduce){.animate-ios-spring,.animate-ios-slide-up,.animate-ios-fade-blur,.animate-ios-bounce,.animate-ios-shimmer{animation:none;opacity:1;transform:none}}@tailwind base;@tailwind components;@tailwind utilities;html,body{overscroll-behavior-x:none;-webkit-overflow-scrolling:touch}@layer utilities{.no-scrollbar::-webkit-scrollbar{display:none}.no-scrollbar{-ms-overflow-style:none;scrollbar-width:none}.scrollbar-hide::-webkit-scrollbar{display:none}.scrollbar-hide{-ms-overflow-style:none;scrollbar-width:none}.custom-scrollbar::-webkit-scrollbar{width:6px;height:6px}.custom-scrollbar::-webkit-scrollbar-track{background:#0a0a0c}.custom-scrollbar::-webkit-scrollbar-thumb{background:#333;border-radius:3px}.custom-scrollbar::-webkit-scrollbar-thumb:hover{background:#555}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes scaleIn{0%{opacity:0;transform:translate(-50%,-50%) scale(.9)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes marquee-up{0%{transform:translateY(0)}to{transform:translateY(-33.33%)}}@keyframes marquee-down{0%{transform:translateY(-33.33%)}to{transform:translateY(0)}}.animate-marquee-slow{animation:marquee-up 60s linear infinite}.animate-marquee-reverse-slow{animation:marquee-down 70s linear infinite}@keyframes float-subtle{0%,to{transform:translateY(0) rotate(0)}50%{transform:translateY(-4px) rotate(.3deg)}}@supports (padding: max(0px)){.safe-area-inset-bottom{padding-bottom:max(1rem,env(safe-area-inset-bottom))}.safe-area-inset-top{padding-top:max(0px,env(safe-area-inset-top))}}@media(hover:none)and (pointer:coarse){button,[role=button],input[type=range]{min-height:44px;min-width:44px}.hover\:scale-105:hover,.hover\:scale-110:hover{transform:none}button:active,[role=button]:active{opacity:.8;transform:scale(.98)}}.no-select{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-touch-callout:none}.momentum-scroll{-webkit-overflow-scrolling:touch;scroll-behavior:smooth}.h-screen-safe{height:100vh;height:100dvh}@media screen and (max-width:640px){input[type=text],input[type=email],input[type=password],input[type=number],textarea,select{font-size:16px!important}}@media screen and (max-width:768px){.timeline-container{scroll-snap-type:x mandatory}.timeline-clip{scroll-snap-align:start}}:root{--label-width: 80px}@media screen and (max-width:640px){:root{--label-width: 32px}}input[type=range]{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent}input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;height:20px;width:20px;border-radius:50%;background:#fff;cursor:pointer;margin-top:-8px;box-shadow:0 0 10px #ffffff4d}input[type=range]::-webkit-slider-runnable-track{width:100%;height:4px;cursor:pointer;background:linear-gradient(to right,#9ca3af,#e5e7eb);border-radius:4px}input[type=range]:focus{outline:none}@media screen and (max-width:640px){input[type=range]::-webkit-slider-thumb{height:28px;width:28px;margin-top:-12px}input[type=range]::-webkit-slider-runnable-track{height:6px}}
