@keyframes slideInRight {
    from { transform: translateX(100%); opacity: 0; }
    to   { transform: translateX(0);    opacity: 1; }
}
@keyframes slideOutRight {
    from { transform: translateX(0);    opacity: 1; }
    to   { transform: translateX(100%); opacity: 0; }
}
@keyframes fadeIn {
    from { opacity: 0; }
    to   { opacity: 1; }
}
@keyframes fadeOut {
    from { opacity: 1; }
    to   { opacity: 0; }
}
.panel-slide-in-right  { animation: slideInRight 0.25s cubic-bezier(0.16, 1, 0.3, 1) forwards; }
.panel-slide-out-right { animation: slideOutRight 0.2s cubic-bezier(0.4, 0, 1, 1) forwards; }
.overlay-fade-in  { animation: fadeIn 0.2s ease-out forwards; }
.overlay-fade-out { animation: fadeOut 0.15s ease-in forwards; }
