.line-clamp-2{-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.line-clamp-3{-webkit-line-clamp:3;line-clamp:3;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes slideIn{0%{opacity:0;transform:translate(-20px)}to{opacity:1;transform:translate(0)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes shimmer{0%{background-position:-200px 0}to{background-position:calc(200px + 100%) 0}}.animate-fadeIn{animation:.6s ease-out fadeIn}.animate-slideUp{animation:.6s ease-out slideUp}.animate-scaleIn{animation:.6s ease-out scaleIn}.animate-slideIn{animation:.6s ease-out slideIn}.animate-pulse{animation:2s cubic-bezier(.4,0,.6,1) infinite pulse}.animate-shimmer{background:linear-gradient(90deg, transparent, hsl(var(--muted) / .2), transparent);background-size:200px 100%;animation:2s linear infinite shimmer}.tyre-card{transition:all .3s cubic-bezier(.4,0,.2,1)}.tyre-card:hover{box-shadow:0 20px 25px -5px hsl(var(--muted) / .1), 0 10px 10px -5px hsl(var(--muted) / .04);transform:translateY(-4px)}.tyre-card:hover .tyre-image{transform:scale(1.05)}.tyre-image{transition:transform .3s}.filter-section{transition:all .3s}.filter-section.collapsed{opacity:0;transform:translate(-100%)}.custom-scrollbar::-webkit-scrollbar{width:6px}.custom-scrollbar::-webkit-scrollbar-track{background:0 0}.custom-scrollbar::-webkit-scrollbar-thumb{background:hsl(var(--muted-foreground) / .5);border-radius:3px}.custom-scrollbar::-webkit-scrollbar-thumb:hover{background:hsl(var(--muted-foreground) / .8)}.skeleton{background:linear-gradient(90deg, hsl(var(--muted)) 25%, hsl(var(--muted-foreground) / .1) 50%, hsl(var(--muted)) 75%);background-size:200% 100%;animation:1.5s infinite shimmer}.badge-animate{animation:.4s ease-out slideIn}.filter-badge{transition:all .2s}.filter-badge:hover{transform:scale(1.05)}.image-error{background:linear-gradient(135deg, hsl(var(--muted)) 0%, hsl(var(--border)) 100%);color:hsl(var(--muted-foreground));justify-content:center;align-items:center;display:flex}.modal-backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.modal-content{animation:.3s ease-out scaleIn}.compare-notification{animation:.4s ease-out slideUp}.price-highlight{position:relative}.price-highlight:after{content:"";opacity:.3;background:linear-gradient(90deg,#0000,currentColor,#0000);height:2px;position:absolute;bottom:-2px;left:0;right:0}.rating-star{transition:all .2s}.rating-star:hover{transform:scale(1.1)}.favorite-heart{transition:all .2s}.favorite-heart.active{animation:.4s ease-out pulse}.view-transition{transition:all .4s cubic-bezier(.4,0,.2,1)}.filter-chip{border:1px solid hsl(var(--primary) / .2);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);transition:all .2s ease-in-out;position:relative}.filter-chip:hover{box-shadow:0 4px 8px -2px hsl(var(--primary) / .25);border-color:hsl(var(--primary) / .3);transform:translateY(-1px)}.filter-chip button{border-radius:50%;padding:2px;transition:all .15s}.filter-chip button:hover{background-color:hsl(var(--primary) / .1);transform:scale(1.1)}.filter-chip span:first-of-type{text-transform:uppercase;letter-spacing:.025em;font-weight:600}.filter-chip{animation:.3s ease-out slideIn}.dark .filter-chip{border-color:hsl(var(--primary) / .3);background:hsl(var(--primary) / .15)}.dark .filter-chip:hover{background:hsl(var(--primary) / .2)}.tyre-card.out-of-stock{opacity:.75;filter:grayscale(.3)}.tyre-card.out-of-stock:hover{opacity:.9;filter:grayscale(.1)}.tyre-card.low-stock:before{content:"";background:linear-gradient(90deg, hsl(var(--chart-3)), hsl(var(--chart-4)));border-radius:8px 8px 0 0;height:3px;position:absolute;top:0;left:0;right:0}.tyre-card.seasonal:before{content:"";background:linear-gradient(90deg, hsl(var(--chart-1)), hsl(var(--primary)));border-radius:8px 8px 0 0;height:3px;position:absolute;top:0;left:0;right:0}@media (prefers-reduced-motion:reduce){.animate-fadeIn,.animate-slideUp,.animate-scaleIn,.animate-slideIn{animation:none}.tyre-card:hover{transform:none}}@media (prefers-color-scheme:dark){.skeleton{background:linear-gradient(90deg, hsl(var(--muted)) 25%, hsl(var(--muted-foreground) / .3) 50%, hsl(var(--muted)) 75%)}.image-error{background:linear-gradient(135deg, hsl(var(--muted)) 0%, hsl(var(--border)) 100%)}}@media print{.tyre-card{break-inside:avoid}.filter-section{display:none}}@media (max-width:768px){.tyre-card{margin-bottom:1rem}.animate-fadeIn{animation-duration:.3s}}@media (prefers-contrast:high){.tyre-card,.filter-badge{border-width:2px}}
