div#modal-content-EstimateDetail {
    max-height: 95vh;
    overflow: hidden;
}
#OverWriteInReferenceModal>.modal-dialog>.modal-content {
    animation: Animation_OpenReference 500ms both
}
@keyframes Animation_OpenReference {
    from {
        opacity: .3;
        transform: translateY(100%) rotateX(90deg);
    }
}
/* backwards, not both: a finished animation that keeps holding a transform makes the panel the containing block
   of every position:fixed element inside it, so the estimate edit box was placed against the scrolled panel
   (off screen at the top) instead of the viewport. The last keyframe equals no transform, so nothing changes visually. */
.PageContent>.SearchEstimateResult>.EstimateContent {
    animation: boingIn 600ms backwards
}
@keyframes boingIn {
    0% {
        opacity: 0;
        transform-origin: 50% 0%;
        transform: perspective(800px) rotateX(-90deg);
    }

    50% {
        opacity: 1;
        transform-origin: 50% 0%;
        transform: perspective(800px) rotateX(50deg);
    }

    100% {
        opacity: 1;
        transform-origin: 50% 0%;
        transform: perspective(800px) rotateX(0deg);
    }
}

