@keyframes fadeUp{0%{opacity:0;transform:translateY(16px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.animate-fade-up,.animate-fade-up-stagger{opacity:0;animation:fadeUp .5s cubic-bezier(.22,1,.36,1) both}.animate-fade-up-stagger{animation-delay:calc(var(--i, 0)*.1s)}@keyframes slideInRight{0%{opacity:0;transform:translateX(20px)}to{opacity:1;transform:translateX(0)}}.animate-slide-in-right{animation:slideInRight .6s cubic-bezier(.22,1,.36,1) both}@keyframes skeletonShimmer{0%{background-position:-400px 0}to{background-position:400px 0}}.skeleton-bone{background:linear-gradient(90deg,rgba(255,255,255,.06) 25%,rgba(255,255,255,.14) 37%,rgba(255,255,255,.06) 63%);background-size:800px 100%;animation:skeletonShimmer 1.6s ease-in-out infinite;border-radius:6px;box-shadow:0 1px 6px rgba(0,0,0,.18)}@keyframes fadeOut{0%{opacity:1}to{opacity:0}}.animate-fade-out{animation:fadeOut .2s ease-out forwards}@keyframes tabContentEnter{0%{opacity:0;transform:translateY(12px) scale(.99)}to{opacity:1;transform:translateY(0) scale(1)}}[data-slot=tabs-content][data-state=inactive]{display:none}[data-slot=tabs-content][data-state=active]{animation:tabContentEnter .25s cubic-bezier(.22,1,.36,1) both}@keyframes wishlistModalFadeIn{0%{opacity:0}to{opacity:1}}@keyframes wishlistModalSlideUp{0%{opacity:0;transform:translateY(20px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes spinIcon{to{transform:rotate(1turn)}}.btn-spinner{animation:spinIcon .75s linear infinite;display:block}@keyframes txRippleExpand{0%{clip-path:circle(0 at var(--tx-x) var(--tx-y))}to{clip-path:circle(150vmax at var(--tx-x) var(--tx-y))}}@keyframes txRippleFade{0%{opacity:1}to{opacity:0}}.page-tx-overlay{position:fixed;inset:0;background:#fff;z-index:9999;pointer-events:none}.page-tx-overlay--expanding{animation:txRippleExpand .55s cubic-bezier(.4,0,.2,1) both}.page-tx-overlay--covering,.page-tx-overlay--fading{clip-path:circle(150vmax at var(--tx-x) var(--tx-y))}.page-tx-overlay--fading{animation:txRippleFade .4s ease-out forwards}@keyframes panelSlideIn{0%{transform:translateX(-100%)}to{transform:translateX(0)}}@keyframes panelSlideOut{0%{transform:translateX(0)}to{transform:translateX(100%)}}.col-tx-overlay{position:fixed;inset:0;z-index:9999;pointer-events:none;overflow:hidden}.col-tx-panel{position:absolute;inset:0;background-color:#1f1b31;transform:translateX(-100%);will-change:transform}.col-tx-overlay--dark .col-tx-panel{background:linear-gradient(135deg,#1f1b31,#1d405a)}.col-tx-overlay--light .col-tx-panel{background:linear-gradient(135deg,#e1e1e1,#d0cfcc)}.col-tx-overlay--columns-in .col-tx-panel{animation:panelSlideIn .55s cubic-bezier(.65,0,.35,1) forwards}.col-tx-overlay--columns-covering .col-tx-panel{transform:translateX(0)}.col-tx-overlay--columns-out .col-tx-panel{transform:translateX(0);animation:panelSlideOut .55s cubic-bezier(.65,0,.35,1) forwards}.col-tx-logo{position:fixed;inset:0;z-index:10000;display:flex;align-items:center;justify-content:center;pointer-events:none}.col-tx-logo__group{position:relative;width:clamp(160px,28vw,320px);aspect-ratio:656.76/169.66}.col-tx-logo__dot,.col-tx-logo__letter{position:absolute;inset:0;width:100%;height:100%;overflow:visible;will-change:transform,opacity,filter}@keyframes logoLetterIn{0%{opacity:0;transform:translateY(18px) scale(.92);filter:blur(5px)}60%{filter:blur(0)}to{opacity:1;transform:translateY(0) scale(1);filter:blur(0)}}.col-tx-logo__letter{opacity:0;animation:logoLetterIn .45s cubic-bezier(.34,1.56,.64,1) both;animation-delay:calc(var(--i)*70ms)}@keyframes logoDotArrive{0%{opacity:0;transform:translateX(-48px) translateY(0) scale(.7)}55%{opacity:1;transform:translateX(0) translateY(-9px) scale(1.08)}78%{transform:translateX(0) translateY(2px) scale(.98)}to{opacity:1;transform:translateX(0) translateY(0) scale(1)}}@keyframes logoDotBreathe{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.05);opacity:.88}}.col-tx-logo__dot{opacity:0;transform-origin:99.2% 93.4%;animation:logoDotArrive .6s cubic-bezier(.22,1,.36,1) .52s both,logoDotBreathe 1.8s ease-in-out 1.4s infinite}@keyframes logoRing{0%{transform:scale(.4);opacity:.55}to{transform:scale(2.1);opacity:0}}.col-tx-logo__ring{position:absolute;left:99.2%;top:93.4%;width:14%;aspect-ratio:1;margin:-7% 0 0 -7%;border-radius:50%;border:2px solid #e73440;opacity:0;will-change:transform,opacity;animation:logoRing .5s ease-out .87s forwards}@keyframes logoExit{0%{opacity:1;transform:translateX(0) scale(1)}to{opacity:0;transform:translateX(26px) scale(1.02)}}.col-tx-logo--exit{animation:logoExit .5s cubic-bezier(.65,0,.35,1) forwards}@keyframes logoPulse{0%,to{opacity:.4}50%{opacity:1}}.auth-page-loader{position:fixed;inset:0;z-index:9999;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#e1e1e1,#d0cfcc);pointer-events:none}.auth-page-loader__logo{width:clamp(160px,28vw,320px);height:auto;animation:logoPulse 1.4s ease-in-out infinite}.auth-page-loader--fading{animation:fadeOut .25s ease-out forwards}@media(prefers-reduced-motion:reduce){.auth-page-loader__logo{animation:none;opacity:.9}.col-tx-logo__dot,.col-tx-logo__letter{animation:none;opacity:1;filter:none}.col-tx-logo__ring{display:none}.col-tx-logo--exit{animation:fadeOut .25s ease-out forwards}.col-tx-overlay--columns-in .col-tx-panel{animation:none;transform:translateX(0)}.col-tx-overlay--columns-out .col-tx-panel{animation:fadeOut .3s ease-out forwards;transform:translateX(0)}}