@keyframes modal-fade { from { opacity: 0; } to { opacity: 1; } } @keyframes slide-up { from { transform: translateY(100%); } to { transform: translateY(0); } } .overlay { align-items: center; background: rgba(0, 0, 0, 0.5); display: flex; height: var(--visual-viewport-height); justify-content: center; left: 0; position: fixed; top: 0; width: 100vw; z-index: 100; &[data-entering] { animation: modal-fade 200ms; } &[data-exiting] { animation: modal-fade 150ms reverse ease-in; } } .modal { &[data-entering] { animation: slide-up 200ms; } &[data-exiting] { animation: slide-up 200ms reverse ease-in-out; } } .dialog { background-color: var(--Scandic-Brand-Pale-Peach); border-radius: var(--Corner-radius-Medium); box-shadow: 0px 4px 24px 0px rgba(38, 32, 30, 0.08); display: flex; flex-direction: column; gap: var(--Spacing-x2); padding: var(--Spacing-x5) var(--Spacing-x4); } .header { display: flex; flex-direction: column; gap: var(--Spacing-x2); } .titleContainer { display: flex; flex-direction: column; align-items: center; } .footer { display: flex; justify-content: center; gap: var(--Spacing-x2); } .oldPrice { text-decoration: line-through; } .newPrice { font-size: 1.2em; }