html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:transparent}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}*,:before,:after{transition-timing-function:cubic-bezier(.4,0,.2,1)}a,button,input,textarea,select,[role=button],[role=link]{touch-action:manipulation;transition-property:color,background-color,border-color,opacity,transform,box-shadow;transition-duration:.2s}.card,[class*=card],article,section>div,.group{transition:transform .3s cubic-bezier(.4,0,.2,1),box-shadow .3s cubic-bezier(.4,0,.2,1),border-color .2s}.will-change-transform,[class*=animate-],.transition-all,.hover\:scale,.group-hover\:scale{will-change:transform;backface-visibility:hidden;transform:translateZ(0)}.will-change-opacity{will-change:opacity}img{image-rendering:-webkit-optimize-contrast;transform:translateZ(0)}.touch-target,button:not([class*=ghost]):not([class*=link]),[role=button],.like-button,.vote-button,.icon-button{min-width:44px!important;min-height:44px!important}a,button,input,textarea,select{touch-action:manipulation}.overflow-y-auto,.overflow-x-auto,.overflow-auto,[class*=scroll]{-webkit-overflow-scrolling:touch;scroll-behavior:smooth}main,article,.content{contain:layout style paint}@media (hover:none) and (pointer:coarse){:hover{transition-duration:0s!important}:active{transition-duration:.1s!important}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}img[loading=lazy]{opacity:0;transition:opacity .4s ease-in-out}img[loading=lazy].loaded,img[loading=lazy]:not([src=""]){opacity:1}img,video,iframe{max-width:100%;height:auto}[role=dialog],[data-state=open],.dialog-content,.modal{will-change:transform,opacity;transform:translateZ(0)}.skeleton,[class*=skeleton]{position:relative;overflow:hidden}.skeleton:after{content:"";background:linear-gradient(90deg,#0000,#ffffff1a,#0000);animation:1.5s infinite skeleton-shimmer;position:absolute;inset:0;transform:translateZ(0)}@keyframes skeleton-shimmer{0%{transform:translate(-100%)}to{transform:translate(100%)}}.gpu-smooth{backface-visibility:hidden;perspective:1000px;will-change:transform;transform:translateZ(0)}.click-feedback:active{transform:scale(.97);transition-duration:50ms!important}.fade-transition{transition:opacity .3s cubic-bezier(.4,0,.2,1)}.glass-premium{background:rgba(var(--background),.7);-webkit-backdrop-filter:blur(24px)saturate(180%);border:1px solid #ffffff1a;box-shadow:0 8px 32px -8px #0000004d,inset 0 1px #ffffff0d}.dark .glass-premium{background:#0009;border:1px solid #ffffff0d;box-shadow:0 8px 32px -8px #00000080,inset 0 1px #ffffff05}.fab-premium{bottom:calc(env(safe-area-inset-bottom,0px) + 80px);background:linear-gradient(135deg,rgb(var(--primary))0%,rgb(var(--accent))100%);color:#fff;width:56px;height:56px;box-shadow:0 8px 24px -4px rgba(var(--primary),.4),0 4px 8px -2px #0003;z-index:99;will-change:transform,box-shadow;border-radius:50%;justify-content:center;align-items:center;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex;position:fixed;right:16px;transform:translateZ(0)}.fab-premium:hover{box-shadow:0 12px 32px -4px rgba(var(--primary),.5),0 6px 12px -2px #00000040;transform:translateY(-2px)scale(1.05)}.fab-premium:active{box-shadow:0 4px 12px -2px rgba(var(--primary),.3),0 2px 4px -1px #00000026;transform:scale(.95)}.fab-hidden{opacity:0;pointer-events:none;transform:translateY(100px)scale(.8)}.bottom-sheet-premium{background:rgba(var(--card),.95);-webkit-backdrop-filter:blur(32px)saturate(180%);border-top-left-radius:24px;border-top-right-radius:24px;box-shadow:0 -16px 48px -8px #0000004d,inset 0 1px #ffffff1a}.bottom-sheet-handle{background:rgba(var(--muted-foreground),.3);border-radius:2px;width:36px;height:4px;margin:12px auto;transition:background .2s}.bottom-sheet-premium:hover .bottom-sheet-handle{background:rgba(var(--muted-foreground),.5)}.nav-item-glow{position:relative}.nav-item-glow:before{content:"";background:radial-gradient(circle,rgba(var(--primary),.2)0%,transparent 70%);opacity:0;pointer-events:none;border-radius:50%;transition:all .3s cubic-bezier(.4,0,.2,1);position:absolute;inset:-8px;transform:scale(.5)}.nav-item-glow:active:before{opacity:1;transform:scale(1)}@media (hover:none) and (pointer:coarse){.card-touch-feedback{transition:transform .1s,box-shadow .1s}.card-touch-feedback:active{transform:scale(.98);box-shadow:0 2px 8px -2px #0003}}.page-enter{opacity:0;transform:translateY(10px)}.page-enter-active{opacity:1;transition:all .3s cubic-bezier(.4,0,.2,1);transform:translateY(0)}.btn-premium{transition:all .2s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden}.btn-premium:after{content:"";opacity:0;background:linear-gradient(#fff3 0%,#0000 50%,#0000001a 100%);transition:opacity .15s;position:absolute;inset:0}.btn-premium:active:after{opacity:1}.btn-premium:active{transform:scale(.97)}.card-shine{position:relative;overflow:hidden}.card-shine:before{content:"";pointer-events:none;background:linear-gradient(90deg,#0000,#ffffff14,#0000);width:50%;height:100%;position:absolute;top:0;left:-100%;transform:skew(-15deg)}.card-shine:hover:before{animation:.8s ease-out card-shine-sweep}@keyframes card-shine-sweep{0%{left:-100%}to{left:150%}}.card-depth{transform-style:preserve-3d;transition:all .3s cubic-bezier(.4,0,.2,1)}.card-depth:hover{transform:translateY(-4px);box-shadow:0 20px 40px -15px #0000004d,0 4px 12px -4px #00000026}.dark .card-depth:hover{box-shadow:0 20px 40px -15px #00000080,0 4px 12px -4px #0000004d,0 0 0 1px #ffffff0d}.input-premium:focus{box-shadow:0 0 0 2px rgba(var(--primary),.2),0 4px 12px -4px #0000001a;border-color:rgb(var(--primary))}.icon-bounce{transition:transform .2s cubic-bezier(.34,1.56,.64,1)}.icon-bounce:hover{transform:scale(1.1)}.icon-bounce:active{transform:scale(.9)}.pulse-premium{animation:2s cubic-bezier(.4,0,.6,1) infinite pulse-premium}@keyframes pulse-premium{0%,to{opacity:1;transform:scale(1)}50%{opacity:.7;transform:scale(.98)}}.gradient-border{border-radius:12px;position:relative}.gradient-border:before{content:"";background:linear-gradient(45deg,rgb(var(--primary)),rgb(var(--accent)),rgb(var(--primary)));z-index:-1;opacity:0;background-size:200% 200%;border-radius:14px;transition:opacity .3s;animation:3s infinite gradient-shift;position:absolute;inset:-2px}.gradient-border:hover:before,.gradient-border:focus-within:before{opacity:1}@keyframes gradient-shift{0%{background-position:0%}50%{background-position:100%}to{background-position:0%}}.scroll-indicator{animation:2s ease-out infinite scroll-hint}@keyframes scroll-hint{0%,to{opacity:.8;transform:translateY(0)}50%{opacity:.4;transform:translateY(8px)}}.backdrop-premium{-webkit-backdrop-filter:blur(12px)saturate(150%);background:#00000080}.skeleton-premium{background:linear-gradient(90deg,rgba(var(--muted),.8)0%,rgba(var(--muted-foreground),.15)50%,rgba(var(--muted),.8)100%);border-radius:var(--radius,8px);background-size:300% 100%;animation:1.8s ease-in-out infinite skeleton-premium-shimmer}@keyframes skeleton-premium-shimmer{0%{background-position:100%}to{background-position:-100%}}.ripple-effect{position:relative;overflow:hidden}.ripple-effect:after{content:"";background:rgba(var(--primary),.3);border-radius:50%;width:0;height:0;transition:width .6s,height .6s;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.ripple-effect:active:after{width:300px;height:300px}
