@tailwind base;@tailwind components;@tailwind utilities;@layer base{*{-webkit-tap-highlight-color:transparent}body{@apply font-sans antialiased;@apply bg-background-light-secondary dark:bg-background-dark-primary;@apply text-text-light-primary dark:text-text-dark-primary;overscroll-behavior-y:none}.hide-scrollbar::-webkit-scrollbar{display:none}.hide-scrollbar{-ms-overflow-style:none;scrollbar-width:none}}@layer components{.btn-primary{@apply bg-gradient-to-br from-primary to-primary-dark;@apply text-white font-semibold;@apply rounded-md px-6 py-3;@apply shadow-md hover:shadow-lg;@apply transition-all duration-base;@apply active:scale-95;}.btn-secondary{@apply bg-white dark:bg-background-dark-secondary;@apply text-text-light-primary dark:text-text-dark-primary;@apply border border-gray-300 dark:border-gray-700;@apply font-medium;@apply rounded-md px-6 py-3;@apply transition-all duration-base;@apply hover:bg-gray-50 dark:hover:bg-background-dark-tertiary;@apply active:scale-95;}.input-base{@apply w-full;@apply bg-background-light-secondary dark:bg-background-dark-secondary;@apply text-text-light-primary dark:text-text-dark-primary;@apply border-0 focus:ring-2 focus:ring-primary;@apply rounded-md px-4 py-3;@apply transition-all duration-base;@apply placeholder:text-text-light-tertiary dark:placeholder:text-text-dark-tertiary;}.card{@apply bg-white dark:bg-background-dark-secondary;@apply rounded-lg p-4;@apply shadow-md;@apply transition-all duration-base;}.chat-bubble-ai{@apply bg-background-light-secondary dark:bg-background-dark-tertiary;@apply text-text-light-primary dark:text-text-dark-primary;@apply rounded-xl rounded-tl-sm;@apply px-4 py-3;@apply shadow-sm;@apply max-w-[80%];}.chat-bubble-user{@apply bg-gradient-to-br from-primary to-primary-dark;@apply text-white;@apply rounded-xl rounded-br-sm;@apply px-4 py-3;@apply shadow-sm;@apply max-w-[80%];}.match-circle{@apply relative;@apply w-16 h-16 rounded-full;@apply bg-gradient-to-br from-primary to-primary-dark;@apply flex flex-col items-center justify-center;@apply shadow-glow;@apply border-4 border-white dark:border-background-dark-primary;}.avatar{@apply rounded-full;@apply object-cover;}.avatar-container{@apply relative;@apply rounded-full;@apply border-2;@apply shadow-sm;}.status-dot{@apply absolute bottom-0 right-0;@apply w-3 h-3 rounded-full;@apply border-2 border-white dark:border-background-dark-primary;}.tag{@apply inline-flex items-center;@apply bg-background-light-tertiary dark:bg-background-dark-tertiary;@apply text-text-light-secondary dark:text-text-dark-secondary;@apply text-sm font-medium;@apply rounded-sm px-3 py-1.5;@apply transition-all duration-base;}.tag-active{@apply bg-primary text-white;}.progress-bar{@apply w-full h-2 bg-gray-200 dark:bg-gray-700 rounded-full overflow-hidden;}.progress-fill{@apply h-full bg-gradient-to-r from-primary to-primary-light rounded-full;@apply transition-all duration-slow;}.loading-dots{@apply flex space-x-1;}.loading-dot{@apply w-2 h-2 bg-gray-400 dark:bg-gray-600 rounded-full;animation:bounce 1.4s infinite ease-in-out both}.loading-dot:nth-child(1){animation-delay:-.32s}.loading-dot:nth-child(2){animation-delay:-.16s}}@layer utilities{.text-gradient{@apply bg-gradient-to-r from-primary to-primary-dark;@apply bg-clip-text text-transparent;}.glass{@apply backdrop-blur-md bg-white/80 dark:bg-background-dark-primary/80;}.safe-top{padding-top:env(safe-area-inset-top)}.safe-bottom{padding-bottom:env(safe-area-inset-bottom)}}@keyframes bounce{0%,80%,to{transform:scale(0)}40%{transform:scale(1)}}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes slideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}.animate-fade-in{animation:fadeIn .3s ease-out}.animate-slide-up{animation:slideUp .3s ease-out}
