@keyframes dootsa-shimmer{0%{background-position:-200%}to{background-position:200%}}@keyframes dootsa-pulse-ring{0%{opacity:.7;transform:scale(.95)}50%{opacity:1;transform:scale(1.05)}to{opacity:.7;transform:scale(.95)}}@keyframes dootsa-expand-in{0%{opacity:0;max-height:0;transform:translateY(-8px)}to{opacity:1;max-height:800px;transform:translateY(0)}}@keyframes dootsa-star-pop{0%{transform:scale(1)}50%{transform:scale(1.25)}to{transform:scale(1)}}@keyframes dootsa-ai-orbit{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes dootsa-menu-bar{0%,to{transform:scaleX(1)}50%{transform:scaleX(.85)}}.dootsa-auth-btn{transition:transform .2s,box-shadow .2s;position:relative;overflow:hidden}.dootsa-auth-btn:hover{box-shadow:0 8px 24px hsl(var(--primary) / .25);transform:translateY(-1px)}.dootsa-auth-btn:after{content:"";background:linear-gradient(90deg, transparent, hsl(var(--primary-foreground) / .15), transparent);pointer-events:none;background-size:200% 100%;animation:2.5s infinite dootsa-shimmer;position:absolute;inset:0}.dootsa-pulse-btn{animation:2s ease-in-out infinite dootsa-pulse-ring}.dootsa-expand-panel{animation:.35s ease-out forwards dootsa-expand-in;overflow:hidden}.dootsa-rating-star-active{animation:.3s dootsa-star-pop}.dootsa-ai-spinner{animation:1.2s linear infinite dootsa-ai-orbit}.dootsa-scale-option{transition:transform .15s,background .15s,border-color .15s}.dootsa-scale-option:hover{transform:translateY(-2px)}.dootsa-scale-option[data-selected=true]{transform:scale(1.08)}.dootsa-radio-ring{transition:border-color .2s,box-shadow .2s}.dootsa-radio-ring[data-checked=true]{box-shadow:0 0 0 3px hsl(var(--primary) / .2)}.dootsa-receipt-tear{background:repeating-linear-gradient(90deg, hsl(var(--border)) 0, hsl(var(--border)) 4px, transparent 4px, transparent 8px);height:4px}
