@tailwind base;@tailwind components;@tailwind utilities;@layer base{@apply bg-film text-sepia font-body;html{-webkit-tap-highlight-color:transparent}@apply font-display;*{box-sizing:border-box}@apply font-body;}@layer components{@apply bg-white/10 backdrop-blur-md border border-white/10 shadow-xl;@apply bg-black/40 backdrop-blur-md border border-white/10 shadow-2xl;@apply bg-flash text-film font-semibold px-6 py-3 rounded-xl shadow-lg hover:bg-flash-light hover:shadow-flash/30 hover:shadow-xl active:scale-[.97]hover:scale-[1.02]transition-all duration-200 cursor-pointer;@apply bg-transparent text-sepia font-medium px-6 py-3 rounded-xl border border-sepia/20 shadow-sm hover:border-flash/40 hover:text-flash active:scale-[.97]hover:scale-[1.02]transition-all duration-200 cursor-pointer;@apply text-sepia-muted hover:text-sepia transition-colors duration-200 cursor-pointer;@apply w-full bg-film-700 border border-film-500/60 rounded-xl px-4 py-3 text-sepia placeholder-sepia-muted/50 focus:outline-none focus:border-flash/60 focus:ring-2 focus:ring-flash/15 transition-all duration-200;@apply bg-film-800 border border-film-600 rounded-3xl shadow-2xl p-6;@apply bg-film-800 border border-film-600 rounded-2xl shadow-xl p-4;.text-gradient{background:linear-gradient(135deg,#b78656 0%,#d7b187 62%,#9f7448 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.shimmer-bg{background:linear-gradient(90deg,transparent 0%,rgba(199,155,106,.14) 50%,transparent 100%) 0 0/200% 100%;animation:1.8s linear infinite shimmer}.grain:after{content:"";pointer-events:none;border-radius:inherit;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noise)' opacity='0.04'/%3E%3C/svg%3E");position:absolute;top:0;bottom:0;left:0;right:0}@apply flex items-center gap-3 my-5;.divider:before,.divider:after{content:""}@apply flex-1 h-px bg-film-600;}.masonry-live .masonry-live-col{will-change:transform}.masonry-live .masonry-live-col:nth-child(odd){animation:55s linear infinite liveMasonryDriftUp}.masonry-live .masonry-live-col:nth-child(2n){animation:70s linear infinite liveMasonryDriftDown}@keyframes scrollUp{0%{transform:translateY(0)}to{transform:translateY(-50%)}}@keyframes shimmer{0%{background-position:-200%}to{background-position:200%}}@keyframes liveMasonryDriftUp{0%{transform:translateY(0)}50%{transform:translateY(-22px)}to{transform:translateY(0)}}@keyframes liveMasonryDriftDown{0%{transform:translateY(0)}50%{transform:translateY(16px)}to{transform:translateY(0)}}.vignette:before{content:"";pointer-events:none;z-index:1;background:radial-gradient(transparent 50%,rgba(12,10,9,.6) 100%);position:fixed;top:0;bottom:0;left:0;right:0}.scroll-col{animation:scrollUp var(--scroll-duration,35s)linear infinite;will-change:transform}.scroll-col-reverse{animation:scrollUp var(--scroll-duration,40s)linear infinite reverse;will-change:transform}.safe-bottom{padding-bottom:env(safe-area-inset-bottom,1rem)}.safe-top{padding-top:env(safe-area-inset-top,0)}.festoon-pendant{transform-origin:50% 0;animation:5.5s ease-in-out infinite festoon-sway}@keyframes festoon-sway{0%,to{transform:rotate(0)}28%{transform:rotate(2deg)}72%{transform:rotate(-1.6deg)}}