:root{--animation-fast:150ms;--animation-normal:250ms;--animation-slow:350ms;--bg-primary:#ffffff;--bg-secondary:#f9fafb;--text-primary:#111827;--text-secondary:#6b7280;--border-color:#e5e7eb;--shadow-sm:0 1px 2px 0 rgb(0 0 0/0.05);--shadow-md:0 4px 6px -1px rgb(0 0 0/0.1);--shadow-lg:0 10px 15px -3px rgb(0 0 0/0.1)}[data-theme=dark]{--bg-primary:#1f2937;--bg-secondary:#111827;--text-primary:#f9fafb;--text-secondary:#9ca3af;--border-color:#374151;--shadow-sm:0 1px 2px 0 rgb(0 0 0/0.2);--shadow-md:0 4px 6px -1px rgb(0 0 0/0.3);--shadow-lg:0 10px 15px -3px rgb(0 0 0/0.4)}.no-animation{animation:none!important;transition:none!important}@media (prefers-reduced-motion:reduce){*{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.transition-colors{transition:color var(--animation-fast) ease,background-color var(--animation-fast) ease,border-color var(--animation-fast) ease}.transition-transform{transition:transform var(--animation-normal) ease}.transition-opacity{transition:opacity var(--animation-fast) ease}.optimized-scroll{overflow-y:auto;-webkit-overflow-scrolling:touch;scroll-behavior:smooth}.optimized-scroll::-webkit-scrollbar{width:6px;height:6px}.optimized-scroll::-webkit-scrollbar-track{background:transparent}.optimized-scroll::-webkit-scrollbar-thumb{background:var(--text-secondary);border-radius:3px;opacity:.5}.card-hover{transition:transform var(--animation-fast) ease,box-shadow var(--animation-fast) ease}.card-hover:hover{transform:translateY(-2px);box-shadow:var(--shadow-md)}.btn-press{transition:transform var(--animation-fast) ease}.btn-press:active{transform:scale(.98)}@keyframes skeleton-pulse{0%{opacity:1}50%{opacity:.5}to{opacity:1}}.skeleton{animation:skeleton-pulse 2s ease-in-out infinite;background:linear-gradient(90deg,var(--bg-secondary) 25%,var(--border-color) 50%,var(--bg-secondary) 75%);background-size:200% 100%}.message-enter{opacity:0;transform:translateY(10px)}.message-enter-active{opacity:1;transform:translateY(0);transition:opacity var(--animation-fast) ease,transform var(--animation-fast) ease}.modal-backdrop{background:rgba(0,0,0,.5);transition:opacity var(--animation-normal) ease}.modal-content{transform:scale(.95);opacity:0;transition:transform var(--animation-normal) ease,opacity var(--animation-normal) ease}.modal-content.open{transform:scale(1);opacity:1}.swipe-card{transition:transform var(--animation-normal) cubic-bezier(.4,0,.2,1)}.swipe-card.dragging{transition:none}.search-result-item{opacity:0;transform:translateY(20px)}.search-result-item.visible{opacity:1;transform:translateY(0);transition:opacity var(--animation-normal) ease,transform var(--animation-normal) ease}.search-result-item:first-child{transition-delay:0s}.search-result-item:nth-child(2){transition-delay:50ms}.search-result-item:nth-child(3){transition-delay:.1s}.search-result-item:nth-child(4){transition-delay:.15s}.search-result-item:nth-child(n+5){transition-delay:.2s}.lazy-image{opacity:0;transition:opacity var(--animation-normal) ease}.lazy-image.loaded{opacity:1}.gpu-accelerated{transform:translateZ(0);backface-visibility:hidden}.no-select{user-select:none;-webkit-user-select:none}.pointer-events-none{pointer-events:none}@media (max-width:768px){:root{--animation-fast:100ms;--animation-normal:200ms;--animation-slow:300ms}.desktop-only-animation{animation:none!important;transition:opacity var(--animation-fast) ease!important}}[data-theme=dark] .card{background:var(--bg-primary);border:1px solid var(--border-color)}[data-theme=dark] .btn-primary{background:#dc2626;color:white}[data-theme=dark] .btn-primary:hover{background:#b91c1c}[data-theme=dark] input,[data-theme=dark] textarea{border-color:var(--border-color)}[data-theme=dark] .message-bubble,[data-theme=dark] input,[data-theme=dark] textarea{background:var(--bg-secondary);color:var(--text-primary)}[data-theme=dark] .message-bubble.own{background:#1e40af;color:white}