@mixin warning-card { &.warning { animation: pulse-warning 2s infinite; position: relative; &::before { content: ''; position: absolute; inset: -2px; border: 2px solid rgb(var(--v-theme-warning)); border-radius: inherit; animation: pulse-border 2s infinite; pointer-events: none; } } } @keyframes pulse-warning { 0%, 100% { transform: scale(1); } 50% { transform: scale(1.002); } } @keyframes pulse-border { 0%, 100% { opacity: 1; } 50% { opacity: 0.5; } }