:root{--background:#f5f5f7;--foreground:#1d1d1f;--card:#fff;--card-foreground:#1d1d1f;--popover:#fff;--popover-foreground:#1d1d1f;--primary:#1d1d1f;--primary-foreground:#fff;--secondary:#e8e8ed;--secondary-foreground:#1d1d1f;--muted:#e8e8ed;--muted-foreground:#6e6e73;--accent:#e5e5ea;--accent-foreground:#1d1d1f;--border:#00000014;--input:#0000001a;--ring:#1d1d1f;--sidebar:#f5f5f7;--sidebar-foreground:#1d1d1f;--sidebar-border:#0000000f;--fill-input:#0000000a;--fill-panel:#f5f5f7e0;--line-soft:#0000000d;--line:#00000017;--line-strong:#00000029;--skeleton-a:#e8e8ed;--skeleton-b:#dcdce2;--shadow-card:0 2px 10px -2px #0000000d,0 1px 3px 0 #0000000a}.dark{--background:#0d0d0d;--foreground:#fafafa;--card:#141414;--card-foreground:#fafafa;--popover:#141414;--popover-foreground:#fafafa;--primary:#fff;--primary-foreground:#0a0a0a;--secondary:#1a1a1a;--secondary-foreground:#fafafa;--muted:#1a1a1a;--muted-foreground:#a1a1aa;--accent:#262626;--accent-foreground:#fafafa;--border:#ffffff1a;--input:#ffffff1f;--ring:#fff;--sidebar:#0f0f0f;--sidebar-foreground:#fafafa;--sidebar-border:#ffffff14;--fill-input:#262626b3;--fill-panel:#101010fa;--line-soft:#ffffff0f;--line:#ffffff17;--line-strong:#ffffff26;--skeleton-a:#1a1919;--skeleton-b:#262626;--shadow-card:none}.dark.dark-surface,body{background-color:var(--background);color:var(--foreground)}:root{--font-heading:var(--font-heading,"Manrope",sans-serif);--font-sans:var(--font-sans,"Inter",sans-serif)}.font-heading{font-family:var(--font-heading),"Manrope",sans-serif}.snap-feed{scroll-snap-type:y mandatory;overscroll-behavior-y:contain;overflow-y:scroll}.snap-item{scroll-snap-align:start;scroll-snap-stop:always}*{-webkit-tap-highlight-color:transparent}@keyframes gradient-shift{0%{background-position:0%}50%{background-position:100%}to{background-position:0%}}.btn-gradient-animated{background:linear-gradient(270deg,var(--foreground),color-mix(in srgb,var(--foreground)80%,var(--background)),color-mix(in srgb,var(--foreground)60%,var(--background)),var(--foreground));background-size:300% 300%;animation:4s infinite gradient-shift}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.skeleton{background:linear-gradient(90deg,var(--skeleton-a)25%,var(--skeleton-b)50%,var(--skeleton-a)75%);background-size:200% 100%;animation:1.5s infinite shimmer}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.animate-fade-in-up{animation:.5s forwards fadeInUp}.stagger-children>:first-child{animation-delay:0s}.stagger-children>:nth-child(2){animation-delay:60ms}.stagger-children>:nth-child(3){animation-delay:.12s}.stagger-children>:nth-child(4){animation-delay:.18s}.stagger-children>:nth-child(5){animation-delay:.24s}.stagger-children>:nth-child(6){animation-delay:.3s}.stagger-children>:nth-child(7){animation-delay:.36s}.stagger-children>:nth-child(8){animation-delay:.42s}img{transition:opacity .3s}.scrollbar-hidden{-ms-overflow-style:none;scrollbar-width:none}.scrollbar-hidden::-webkit-scrollbar{display:none}@keyframes likePop{0%{opacity:0;transform:scale(.2)}30%{opacity:1;transform:scale(1.15)}60%{opacity:1;transform:scale(.95)}80%{opacity:.8;transform:scale(1)}to{opacity:0;transform:scale(1)}}.touch-pan-x{touch-action:pan-x}:root{--glow:0 4px 20px #0000000f;--glow-sm:0 2px 8px #0000000a;--nav-shadow:0 8px 30px -4px #00000014,0 2px 8px -2px #0000000a;--sidebar-bg:#f5f5f7d9;--sheet-shadow:#0000001f}.dark{--glow:0 0 30px #ffffff1f,0 4px 24px #ffffff14;--glow-sm:0 0 12px #ffffff1a,0 2px 8px #ffffff0f;--nav-shadow:0 8px 40px #0009;--sidebar-bg:#0d0d0db3;--sheet-shadow:#000000a6}.gradient-primary{background:linear-gradient(135deg,var(--primary)0%,color-mix(in srgb,var(--primary)78%,var(--background))100%)}.gradient-primary-text{background:linear-gradient(135deg,var(--foreground)0%,color-mix(in srgb,var(--foreground)55%,var(--background))100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.glow-primary{box-shadow:var(--glow)}.glow-primary-sm{box-shadow:var(--glow-sm)}.glass{background:color-mix(in srgb,var(--card)72%,transparent)}.glass-light{background:color-mix(in srgb,var(--foreground)8%,transparent)}.glass-strong{background:color-mix(in srgb,var(--card)92%,transparent)}
