.card-flip-container{perspective:1200px;width:100%;will-change:transform}.card-flip-inner{position:relative;width:100%;transform-style:preserve-3d;transition:transform .45s cubic-bezier(.22,.61,.36,1)}.card-flip-inner.flipped{transform:rotateY(180deg)}.card-back,.card-front{backface-visibility:hidden;-webkit-backface-visibility:hidden;width:100%}.card-back{position:absolute;top:0;left:0;transform:rotateY(180deg)}.section-detail-enter{animation:slideIn .35s cubic-bezier(.22,.61,.36,1) forwards}.section-detail-exit{animation:slideOut .25s cubic-bezier(.22,.61,.36,1) forwards}@keyframes slideIn{0%{transform:translateX(30%);opacity:0}to{transform:translateX(0);opacity:1}}@keyframes slideOut{0%{transform:translateX(0);opacity:1}to{transform:translateX(-30%);opacity:0}}.section-swipe-left{animation:swipeLeft .3s cubic-bezier(.22,.61,.36,1) forwards}.section-swipe-right{animation:swipeRight .3s cubic-bezier(.22,.61,.36,1) forwards}@keyframes swipeLeft{0%{transform:translateX(0);opacity:1}to{transform:translateX(-100%);opacity:0}}@keyframes swipeRight{0%{transform:translateX(0);opacity:1}to{transform:translateX(100%);opacity:0}}a,button{transition:opacity .15s ease,transform .15s ease,background-color .2s ease,color .2s ease}.feed-fade-in{animation:feedFadeIn .4s cubic-bezier(.22,.61,.36,1) forwards}@keyframes feedFadeIn{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes sheetUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.skeleton{background:linear-gradient(90deg,#ebe8e1 25%,#f3f1ec 50%,#ebe8e1 75%);background-size:200% 100%;animation:shimmer 1.5s ease-in-out infinite;border-radius:6px}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.refresh-spin{animation:spin .8s linear infinite}@keyframes bounceHint{0%,to{transform:translateY(0)}50%{transform:translateY(6px)}}.bounce-hint{animation:bounceHint 2s ease-in-out infinite}.hide-scrollbar::-webkit-scrollbar{display:none}.snap-feed-container{position:fixed;top:52px;left:0;right:0;bottom:0;overflow-y:auto;overflow-x:hidden;scroll-snap-type:y mandatory;-webkit-overflow-scrolling:touch;overscroll-behavior-y:contain;background-color:#faf9f6}.snap-feed-container.scroll-locked{overflow-y:hidden;scroll-snap-type:none}.snap-feed-item{scroll-snap-align:start;scroll-snap-stop:always;height:calc(100dvh - 52px - 48px - env(safe-area-inset-bottom));overflow:hidden;position:relative;padding-top:44px}.snap-feed-item .card-flip-container,.snap-feed-item .card-flip-inner,.snap-feed-item .card-front,.snap-feed-item>*{height:100%}.snap-feed-item .card-back{height:100%;overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain}.snap-feed-terminal{display:flex;align-items:center;justify-content:center}.snap-category-overlay{position:fixed;top:52px;left:0;right:0;z-index:15;background:linear-gradient(180deg,hsla(45,29%,97%,.97),hsla(45,29%,97%,.95) 85%,hsla(45,29%,97%,0));pointer-events:none}.snap-category-overlay>*{pointer-events:auto}